WhoAmI: I’m Peter van Ooijen, a Codebetter blogger who is writing his 400th blogpost. Statistics lie, especially in blogs, but I want to grab this occasions for some reflections. Almost 20 years ago I started working for myself as a self-employed developer and consultant. Over the years I’ve been working with and for other people but I’m still a one person shop.
WhereAmI: Geographically speaking in the north-eastern corner of the Netherlands. Way back when I started it was quite important to be located as near to your customers as possible, these days the internet has changed that. Me and my family can choose a place to live which satisfies other demands as well. Where I am in the evolution of software development is less clear. In my university days you could only officially study informatics as a special direction in mathematics. Being a biologist I worked like many others with computers and software on a study-it-yourself base. Learned to program Simula, which was one of the first true object oriented languages but wasn’t labeled as such as the acronym OOP hadn’t even been invented yet. We wrestled our way through not hindered by any theoretical backup. Learning databases went even worse; I started with dBase III and my first “real” database was MS Access 1.0. Over the years I’ve been following hypes and trends, picked up anything which appealed and dropped anything which didn’t live up to its promises.
WhyAmI bothering you with all this ? The things which have changed the most over the years are imho development methodologies. Way back you were handed a couple of kilo’s of paperwork which described a software system in every detail. It was easy to drown in the waterfall of semi information. Working with the “design” a couple of months revealed that it had three descriptions of the main menu, in two of them an essential option was missing and the business rule involved is nowhere specified at all due to a lack of time. In my view methodologies are mainly a communication tool. Being a one person shop I directly talk with the end user and do the coding; there is no designer (or architect in modern speak) who can distort anything in between. A couple of years ago saw the emergence of eXtreme Programming. In my view this was essentially breaking up the problem in manageable piece which are understood by all parties involved. As a one person shop you do need limited size chunks to get anything working at all. As a one person shop you are confronted with the end-users, there is no PM to keep the two apart. At heart XP meant going back to common sense. Imho it’s first incarnation didn’t get much further than that. These day’s Agile and TDD are the buzzwords. They provide a good idea how to develop software togheter with your customer. But when “being Agile” becomes something like a certification process I’ll stand back and see what my fellow Codebetter blogger have to say about the implementation. For now I’ll pick the pieces I can use and keep relying on common sense.
Why am I (still) blogging ? As you have read to this point that is part of the answer. Working on your own you need a sounding board. It’s good to have a platform to publish ideas and findings. Knowing that anything bad will be recognized and corrected in public. (This is actually my 400+ post. Recently I was following such a misleading trail I’ve withdrawn some posts concerned). This 400th post marks the return of my blog’s former subtitle : Growing (up) in publicc.