Keyboard Cover for iPad

Today I bought a new accessory for my iPad, a Bluetooth keyboard. I chose Logitech Ultrathin Cover for iPad Air. Mainly because it is very thin (as the name sung), and it has a very good keyboard keys.

I read reviews in some sites and they are pointing this keyboard keys configuration as the main advantages of this keyboard. Many other keyboard cover tries too hard, they had some extra keys for mimicking the iPad touch screen function, but it makes the button smaller and harder to type on. I don’t want those to happen. I just want a keyboard for my iPad so I can write faster and become more productive than using virtual keyboard.

Eventhough the box said that it was made special for the latest iPad, I have been using it in my original iPad (as like now) and my iPhone, both of them can connect without any hassle. The only quirk I got though is I am not certain that my keyboard is connected, because the indicator lamp sometimes goes off.

So why a keyboard cover? Basicly, I want to use my iPad in a more productive manner. I want to use it as my development machine as well my blogging environment. The latest iPad Air, with 64-bit capability is more than capable for doing some bacis stuff and with so many new productivity apps out there, I just want to try them on.

The other advantages of using keyboard cover, especially on iOS 7, is the keyboard shortcut support. In some application, such as Byword, which I use for writing this blog post, you can use shortcut like CMD+B for creating bold text easily. This capability is very helpful and gives you feel that the iPad can finally replace your laptop.

Lesson from Good Book

Good Reading

“The more that you read, the more things you will know. The more that you learn, the more places you’ll go.”
– Dr. Seuss, I Can Read With My Eyes Shut!

I just finished reading a great book, titled Dogfight: How Apple and Google Went to War and Started a Revolution. This book mainly told us about fight between Apple and Google, how each of them spent enormous resource and time to innovate, and how their innovation moves the world further than they can ever imagine. You will find the inside stories about the creation of the legendary iPhone and its mortal enemy, the green robot Android.

This post is not going to give you spoilers about the content, since I think it is the best for you to read by yourself. The stories are well written by well-known Wired Journalist, who has special access to some Apple and Google employees. You can feel the tension between them, which makes this book so great in my opinion.

One thing that I can take from this book is, it requires a great amount of passion and hard work to create a truly innovative product. The iPhone and Android was revolutionary product, they are born from years of banging heads into the wall, screaming about endless problems, and cursing about the future. You have to spend a lot of nigths working overtime, weekends in the office, forgetting your anniversary, and perhaps absent from your children’s birthday party. The worst part is, to keep this in complete secret. You might have solve one of the biggest problem in the history of human kind, but you can’t share this, because the future is on your shoulder. Only when you outcome those kind of things, you will, at the end, can give yourself a pat on the back, saying you have done a great job.

I have met some people who demands reward before fulfilling their obligations. They felt that their ideas are so revolutionary, the company must reward them big time. The hard truth is, ideas are cheap. Throwing ideas are great, but building the idea is the crucial one.

Other lesson is coming from Steve Jobs:

You know, one of the things that really hurt Apple was after I left John Sculley got a very serious disease. It’s the disease of thinking that a really great idea is 90 percent of the work. And if you just tell all these other people “here’s this great idea,” then of course they can go off and make it happen. And the problem with that is that there’s just a tremendous amount of craftsmanship in between a great idea and a great product. […]

Good Coding Standard

This week Apple released a critical update on their mobile operating system, iOS for fixing an error in their implementation their SSL. Some people is starting to do some research about Apple’s libssl implementation. By looking at source code, they found an interesting part of code, which lead to the bug. You can see the detail in the image below.

Apple libSSL implementation

One thing to take away from this accident is the importance of having good coding standards. Using tools like Sonar Qube or Checkstyle, you can perform inspection to your code to see which part unsuitable with the coding standard defined. I must admit that sometimes, having a coding standard is a pain, but it will forestall the future incident like Apple had. You can combine previous tools with Findbugs. Findbugs will perform some analysis to find possible bug in your code. You can run those tools via your IDEs or command line tools. By applying this practice, I find we can evade unnecessary work in the future, and can spend time to truly developing next enhancement for our services.

– Fin