Sam Deane's blog
Coding Standards
I've been thinking about coding standards again recently. For me a coding standard should definitely be more than just about formatting and naming conventions. That stuff matters, but it's also relatively trivial to agree upon and then stick to.
Essentially I think the standard should clarify "the way we do things here" (wherever "here" might be for you).
The objective should be twofold:
to educate everyone in your team, and teach them about good techniques and common pitfalls
when there is more than one way to do something, to clarify which way to choose, so that code is designed in a consistent way and a programmer working in any area can intuitively work out how another area is likely to work, where to look when there are problems, and how to approach extending an area or adding a new one
My suspicion is that the exact choices that one makes when designing and implementing something often aren't the most important thing. In fact, too much choice can (and often does) paralyse me. Obviously avoiding really stupid decisions is a requirement, but after that, there may well be a number of adequate solutions to a problem.
The important thing when working in a team is consistency. If you're consistent, and agile, you can move fast. If everyone can understand the designs and the code, it will always be easy to revisit the occasional choice that turns out later to be wrong.
To achieve that, you need good standards, and you need good discipline. People need to buy into the idea of a standard, and try their best to stick to it, even the bits that they might not like.
In my experience, once you let go and just follow the standard, it's amazing how quickly a lot of those disagreements seem to become trivial and you are left free to concentrate on the important stuff.
That doesn't mean that designing a standard for a team is trivial. It's pretty tricky, but very important. Once it's done though, just go with it.

I'm Going Indy!
After three and half action-packed years of my second stint at Sports Interactive (which makes it about six and a half in total by my reckoning), I've decided that the time is right to take the plunge and go it alone.
So from June 2010 onwards, I will officially be an independent Mac and iPhone/iPad developer!
No doubt I'll blog more about my plans as the time approaches, but for now I'll simply say that I'm really excited about the prospect of returning full time to Mac/iPhone development, and working on my own applications.
I'll also be up for a bit of collaboration and/or consulting from time to time, so by all means get in touch if that appeals.

Index of regular UK Mac/iPhone developer meetings
Speaking to various folks at NSConference, I realised that there are quite a few regular developer meetings around the country, in addition to the one that I used to organise in London (which still exists but has mutated into the NSCoder london night).
I figured that it would be handy to list them all in one place, for anyone who might find themselves in a strange town for a while in need of geek-based social contact...
I've updated my uk-mac-dev-meeting page accordingly, so that it now lists all of the ones I've heard about.
If you know of one I've missed, please let me know.


Recent comments
1 week 6 days ago
1 week 6 days ago
1 week 6 days ago
2 weeks 1 day ago
9 weeks 3 days ago
9 weeks 4 days ago
9 weeks 5 days ago
9 weeks 5 days ago
9 weeks 6 days ago
9 weeks 6 days ago