October 24, 2008

...Learn TDD with Codemanship

Could A Recession Open up The Market For High Quality "Boutique" Software Development?

In my previous post, I wondered "will the credit crunch crunch quality?"

But maybe - just maybe - now is the best time to be thinking about software quality...

Think about it.

When is the best time to start a new business? When the market's stable and dominant players are difficult to knock off their perches? Or when the market's volatile and dominant players are starting to wobble?

We've had a few good years of customers paying high prices to have buggy, unmaintainable software delivered to them. And many of the most dominant players in that market also just so happen to deliver the crappiest code (if they deliver at all).

And at the same time, there could be a surfeit of talent - those elusive 1%-ers (the 1-in-100 software developers who are capable of doing very high quality work and of achieving high productivity) - coming on to the job market as the clueless managers in these industry giants inevitably throw the baby out with the bathwater when they're laying off staff. (Because they wouldn't know sh*t from shinola, frankly.)

And Martin Fowler hit the nail right on the head when he told a bunch of us at the BBC that standing out from the crowd and achieving higher quality code is, for the most part, simply a question of resolving to do it. I know. I've seen it happen. I've done it. You take a developer worth half her salt and tell her to achieve high unit test assurance, and - hey, presto - if she resolves to do it, she will. It's not magic. Most developers don't achieve high quality simply because they don't set out to. As Martin said, the bar is set low in our profession. It doesn't take much to be better than the rest.

So there's some key pieces of the jigsaw already in place:

1. Destabilisation of dominant players
2. Availability of talent
3. Resolution to achieve high quality

The great news is that you can have your cake and eat it. To a point, and it's far further away than most people think it is from what they currently do, it costs no more (and often costs less) to deliver higher quality software. So there's another piece of the jigsaw:

4. Economy of quality - custimers can have their cake and eat it

In a price-sensitive market, with massive upheaval among the established players, customers might be more inclined to take a bet on a start-up with great talent (based on their track record, not on the brand's to begin with) and a commitment to delivering demonstrably high quality without higher prices, I suspect a few doors may open and we may see a few new quality-driven players emerging.

It'll probably only ever be a niche. But I can think of all sorts of businesses who could use the services of a developer like that. It would need to be businesses where the stuff they sell really has to work.

Embedded systems - everything from smart ovens to guitar effects units - are one potential market.

And it's about time Dotcoms realised that they are actually software businesses. Maybe a few of them will get switched on to asking for more reliable, maintainable code.

Banks? Well, who cares? F*** 'em...

Then there's scientific computing, medical systems, even aerospace (if you fancy getting your hands bloody on defence-related work).

I can see a market emerging in the next few years for what some might call High-End Boutique Software Development. Small collectives of very highly skilled, talented and disciplined software develpoers creating high quality code for discerning clients.

And they'll probably do it out of very different working environments to what we're used to. Indeed, some that already exist don't have offices and do all their work over the Internet using tools like Skype and remote desktop sharing.

So maybe the recession doesn't mean it's curtains for quality. Maybe quality is about to get a bit of a leg-up as customers become disinclined to waste huge amounts of money on crappy software.

Posted 12 years, 7 months ago on October 24, 2008