Tuesday, May 26, 2009

writing code for the iphone

   Apart from writing mapreduce code, I like writing code for the iphone. I know it sounds totally incompatible, writing code for some distributed computing framework and for a really small handheld device but I really enjoy both of them...
   It might be because I started coding in GW-Basic back in the MS-DOS 3.3 era. I would write some code and the result was less than aesthetically appealing, but the fact that you had made sth by yourself, that you had the feeling of instructing this weird machine with the noisy fan what to do; that was amazing...
   Maybe the iphone reminds me of the constraints that we used to have in desktop programming. Nowadays developing for a desktop isn't that much about performance as it was some years or a decade ago. 
   You don't have coders writing things like Quake 3's Fast InvSqrt() ;) Or articles trying to find out who was the actual coder behind it:p Nowadays you have API's over API's, VM's, dynamic languages etcetc...
   The iphone is one of the last resorts for people who care about performance. About "The Art Of Computer Programming" rather than how to call a Foo foo = new Foo() and call the appropriate method for this foo object to do whatever needs to be done. In iphone programming you have to care about battery life. You have to care about memory consumption and you know that memory leaks will get your app killed sooner rather than later. You have to do tricks and custom tweak every little aspect of the UI for performance and battery life.
   I guess this post is getting too lengthy so I will stop here. I will write a followup post where I will talk about the actual experience of writing code for the iphone !

No comments:

Post a Comment