Saturday, October 31, 2009

Amazon's International Kindle

This weekend it's been a very proficient one. I've got a MacBook Pro and an Amazon Kindle (round of applause). I've managed yet to set up the Mac and get it working with everything including Eclipse etc, but I have yet to understand why Kindle "cannot establish a connection" after I left Bucharest. Since I arrived in Cluj Napoca it doesn't go wireless, it doesn't see the 3G network, very frustrating experience overall (If anyone has an idea why please drop me a line, I'll remain grateful forever :-) ).

The feel of it is pretty nice, but from my point of view the usability, application menu design, and everything that runs it, is totally broken. It feels weird and the options that are available to you are never those that you would expect. That's weird. It's almost like it's been designed to get you in trouble.

The "international" promise is that it connects to wireless networks. Well would you imagine that you cannot chose one, and if it's protected by username/password you cannot specify them ? I mean, wtf ? Drop the thing altogether and boot a decent version of android on it. You have them all, End of story.

So far, my bet was inspired in the sense that I asked for the Kindle ONLY because it allows me to get the books from Amazon so much faster than anything else. Only if this would finally start working ... Otherwise is totally useless. I mean totally.

UPDATE:
With the new Kindle firmware update for the international version (2.3) two things happened:

1.) It now connects through wireless from my current location. Hurray !
2.) It sees PDFs

Means it does what I bought it for. I'm happy.

Wednesday, October 28, 2009

Tests

How many times did I hear this : "There is not time for tests, really" ? Countless times. The counter point is: "Did you ever measure the time you spend debugging issues you have created?" Always compare that with the time you need to write a test to eliminate the issue you just debugged.

And then, if you are honest, ask your boss to draw the money for the time difference from your next salary. Because he'd be paying for the time you were writing the tests anyway.

Thursday, October 22, 2009

Another Google Android kickass usecase - eReaders

With the Barnes & Noble eReader, Nook, which btw looks very nice, we've got another evolution direction for the Android. I'll add it to the list I've put together in another blog post.

Those who say Android is not a market today, they prove nothing but lack of vision. Because Android is not about today's market but it is about what the future holds.

It doesn't even need to be the iPhone killer to succeed because it plays in so many other spaces. The main achievement of the Android so far is that it proved to be a viable platform for far more than a social smartphone. It redefines mobility.

Thursday, October 15, 2009

SSD

A nice one on the state of SSD drives:

http://www.codinghorror.com/blog/archives/001304.html

Tuesday, October 13, 2009

Business people din Romania

Au nevoie de mult bun simt. Foarte mult. Pe langa alte abilitati de care e nevoie.

Intrebarea zilei


Thursday, October 08, 2009

Noi nu vrem respect...

Noi nu ne facem, de obicei, auziţi.
Noi nu ne putem face auziti din cauza zgomotului.

Noi nu ieşim în faţă.
Noi am fi in fata daca societatea s-ar raporta la o scara de valori reale.

Noi ducem, în tăcere, România în spate.
Noi nu ducem pe nimeni in spate. Ii toleram.

Noi mergem la spital cu teama că e ultimul drum.
Noi mergem la spital abia digerand un sistem cretin.

Noi suntem mereu pândiţi de moarte pe şoselele groazei.
Noi am vrea sa fim panditi de moarte pe niste autostrazi, nu pe drumuri cu hartoape.

Noi vedem cum şcoala românească se prăbuşeste.
Noi recunoastem ca scoala romaneasca nu a fost niciodata prea sus.

Noi trăim, după o viaţă de muncă, umilinţa bătrâneţii în sărăcie.
Noi acceptam sa fim umiliti, in saracie, la batranete.

Noi ne naştem cu şpagă şi murim cu ea.
Noi participam la perpetuarea shpagii ca metoda in sine, din lipsa unei alternative.

Noi vedem cum justiţia îi scapă mereu pe şmecheri.
Noi nu intelegem rolul justitiei, asa cum o percepem la ora actuala.

Noi suntem cei abandonaţi de politicienii care au grijă doar de ei.
Noi toleram la nesfarsit o clasa politica arhaica, debila.

Noi nu mai avem încredere în aceşti oameni care s-au obişnuit să ne mintă.
Noi stim sa recunoastem minciuna acolo unde o auzim sau o vedem.

Noi suntem speriaţi de lipsa lor de viziune, de voinţă şi de caracter.
Noi suntem constienti de lipsa de valoare (atat profesionala cat si umana) a clasei politice.

Noi ne simţim în pericol.
Noi nu ne simtim in pericol mai mult decat altadata (de ex acum 30 de ani). Poveste veche.

Noi trebuie să rupem tăcerea.
Noi rupem tacerea in discutiile personale, chat-uri si pe blog-uri. In Media e zgomot.

Noi trebuie să ducem România înainte.
Noi reprezentam un flux paralel cu Romania. Nebagati in seama, neauziti, mergem mult prea inainte.

Noi nu vrem funcţii şi nici putere.
Noi apreciem adevaratele valori, fie ele chiar legate de functii sau putere.

Noi nu cerem nimic.
Noi cerem, neauzit, ceea ce ni se cuvine. Totul.

Hint: a se citi in opozitie cu manifestul "acelei" campanii media. Mai multe lamuriri aici

Wednesday, October 07, 2009

Requesting buying and importing a SSL certificate

So here it is, I am embarrassed after a 2 days long journey to buy / import a SSL certificate from Thawte. It was not their fault, it's only me and I thought it may help people if I share:

First I want to say that I have bought a SSL123 certificate. What I am saying here may not apply to other types of certificates but it still may give you a hint. I have used Java's keytool tool for all the command lines appearing below.

So here are the correct steps:

1.) Generate a RSA type keypair. important: as of the date of this post they only support RSA

keytool -keystore path_to_keystore -genkeypair -keyalg RSA -alias jetty

You cannot secure an IP address through a certificate, only a domain name e.g. yourdomain.com. The common name of your certificate (the keytool will prompt you for your first and last name) must be yourdomain.com

2.) Generate the certificate request, CSR:

keytool -keystore path_to_keystore -certreq -keyalg RSA -alias jetty

VITAL: make sure you keep the keystore file somewhere you can get it later and don't change, tamper, delete anything from it. Just keep it safe as it is!

The CSR looks something like this:

-----BEGIN CERTIFICATE REQUEST-----
AAAAERERRRTERTDASDASYDASDMAN312312312DASDASd etc etc
blablalonger stuff here

-----END CERTIFICATE REQUEST-----

3.) Go to their site, choose the certificate you want to buy and make sure you get right at least the following options:

When you paste your CSR you may be pressing the button "test your CSR" just to make sure all the info contained in it is valid.

Choose Tomcat as the server software if you will deploy on Tomcat or Jetty. Otherwise choose the server you are using, if it's not there then ASK the support what to put in there. On the bottom of the support page you'll see a live chat button, use it, as they are very responsive. If you use Tomcat/Jetty and don't choose Tomcat as the server software they will not issue a PKCS7 but a generic certificate and you won't be able to import it later!

Tax number is the VAT number in case you're buying for a company registered in the European Union.

4.) They'll pass you through the verification process and send you back the certificate which looks just as the CSR string but with PKCS7 header and footer:

-----BEGIN PKCS7-----
blablatons of things here
-----END PKCS7-----

5.) Save that string into a certificate.txt file, and save it with Notepad (on windows), not Wordpad or anything that would mess with formatting, insert spaces or anything like that.

6.) Run this:

keytool -import -trustcacerts -file certificate.txt -keystore path_to_keystore -alias jetty

VITAL: it needs to be the same keystore from where you generated the CSR, untampered, unchanged, at least not the alias you have used to generate the CSR. So the alias you have generated the CSR from, must be there !

If you will see something like 'Certificate reply was installed in keystore' you're done.

If you get something like

"keytool error: java.lang.Exception: Input not an X.509 certificate"

then it may be that you didn't save the certificate correctly, or that you tampered with the keystore. However this error can appear for 1000 reasons other than the type of your certificate.

Take this information more as a guide then as "religion", use it w/o any guarantees, and whatever you do not understand or are not sure of, contact their support otherwise you may find yourself in the situation of buying something totally different than what you actually need or want.