

To accompany my technical ADD, as part of my job at BView we’ve now released another product in another language entirely, an iPhone application.
Called Localsalefinder and powered by the BView API, it’s a fantastic iPhone app for finding local offers and redeeming them without printing out or clipping coupons.
Once we finish off all the finishing touches to the vouchers, this is going to be one powerful app. It includes integrations from the main restaurant booking engines (Toptable / Livebookings and more) plus our own vouchers and those sourced by 3rd parties.
If you’ve got an iPhone check it out! In terms of Objective-C development, I’m going to start a series of articles about the common problems and pitfalls of iPhone development.
Dan.

Just a quick post to explain my lack of updates recently, I’ve been building another site in my spare time called What Ales You.
Conceptualised, designed and developed all by me, it’s a beer rating site (actually my girlfriend did the logo and name to be fair). Anyone can add, comment on and rate beers. It was written in Django, an amazing Python based web framework that takes the “convention over configuration” concept even further. In roughly 10 evenings I’ve built a site in a language I didn’t even know, impressive stuff. While some of that might be my genius, at least partial credit has to go to the excellent features of Django.
I seem to be suffering from a form of ADD recently. Hopefully it’s not the kind I’ll need Ritalin for although I haven’t actually checked with a doctor yet. But this is a special kind of ADD, technology ADD.
After living a lifetime stuck in a bit of a technology trap, using what everyone else seemed to be using and what recruiters wanted to see on your CV I’ve suddenly been opened up to a world of promising technologies. In the past month I’ve not only carried on writing in Ruby on Rails but have also started using Django, a full on web framework which is powered by Python.
A lot of people, my previous self included, would tend to call these new web frameworks lightweight and not suitable for really serious applications. I still haven’t quite made my mind up if this statement holds any merit but maybe a better question would be does the application you are working on have to be “serious” anyway. By serious here I mean seriously built. Does it need to scale horizontally at the flick of a switch, will you be dealing with billion row tables and processing 6,000 requests a second? They’ll probably answer that one day they might. That’s true, although only if they manage to launch without sucking up their funds building a project in a serious fashion.
Case in point about two years ago I tried a personal project in Java. Java’s what I know best so it seemed a sensible option. Professionally I work on a robust codebase with a great Spring / Hibernate base, full on integration testing, custom authentication code and a beautiful Ant based build environment. But I also forgot that the environment took 5 smart people 2 months to set up. Admittedly I now knew the general setup but it was hard work being disciplined and trying to write so much from scratch, in my SPARE TIME. The initial setup must have taken 6 months. I had lost all enthusiasm for it by that point.
Two weeks ago I started a project in Django. I didn’t even know Python. In a week of spare time work I’ve got a fully working database model, authentication framework, frontend with templating. I’d estimate I might have spent about the same time drawing pretty pictures for the frontend as writing backend code. That is truly astounding. I was impressed with Ruby on Rails but this is another level. Webapps can be coded in less time than it would take you to draw a UML diagram or database hierarchy.
The best thing is it has brought back my enthusiasm and hopes for personal projects. When writing something in your spare time, the best thing you can do is finish something. Don’t obsess over perfect theoretical programming practices, scalability and how you’re going to track sessions across multiple servers when you haven’t even got something launched. Obviously if you’ve got £1,000,000 and know your app is going to be huge, build everything as well as you can. For the rest of us I’d suggest speed is the more important factor.