March 22, 2010

...Learn TDD with Codemanship

Join My UK Institute of Software Development. Or Don't. Whatever.

Greetings, puny earthling.

I have been appointed director of a brand new Institute of Software Development. Just now. By me. About 30 seconds after I wrote "Institute of Software Development" on a scrap of paper and thought "yes, that sounds suitably pompous".

It is, of course, my childish response to today's announcements by Gordon "Soon To Be Ex-Prime Minister" Brown made in a speech about so-called Digital Britain. It's all the usual vendor-driven, hype-oriented bullshit we're used to from politicians - especially when they're talking about anything to do with computers, because that, to them, is essentially magic beans and giant beanstalks territory. Mentions of "semantic web" (like the current web, only semantic, see) and "apps" and "digital content" and all the stuff people who pay someone to print off their email and read it out loud to them talk about.

He paints a picture of Digital Britain - empowered digital citizens connected by ultra-fast broadband to super-duper-whiz-bang-single-sign-on-will-even-make-the-tea-for-you online government services, and of empowered digital content creators (you may know them as "wankers with iPhones") leading the world in the creation of eye-popping visuals and aurals and very probably anals the likes of which none of us can frankly be bothered to imagine.

It all sounds great. Apart from the bit that seems to have been read directly from some vendor's latest brochure. Which it very probably was. But there's just one teensy-weensy little flaw in the grand plan. Just who in the Sam Hill is going to write all the software that will power Digital Britain?

Mr Brown claims that 250,000 new IT jobs will be created by his strategy, but that's a lot of skilled, talented professionals to conjure up in just a few years. Most importantly, where will all the new programmers come from? These people would have to be in schools and universities right now, as we speak, studying computer science, software engineering or other relevant disciplines. And they most definitely are not. Not in those numbers. Intake is down. And the quality of entrants into the profession is gradually eroding year on year.

The fact is, we're already scraping the bottom of the barrel. The dotcom bubble sucked in tens of thousands of wannabe programmers as share prices went stratospheric and anyone who could spell "A.S.P." was in with a shot at a career as a "web developer" (like a real software developer, only without the programming ability - which was seen as optional back then). After the bubble burst we found our talent pool chronically watered down with this low-quality dotcom intake - so much so that it could probably have been described as homeopathic. And any rational, educated scientist will tell you that homeopathy doesn't deliver.

It's bad enough today, when 9 out of every 10 developers you meet are frankly not up to the job and 9 out of 10 projects are consequently a nightmare for all involved. Another fairytale bubble could make that 99 out of 100 if the strategy doesn't make building the UK's software development capability it's number one priority. No good new programmers, no good new software. No good new software, no Digital Britain. It's really that simple.

And from the speech Mr Brown gave today and the Digital Britain report itself, it's apparant that not only isn't this a priority, it's not even worth a mention. I shouldn't be surprised. People who actually write software for a living are not represented in the priveleged circle of advisors the government has turned to to help shape the strategy. Instead, the report was shaped by academics, dotcom entrepreneurs, professional services companies, software vendors (not British ones, I should add) and more bloody celebrities.

Us codemonkeys are voiceless backroom boys (and gals, of course) in all of this. Just like we are in our own businesses. In our own IT departments. In our own teams. There's a clear pecking order from business leaders down through IT managers and project managers, past business analysts and architects and finally, right at the very bottom of the pile, the people who actually make software happen.

Which is entirely unnacceptable. If this was a strategy about Law in 2020, or the Future of Medicine, you could be damned sure that practicing lawyers and medical clinicians would be involved in the highest level discussions.

When I read Mr Brown's speech, I see hundreds, possibly thousands, of software projects being inadvertantly green-lighted. Potentially hundreds of millions of lines of code that will have to be written, tested, deployed, rewritten (several times) and adapted in the next ten years here in the UK. This truly dwarfs the economics of the online semantic social wotsisnames and digital content iThingy doodahs the government and their cohorts are salivating over, and they seem totally blind to it.

Blind, too, to the paradox they're defining here. As less and less people show an interest in learning how to tie their own shoelaces, let alone program a computer, we have a 10-year strategy that requires an unprecedented construction effort to create the critical software infrastructure that will power this digital revolution.

A programmer would not be blind to this, and many have tried to make their voices heard. But the government is not listening. Our existing institutions, like the BCS, are weak and ineffectual in such matters, and arguably are too widely-focused to speak specifically for people who write code.

We are not important. We are not famous academics (y'know, who've written books and been on telly and everything). We are not celebrated dotcom entrepreneurs. We are not Stephen Fry. (Love him though I definitely do). We have no voice in all of this, even though it's really going to be down to us at the end of the day to make it happen. As it always is when there's new software involved. We are the hard place to Mr Brown's digital rock. We must find a voice and make ourselves heard. We must do, because there is no "try".

So, in a petulant frenzy ("this is a petulant frenzy, I'm petulant and I'm having a frenzy" - bonus points to anyone who can identify the reference) I have literally just now formed my own Institute of Software Development so that when I write stinky missives to Number 10 about all of this I can put "Director, Institute of Software Development" on the letterhead and then maybe Gordon will think I'm as credible a source of guidance on these matters as Bono, Lorraine Kelly, Mr Kipling, Scooby Doo and any other celebs he's sought technology advice from recently.

Right now we only have one member. But you are very welcome to join. Membership is free to anyone who writes (or has written) code for a living. There is no newsletter and every year you won't get to vote on anything. You can put MISD after your name, if you think it will help. You know where to send the application. Usual address.

And an institute needs distinguished fellows, and perhaps just one or two celebs, of course. I have just taken a vote from the board of directors (me), and am delighted to announce the following fellowships:

John Daniels
Steve Freeman
Alan Cameron Wills
Steve Cook
C A O Hoare
Ivan Moore
Martin Fowler
Michael Winner

They don't get a say in it, of course. We have very strict rules about that sort of thing.

Message ends.

Posted 3 weeks, 6 days ago on March 22, 2010