I was always a software developer, it just took me till I was 18 to realise it.
I had always strived for that peculiar blend of abstract beauty and optimisation of tasks that make software geeks peculiarly excited. As a teenager, I used to attempt to balance out, symmetrically, the movements from one half of my body with the other. The process of designing and writing software, as well as a way of paying the bills, is a way of getting that kind of need out of my system and allowing myself to be a little less odd.
However, I still can’t just walk from one place to another without trying to optimise the route, by shaving corners off wherever possible, in an attempt to minimise the distance. When crossing a road, the passage of cars down the road, which might run me over if I try and take the most direct route and hence stay on the road longer, just adds some more variables into the equation, making it a little more interesting.
However, software development has taught us that optimising at a low level, if you don’t know you need to, can be costly. Catching a train, instead of walking, is normally worth doing without any additional information. Running for a train is only really worthwhile if you know that otherwise you would miss it.
On Sunday I tried to optimise my route to a parking space at the supermarket by nipping through a gap next to a big concrete pillar. The pillar now has a rather fetching bit of red paint which used to be attatched to my car.