Recent Articles
June 19, 2009
A common anti-pattern in distributed systems design comes about because of the belief that scale is easily achieved by making all communication asynchronous. And to be fair, there is some logic to why this misconception occurs. If you take the real-life analogy of making a phone call as a synchronous option for communication, with sending a letter as its asynchronous counterpart, then you can more efficiently increase a team's workload (assuming the team performs simple, repetitive, tasks), in proportion to increases in its size, if they spend all day banging out letters rather than dialling n ... [more]
May 5, 2009
This short series started with Planning the Plan, an article that tried to put into context some of the roadmap and planning activities that take place before projects get approved and started. I suggested using the McFarlan Matrix as a way of categorising potential projects so that they might be more likely to deliver benefits in line with whatever the business strategy is for that year. There are plenty of good ways of doing this, but the McFarlan Matrix is simple and quick, and forces conversations about what good looks like for the coming 12 months of f ... [more]
April 5, 2009
In trying to put down some words on project estimation I've had to come to terms with an internal contradiction which I guess goes all the way back to the origins of software engineering. Logic tells me that because the ultimate goal of a software project is a series of machine instructions that perform some useful task, and because at the lowest level these are almost wholly predictable in their nature (strange microcode bugs notwithstanding, although these are far more rare than they used to be), and because enough analysis should empirically capture precisely what this useful task looks ... [more]
March 8, 2009
You've been assigned to a project. The requirements are well understood and they make sense. The team is capable and the project manager reasonable. The one thing you don't have, because we never do, is time. This is a project with a David Beckham date.
The David Beckham date is a term I use for an immoveable launch target. I once worked on a project where David Beckham had been booked to do the release publicity. That pretty much fixes when you need to be done. Firstly, he isn't going to be able re-arrange international football fixtures to accommodate a project slippage and second he's no ... [more]
January 25, 2009
Wherever you are in the world and whatever business you are in, 2009 is going to be a tougher year than usual. If you aren't at the pointy end of the economic downturn then your customers will be. For a lot of IT departments that's going to mean less to spend. For the lucky ones without budget cuts there's going to be a higher expectation of return on that spend.
As it's January, and the start of a new year, I thought an article on planning what to do with those budgets might be both useful and topical. This year, more than ever, I suspect planning (and replanning) skills will be important ... [more]
January 11, 2009
On Friday 4th June 1976, in a small upstairs room away from the main concert auditorium, the Sex Pistols kicked off their first gig at Manchester's Lesser Free Trade Hall. There's some confusion as to who exactly was there in the audience that night, partly because there was another concert just six weeks later, but mostly because it's considered to be a gig that changed western music culture foreve ... [more]
December 30, 2008
Let's end the year on a lighter note. Working in corporate IT is tough enough without another 2000 word essay on architecture or the pop-psychology of a management technique for the holiday period.
Recently I've been putting together a treatment for a TV documentary on some of the extraordinary computer scientists behind the bodacious awesomeness that powers the best IT today. During some random research I came across a game called "Programming Language Inventor or Serial Killer?", an amusing distraction that needs no explanation. I got 10/10 ... [more]
December 7, 2008
Michelangelo famously said that he didn't just take a piece of stone and sculpt it into the shape he wanted, but rather he believed that every hunk of rock already has a sculpture inside and the job of the sculptor is simply to remove all the pieces that aren't it. He added that the way to distinguish between that which should go and that which should stay is to "obey intellect" and understand that even the greatest of artists cannot conceive of anything more beautiful than that which already exists within the stone. The quote is from one of his best known sonnets "[Non ha l'ottimo artista alc ... [more]