I’m writing this on my lunch break from a duller than usual project. Not being one to get bored with work, I’ve been struggling to understand what’s wrong.
This morning I was passing that difficult time between coffee entering the mouth and caffeine reaching the brain by glancing over some StackOverflow questions. (I find it’s a good way to get in the mood before the fog has lifted). Then as I contemplated these poor souls wrestling with their work, I realised – the project is dull because it’s going too well.
I’m working with Symfony, which I love, but it’s dull because I’m doing programming not development. Coding with Symfony is the motorway driving of web development. You can crash if you’re sloppy or behave like an idiot, but if you pay attention and do what you’re told, you’ll get there in one piece. Albeit, pretty bored and dying to stretch your legs.
The distinction between programming and development is one I’ve not fully appreciated until now. The difference is that development is solving problems, learning and improving things. Basically all the things that are fun and got me into this business in the first place. Programming is just pressing the buttons on your keyboard in the right order, because they’re not going to press themselves. You program an alarm clock, but you develop software.
A solid framework like Symfony and excellent libraries like Doctrine take away a lot of the hard work, a lot of the challenges and with it a lot of the fun.
I’m starting to wonder if Symfony requires my presence at all. If the client could explain their business requirements directly to the computer, then I’d be out of a job. Thankfully my human brain is still required to bridge that void, but barely.