A few weeks ago I was thinking that I wanted a bug tracking system for my own personal use. I’ve used a lot of bug trackers both commercial and open source, but my favorite, hands-down, is the home-grown one we use at iFactory. I didn’t write it so I’m relatively unbiased, but what’s great about it is that it is absolutely simple and feature-starved. Clients can use it. Anyone can use it. You do not have to fill out fifteen drop-down menus just to say “home page broken.”
Its only flaw is that I can’t use it for my own projects and I was dreading trying to find a free one that was just as austere. I could write one, obviously, but even with a rapid-development stack like Django it’s still a lot to implement — not so much the bug tracker itself but the underlying user accounts and access control. Plus I have to host it somewhere.
Enter Google’s sort-of-proprietary hosting and development platform AppEngine.
There’s a lot to say about it, but for me as a developer the key point is how close this (and similar services) get towards making software applications completely disposable. AppEngine uses Python, which I know, and supports Django, which I know, and Django/Python enable lightning-fast web development. AppEngine gives me access control and identity via Google Accounts for free. I get hosting for free. I get one-click deployment (possibly the only thing I would miss from a Java/Eclipse/Maven/Cargo stack). I have to install one thing — Google AppEngine — and after that, nothing.
So instead of wasting 4-6 hours downloading different bug trackers and their dependencies, getting them running, trying them out, and (at best) putting up with the ways in which they aren’t quite right for me, I’m spending, max, 10-12 hours writing exactly what I want, for free.
If in a few weeks I decide my software sucks, or I find a better bug tracker, I can just throw mine away. Nothing lost but a little time, and that’s time I spent learning a little more about Django and AppEngine. The next time I want some kind of tool, I’ll build it in even less time, and maybe throw that away too. It’s just bits.