This blog isn’t about some perfectly balanced programming practice. I don’t think that exists. Different situations call for a different emphasis. I want to talk about how to balance programming. How to think about what you want to achieve and how to pick the choose guidelines accordingly. How to decide when to follow a rule and when to put it aside.

I graduated university in the late 1990s and have been working with software ever since. Mostly of that time has been spent in small teams, as part of small to medium sized companies. I’ve written a lot of new code but also worked with a lot of existing code. This often involves revising and improving code to make it more consistent, smaller and more understandable. More recently I’ve spent time thinking how to organise the processes as well as the code itself.

My primary development languages have been C++ and C# with a few others mixed in. Most recently it’s been C++ with a bit of python for scripting. For the moment any examples are likely to use C++ but the principals will probably apply to other languages.

I hope to write a couple of posts a week early on, probably for Tuesday and Thursday, and settle down to once a week later on. However it’s still fairly new so my plans may change.