Saturday, January 26, 2008

I started something...

Mid-december I - rather suddenly - found myself with a few weeks of spare time, as something I had been working on for some time just fell short of its expectations.

The next math exams (I'm working on my BSc in Mathematics at the University of Geneva) were still a good six weeks away so I decided to pull out one of the many software project ideas hanging around in my mind, one of those I never really had the time to consider seriously.

I needed something simple, that could be implement in a matter of weeks and which might turn into a small shareware or commercial product, hopefully a helpful one. It had to be simple because of the time constraint, yet challenging and somehow unique in its own way... the choice was not easy.

While looking at photos from my (now defunct) cat Siłek, an article I read online some time ago came to my mind. It was titled "Sports Illustrated's Digital Workflow", by Eamon Hickey, and described in great details the digital image workflow of a large sports magazine’s team during a huge event. It's just incredible.

I enjoyed that article so much at the time that I remember having read it several times. I was amazed at the amount of work that could hide behind a magazine's cover picture and a few illustrative images, and also horrified at the idea of having to browse through more than 16’000 pictures - sixteen thousands – on a PC over just a few hours.

There came the perfect idea: I could use all the knowledge I gathered during so many years writing imaging software and high-performance, scalable systems of various kinds to put together a small, minimalist image viewer that would focus only on one simple thing: speed. Startup speed, image load speed, display speed, nothing but speed.

From there the ideas started to flow. I could use graphic hardware acceleration, take advantage of multicore processors, write the code in native language for maximum performance and minimal size while using all the tricks in the bag to reach the only goal I set to myself: create the fastest possible image viewer I could imagine.

Six weeks have now elapsed, I think I’ve never worked so hard over such an extended period of time, literally 20 hours a day for a month and a half straight (that’s nearly five months at a normal worker’s pace) but the result is quite satisfying: the one goal was reached. The program is now available for the world to see - This is not an ad so I won’t tell where it is but it’s not hard to find if one know where to look - and now I can go back to my studies until the next holidays.

No comments: