Christian Riess
A Software Developer's Web Log
Home Contact


WELCOME !

As you will probably have guessed by now, my name is Christian Riess. I am a freelance IT consultant and software developer and have recently started to write games and utiltity applications for one of the world's most innovative devices: the iPhone.

This web log is meant to give you an insight on what it is like to write programs for the iPhone.

     





January 21st, 2009

LIVE ON THE APPSTORE

It's been seven hours and fifteen days...

Actually, it's been a lot longer since I wrote my last post here. The reason why I had not come up with an update yet - apart from the holiday season and a few other things I had been doing the last couple of weeks - is that I had been waiting for my contracts with Apple as an iTunes store content provider to be sorted out so that I could upload applications to the iTunes store. This took longer than I had expected, and so I had spent my time thinking about game ideas and exploring the iPhone SDK.

Last Friday my contracts were finally approved, and my first iPhone application - a visual timer for board games etc. - went live on the AppStore.






December 2nd, 2008

A NEW OPPORTUNITY

The last couple of weeks have been really exciting. From the very moment I bought my iPhone I wanted to write software for it. Unfortunately, I had been too busy with my activities as an IT consultant so I never really found the time to start this new adventure.

It all changed a couple of weeks ago when my last contract as a consultant had ended and I had to look for a new job. There were a couple of options, mainly with companies I had worked with before, but I had been consulting for over a decade now, and while it was an interesting thing to do and even fun at times it also took me more and more away from actually developing software that I would also use myself. So eventually, I decided that a change might do me good and downloaded the iPhone SDK from Apple's web site.

I made my first contact with computers as a kid in the early 80ies when a cousin of mine showed me a book about BASIC on one of the many weekends that our family spent at my grandmother's place. His school had just introduced computer classes that year to draw our generation's attention to the new medium, and at least as far as I am concerned, their plan turned out to be a huge success. I asked my cousin to lend me the book for a while and started to write my first programs on a few sheets of checked paper. When I got a Commodore C64 on the following christmas I already had so much experience that I managed to write a whole game in just one day. That Boxing Day sealed the end of my innocent childhood...

I think that my generation had a unique opportunity to learn computers from ground up. Home computers such as the C64 came in one piece, and the whole operating system fit into 16 kilobytes of read-only storage. There were even books with annotated assembler listings of the operating system, so that nosy kids like me could finally understand what it takes to make a computer tick. It was also easy to build hardware extensions for the C64. All you needed was a soldering iron and a handful of switches, resistors and transistors, and maybe one or the other IC that you could by off the shelves of stores that you can hardly find anymore these days.

It is also amazing how long the C64 managed to stay around without a single upgrade. I kept mine for about ten years until I got myself a Commodore Amiga and not so much later a PC, another PC, yet another PC, and finally a Mac. While these computer were also fun and certainly challenging you could only understand certain pieces of it, not the system as a whole, and as the systems got bigger and bigger it became more and more difficult for individuals to write proper software for it. Some game development budgets nowadays even exceed those of Hollywood movies, and often takes dozens of manyear to finish a game.

Why am I writing this? Well, the iPhone SDK reminds me of the good old days. Even though the firmware of the iPhone is several 100 megabytes big the core API's such as the user interface framework are small enough to be understood as a whole, and appart from the more or less periodic firmware updates there are no changes to the underlying system that an application programmer needs to be aware of. There are no extensions, no drivers, no hooks, no shared library huzzles, not even other programs that your programs need to share their execution time with. In a way, this is just like the good old C64 back then.

I sometimes regret that I was still in school when home computers had their peak. I would certainly have enjoyed writing cool games all by myself that I could eventually go and sell. The iPhone may be giving me a new opportunity to do just that.