Publishing my book notes

Amazon has started sending book buyers emails asking them to review books, that they have recently bought, as part of their new strategy to improve their book reviews.

I got one of those emails a couple of months ago and did not think much of it a time. Now, I buy a lot of kindle books. so I started get a request for review email after every kindle book purchase and I started thinking to myself “Why not?”.

As of January 2013 my kindle library has 238 book of which around half of those are non-fiction non-programming books.

I have a very specific way of reading these kinds of books:

  1. I have a quick read through the book to gauge the content and whether it impresses me of not.
  2. If it does impress me, I re-read the book, taking meticulous notes in my moleskine pad.

I’ve decide to publish these reviews on my site and maybe on the Amazon website as well. These reviews will only be for those books I think are worth reading and have impressed me in some way or another. In addition, I will post an amazon affiliate link to the book on the review page which means that if you purchase the book via that link, I will earn a commission from Amazon.

I will only review books that I have bought which I think are worthwhile and have made an impression on me.

Lastly, the book I’m currently reading will appear on the sidebar on the main page. If I like the book, I will publish my book notes.

Posted in Reviews | Tagged | Leave a comment

The mobile platform wars

As a child born in the 70’s, I lived through the PC platform wars of the 80’s. Although I was oblivious to what was happening at the time, I did notice some of its effects as much as any other child would. One day my dad was using WordPefect, Lotus 123, dBase and DOS; the next day we had Word, Excel, Access and Windows. As a teenager in the 90’s I read about the events of the 80’s: How Microsoft came to dominance not only through brilliance on its own but through idiocy on the part of its competitors

For anyone who’s interested, a fascinated account of the rise and fall of the tech giants of the 80’s and 90’s can be found in the book: In Search of Stupidity: Over Twenty Years of High-Tech Marketing Disasters, Second Edition. An interesting aspect of this book is its title which is a reference to In Search of Excellence: Lessons from America’s Best-Run Companies.

For anyone who has been following the tech scene for the past 10 to 20 years, its obvious that we are in the midst of the 2nd major platform wars. The war for the mobile platform.

The protagonists are a mix of the same crowd from the 80’s and 90’s(Apple, Microsoft)  mixed with some new players ( Nokia, Google, RIM) and the strategies seem to be refined versions of the ones used in the earlier platform wars. Some players even seem to be making the same mistakes of the past, giving credence to the following quote.

“The only thing we learn from history is that we learn nothing from history.” – Friedrich Hegel (German Philosopher. 1770-1831)

Lets have a look at the current state of affairs from the point of view of a consumer and technophile: Me.

The Rise and Slow decline of Nokia

For much of the late 90’s and early 2000’s, Nokia’s name was synonymous with cell phones throughout the world with the exception of North America. I’ve had several Nokia cell phones over the years and I truly believed I would always be a Nokia supporter.

My first though, was not a Nokia. It was a Ericsson T28 if memory serves. A sleek flip phone which was all the rage at the time. I liked its size and the way it fit in my pocket. And its battery life was pretty good. If Ericsson had continued along those lines it would have been them and Nokia that dominated the mobile industry. But Ericsson phones just seemed to get clunkier and less user-friendly. Nokia rose to prominence in my neighbourhood with launch of the Nokia 6110 (not to be confused with the Nokia 6110 Navigator). It was the first phone that I had that apps and games including the popular snake game. It seemed everyone had a snake high score.

In those days, once you had a Nokia phone, chances are you next phone would’ve been a Nokia as well. Its ease of use, while not exceptional, was above other phones on the market.

It seemed that Nokia phones kept getting better and better and, every time I got a new phone, I wondered what could they possibly improve on when I chose my next phone in two years time.

Throughout the late 90’s and earlier 2000’s I’ve had several Nokia phones: the 6110, 6210, 6610i, 6630, N80 and the E71. While certain things improved, other things seem to stay the same or get worse. The Symbian interface, introduce to me in the 6610i, hardly changed to the E71. In addition, Nokia made some peculiar hardware decisions. the processor seemed just about capable of running the phone in the beginning and then performance slowly degraded as time went on. Nokia also split their phone lines into the E-series for business users and N-series for multimedia users. The problem was I could classify myself as being in both camps. At work, I need a business phone and at home I wanted a multimedia phone. But the E-series had poor a camera and a terrible speaker for music while the N-series did not have business capabilities such as Mail for Exchange. I was not about to carry around two phones.

Nokia really missed a chance after the release of the E71. It was a well engineered solid phone. Add a fast processor, better camera and speaker, more memory and a simplified user interface and I would have been sold. But Nokia took ages to simplify the Symbian OS. And their hardware philosophy never changed from “just good enough for now”. Their phones also seemed to aged much faster than before. New OS releases would contain new features that would not make it to phones barely a year old.

Developing for the Symbian platform

Around the time I got the Nokia 6610i, I decided to try my hand at developing apps for the Symbian platform. Nokia followed the Microsoft model for platform development. They had a huge is slightly confusing website with tons of examples, tips and tutorials and they had two versions of their development IDE, Carbide. A limited but free version and a more complete but pricey version.

I went through some of the simple “Hello World” type examples quickly and then trying writing an app I had thought a while back. And that’s when it got difficult. To develop my app, I needed access to the microphone which I couldn’t get unless I was a manufacturer. Even if I did have access to the hardware, my app would’ve only worked on a small percentage of Nokia phones since the other ones did not even allow hardware access. Then the was the fragmentation factor. Different screens sizes, different screen resolutions, different form factors, etc. I realised the platform was not easy for hobbyist especially if not developing a mainstream app.

Nokia seemed to recognise this as problem later on. They made the entire Carbide IDE free. But for me, it was a little too late. I had already moved on.

The rise of Google’s Android platform

After my Nokia E71 contract expired, I started looking for a different smartphone platform. I was loathe to try the iPhone 3GS since people I knew who had the phone complained about the poor battery life and dropped calls. I already had the iPod touch so I knew what to expect of the iPhone as a platform.

Google’s Android platform looked very attractive to me. Google followed Microsoft’s strategy of creating an open mobile operating system available to any hardware manufacturer to implement on their mobile phone. The Android platform also allowed me to install applications from outside Google’s app store. This openness appealed to me. There were plenty of stories at the time of Apple rejecting legitimate applications from the app store. This did not appeal to me since there was no other way install application on the iPhone short of jail breaking.

So I decided to try an Android phone. The only Android available at the time was the Samsung Galaxy Spica. But after only a couple of hours with it, I knew I had made a mistake. The Galaxy Spica came bundled with Samsung software that did not support the phone. This put me off Samsung as a brand.

The second issue I had was that it was running Android 1.6 when Android 2.0 had already been out for a couple of months. Luckily for me there were websites out there that provided detailed instruction on how to root the phone and upgrade to 2.0.

The differences between Android 1.6 and 2.0 were quite profound. Higher resolution being the most striking improvement.

At that stage I was still attached to the full keyboard that the E71 had. So I sold my Galaxy Spica and got a Motorola Milestone instead. The build quality of the Motorola Milestone was way better than the Galaxy Spica. It also had a better screen and was running Android 2.1. After about 3 months of using I found I was hardly using the keyboard anymore.

So when the HTC Desire came out, I sold Motorola Milestone and got it instead.  This was the best phone by far. HTC basically was Android. Their customised Android Sense interface was several notches above anything else. The HTC Desire could also do Microsoft Exchange integration with all the additional security policies my company required.

The AMOLED screen was brilliant and clear and the 1GHz Snapdragon processor lightning quick.

The only feature I was missing from my Nokia days was a front camera for video calling. I tend to use video calling a lot so it was not easier to get by without it.

The total domination of Apple’s iOS platform

I started work on a project in Dubai a month after Apple’s iPhone 4 was launched. I took my HTC Desire with me to Dubai hoping to use the free WiFi,  which was available everywhere, to make VoIP calls to my family. Unfortunately, this proved to be impossible. The WiFi network at my client site required proxy authentication which the Desire did not support. After some research, I found out that the iPhone 4 did support this feature. Apple had also resolved the issues that held me back from buying the original iPhone two years prior. The iPhone 4 also seemed to be everywhere in Dubai. Every store sold the phone despite it not being officially launched in Dubai. It did not take much to convince me to sell the HTC desire and buy the iPhone 4.

It was, without a doubt, the best phone I had ever owned. The retina display was incredible; the call quality excellent; and the variety of quality apps on the iTunes store was a dream for a technophile like me. I was able to make crystal clear VoIP calls via Skype to my family which helped ease the pain of the homesickness. The battery life held extremely well considering I had Skype on permanently.

The beauty of the iPhone was in its simplicity. Settings are a few touches away and not hidden in layers of menus like the Nokia E71. The phone is designed to make you want to use it. After a few days of using it, I was certain that my next phone would be an iPhone as well. I currently have the iPhone 4S and, with 420 apps, I’ll probably be on the iOS platform for a while.

The future: Patent litigating for dominance

Today, the its very much a two horse race between Android and iOS for mobile domination. Windows Phone is emerging as dark horse but it still has a long way to go before it can mount a significant challenge. Nokia has all but give up on Symbian and embraced Windows Phone. Will this be the company’s salvation or is it a little too late?

Samsung has overtaken HTC as the Android flag bearer. The issue of Android fragmentation still exists. As a consumer, I prefer to buy the latest handset which I know will be updated to the next firmware release than play the firmware lottery that is Android updates.

A significant twist to the current platform wars is the use of litigation to gain dominance. Every single player is involved in patent litigation. The Guardian newspaper has an interesting graphic which shows the complexity of the mobile battlefield. Will the  impact of these lawsuits will have significant impact on the mobile landscape? Time will tell.

One thing is certain though: We are living in interesting times!

 

Enhanced by Zemanta
Posted in Mobile | Tagged , , , , | Leave a comment

Looking back and 2010: Where did the time go?

How time flies. When I look back at my blog and at 2010 in particular, it’s clear that I didn’t accomplish much blogging. Once again the culprit was a heavy work load that only let up towards the end of 2010. How heavy a workload? Well, for once in my entire working career, my company actually had to pay me for annual leave not taken.

And yet it started so promisingly. At the start of 2010, I was winding down a project and had dreams of taking a few less challenging projects for the next couple of months. Hence, the absolute flurry of blog posts in January 2010 (for me at least Smile).  And while the months following were less intense, what followed after was a lot busier than I would’ve imagined.

From May to September I spent 95% of my time in 4 African countries and Dubai. The work was challenging but  the team and I had an absolute blast. We designed a private cutting edge internal cloud for our client and this led me to change my primary focus from Technical Architecture to Infrastructure Strategy.

So for the next year or so, I’ll be focussing around the Business Value of Next Generation Infrastructures.  And, time permitting of course, I hope to blog more about what I’ve learnt. Not to say that I will completely ignore other interests such as Silverlight, WPF and mobile phones.

Here’s to a more productive 2011!

Posted in General | Tagged | Leave a comment

A small WPF project management application

They say the best way to learn something new is to jump in head first and just do it. Don’t ask me who “they” are but apparently, that’s what they say. One of my goals last year was to teach myself the WPF framework. I’ve been playing around with it on off for most of 2009 and it’s a truly impressive framework. This year, I’ve decided to expand that knowledge by creating something useful to me using WPF and C#.

These are my high level requirements for the the first version:

  1. Keep track of all risks on  project
  2. Keep track of all issues on a project
  3. Upload a Microsoft project mpp file and create timesheets for resources to fill out
  4. Keep track of all resources on a project
  5. Calculate all reporting metrics that required by my company
  6. Keep track of all to-do lists
  7. Keep track of project milestones
  8. Have a beautiful interface.

Some of these requirements will be a challenge for me. Especially 3 and 8. I’m not sure whether you can interface to a mpp file and beautiful design is not my forte. I’m very much a child of the “6-six shades of gray windows GUI” age.

The primary aim is to have a small project management aid on projects which are too small to justify the use of Microsoft Project Server or tools such as Clearcase, Clearquest and Sharepoint. Usually, on small projects, Microsoft project and excel would be the tools of the trade.  But tracking history on an excel sheet is hard and capturing time on Microsoft Project when you have a small to medium size team is time consuming.

I could have web apps such as basecamp but its not easy to get the necessary permission if you work for a large corporation. Besides,  where is the fun in that?

This will be a personal project so I’m not bounding myself to any time constraints. If this year is anything like last year, I will have very little free time available so committing to a date is pointless.

Posted in Software Development | Tagged , | 2 Comments

So what happened to those 2009 goals?

Almost a year ago, I risked public ridicule by my friends and family and published my goals for 2009. I had hoped to track progress on all of them on this blog but that did not work out so well. Luckily I did not have “blog more frequently” as one of my goals.

Looking back at those goals has also given me a chance to reflect on the past year. This time last year I was starting out on a new project as the technical stream lead for a SAP Human Capital Module (HCM) implementation project. My role on this project was the main reason why I have not been able to blog frequently and complete some of my goals. If you look back at the frequency of my posts, you will see that my last blog entry was in July 2009 which was right about the time we had our first go-live. Since then, we’ve had 3 more go-lives, each one more intense than the previous one. The project will hopefully be ending at the end of this month and I’ve got my fingers crossed that my next project will allow some time for  more frequent blog updates.

Enough of the pre-amble, here’s an update of my 2009 goals.

Goal 1: Increase touch-typing speed to 50 wpm with and accuracy of 98% or more by June 2009.

It took a little longer than expected but I’m now comfortably typing at an average of 52 wpm with an accuracy of 95% to 98% for non-technical writing. For technical writing this drops down to about 38 wpm with an accuracy of 90% to 94%, mainly due to the all those shift characters I never spent much time on. For anyone trying to improve their own touch typing speed, I highly recommend http://www.typingweb.com/. I haven’t used the site in a couple of months now, but I will be returning to brush up on the shift characters.

Goal 2:  Learn the WPF Framework by March 2009.

I had a lot of fun with this one. If you familiar with windows GUI programming the traditionally way, WPF GUI’s can be mind blowing. It’s easy to create really stunning interfaces but equally easy to create bloated and ugly ones. I’ve decided to put all that I’ve learnt to good use and create a little piece of software that will assist me in some of the more tedious activities I have to perform in my current role as technical stream lead. More on that in a later post though.

Goal 3: Learn Symbian C++ by April 2009.

This one never really got of the ground mainly due to my interest in the symbian platform falling away right around the time I got myself an iPod touch. The simplicity and ease of use of the iPod touch blew me away. Nokia have real challenge on their hands if they are to remain market leaders.  While I have no plans to replace my Nokia E71 with an Apple iPhone just yet, I can see myself seriously moving away from Nokia in 7 or 8 months time when I renew my contract. In a later post I’ll give my impressions of both platforms.

Goal 4: Improve my memory  (by learning memory mnemonics and other techniques) by September 2009.

Another goal that I lost interest in. I wasn’t really prepared for the amount of effort I would have to put in to make this a reality. I might revisit it this year though.

Goal 5: Create 2 robots, one simple and one intermediate, by December 2009

This is something I still want to achieve. I never really got around to it mainly due to amount of time I spent at work. I will definitely be revisiting it this year.

Scorecard

Looking at the above, it seems as my goal achieved rating for the year is a measly 2 out of 5. I will have to try harder this year or maybe make my goals more realistic. Lifehacker recently posted an interesting  article on goal tracking tools and http://www.joesgoals.com/ seems promising. I’m looking at using it when formulating my 2010 goals but more on that later.

Happy new year!

Posted in Goals for 2009 | Tagged , , | 2 Comments