The Chromocam beta has been great so far, getting some interesting shots and some great feedback from my testers. I’m happy to say that initial reports say the app is stable, and runs smoothly on all iPhone generations, from 2G to 3GS. But of course, a decent amount of code is going to be rewritten anyway.
Why would I rewrite code, and why aren’t I more upset? Actually, I’ve been reading the classic “The Cathedral and the Bazaar”, and it had some very timely and sage advice: You don’t really understand the problem until after the first time you implement a solution. I suppose that is a rephrasing of “Plan to throw one away; you will, anyhow.”, from Fred Brooks’ The Mythical Man-Month.
I was chatting with a beta tester when she remarked that she didn’t understand how the settings button worked, which is one of the few controls that the minimalist Chromocam offers. Now I didn’t include an instructions manual or anything like that for precisely this reason, so that I could find out which parts of the app were unintuitive. Of course, in my smugness, I thought that surely the beta testers would be thrilled and amazed and not at all confused, but looking back, what a strange custom view I created. Basically, clicking and dragging on an icon for size or for transparency will, via coregraphics, dynamically generate a new icon that is bigger or smaller, or is more or less transparent. But the icons don’t move at all. You can check it out in the preview promo vid I did:
So I rewrote it to try and make more sense. I added an icon instead of the settings button with sliders on them, and then ended up emulating the icon instead of the other way around. Now the icons move, and they have some context as well referring to the maximum and minimum settings. A new beta should be out shortly, and this time I think I nailed it.

But we’ll see… ;)