What should my code tell me?

When I’m reading code, there are a number of things that make my job much easier.The most important (in my opinion) is good naming, but how can we choose suitable names?This is the pattern that I am starting to see (and recommend), and I think it is pretty effective. What? How? Who? Why? If we [...]

ILikeThisBlogPost

ILikeThisBlogPost – but then I’m a little biased

Returning ‘null’ Considered Dishonest

Background Antony Marcano and I have just started running a coding design workshop. Most of the audience are new to coding and we are trying to focus on good habits that are applicable across all programming languages.In our first session, we created a vending machine. By the end of 90 minutes, it was able to [...]

Singletons

I’ve been playing about with a code base that has a large number of singletons, for what appears to be no apparent reason.Something about singletons doesn’t sit quite right with me, but in the most part, if they’re not misbehaving, I’ll probably leave them be. The thing that bothers me a lot more though, is [...]

Static Utility Methods

A few of us were chatting about static methods the other day.I’m not a big fan. I think that they tie you unnecessarily to a concrete class. Most people were saying that there is no harm in having static methods in utility classes, and this is one place where I would disagree.The example used was [...]

Refactoring / Design: Composed Method

I’m going to try and write a few posts over the next few weeks around the subject of Refactoring and Design. This is mainly practice for me, so that when asked to explain, I don’t confuse the issue. All comments and suggestions are gratefully accepted. When I am looking at code, I feel a lot [...]

Things I Like: Mercurial Version Control

I was recently introduced to Mercurial version control. (http://www.selenic.com/mercurial/)I haven’t had enough time to play with it to tell how well it holds up in all situations, but first impressions are very positive. Things I like (a lot):- the repository is contained within the working directory, but only in the root, so you don’t have [...]

A couple of small touches

Sometimes it’s the small touches that make the difference between an OK piece of software and a great piece of software.A couple of small touches have stood out to me over the last couple of days.Firstly, I’ve just loaded Gutsy Gibbon onto my laptop. In an office full of techy practical jokers it’s very important [...]