I am about halfway through Clay Shirky's latest book called Here Comes Everybody: The Power of Organizing without Organizations. I've been tracking his writings since I read through Joel Spolsky's compilation called The Best Software Writing I. I don't know Clay Shirky personally but I'm going to refer to him as Clay in this post because it seems a bit less creepy than referring to him as Mr. Shirky.
This book is very good so far. The basic premise is that when "mass amatuerization" occurs, professions that had been previously created to solve problems often vanish with plenty of misunderstanding and resistence. As a software architect, I am sympathetic to the shift that social computing brings to my world-view. In fact, Clay references Tim O'Reilly's article entitled "The Architecture of Participation" in the book. There's the A-word. That's my job, right? I'm the software architect.
But as Clay and Tim point out, the architecture of a thing is as much defined by what people do in response to a problem as it is defined by what we, the professionals, decide will be done about it. How many times have you designed a great piece of software only to find out that the users are still tracking artifacts in your system using a spreadsheet? They're mailing the spreadsheets to one another as an ad hoc version control system. It's maddending, right? But this common example shows that when the cost of creating your own solution to a problem falls below what you would pay professionals to build it as you conceive it, the professional's job evaporates or becomes marginalized. Clay draws some relevant analogies in the book including how modern print newspapers cannot compete with bloggers and how Bible scribes couldn't compete after Gutenberg invented the printing press either.
While modern newspapers are struggling in the wake of the mass amatuerization of written words, newspaper owners should be looking to the other analogy that Clay wrote about. While it's true that the Bible scribes were essentially wiped out by the mass amatuerization afforded by the printing press, what replaced them eventually evolved into a wide range of new professions. Of course, modern journalism and all of the related newspaper professions are counted among them. What Gutenberg's invention did was to expose that the need for printed words was much larger than the output that the professionals of the period could produce. Now, the same thing is happening to the newspapers. The once bifurcation or trifurcation (is that a real word) of the readership has been exposed as a polyfurcation (now, I know that's one's not real) of interests and opinions.
I don't take the paper anymore. I don't watch the morning or evening news, local or national. I don't even listen to the local radio stations. I just don't like their bent, if you know what I mean. But I do read a few blogs and listen to a few podcasts every day. And I will occasionally pop over to CNN, Fox News or the BBC websites to get their spin on a subject. The point is that my lifestyle as an information consumer has evolved into a sort of digital mashup of daily activities rather than committing to the Post or the Times as my single source of information. Of course, modern newspapers are not single sources of information. They draw content from dozens of sources and hundreds of writers every day. And that may very well be what allows them to survive in the blogosphere of the future. The ability of the traditional newspapers to organize and deliver those mashups for me may create a whole new profession of content aggregators (not editors) who know me, know what I like, know what I find provocative, funny, call-to-action, etc.
What about software development? What can we learn and how can we adapt early to the coming changes? Google Apps, the Facebook Platform, Amazon Web Services and dozens of other APIs are emerging nowadays that allow average users to build usable software on their own. Should we be as worried as the Bible scribes should have been in the wake of movable type systems? Maybe. But we have many advantages that the scribes didn't have. Among them, thanks to print, broadcast and Internet media, we can perceive the threat more quickly than it will spread, before it can mature into a set of new, competing professions. Secondly, mass amatuerization is creating a lot of really bad software today. That's not to say that there isn't a lot of bad software out there already. It's just that when we look closely at the fundamental problems that created our profession, there are some obstacles that Google, Facebook and Amazon will be hard pressed to handle. For example, how are exceptions reported and managed across a Franken-app (an application whose body parts come from different vendors)? Certainly, Dr. Frankenstein realized that this hand needs to communicate with that arm. So I had better get the nerve endings just right. The players in the mass amatuerization of software today aren't thinking that way... yet. And what happens when the network cable is disconnected? Adobe Air is answering that latter question fairly well but Adobe's platform competes with Google's which competes with Amazon's, et cetera, et cetera. While they are all too busy competing with one another to form a unified front, we have a little time to plan.
I think the best thing that software professionals can and should be doing today is introspecting about what Clay calls the scarcities that create a profession. In the print media analogies so far, there are always those who have emerged to define the new scarcities that exist in the light of new paradigms that pop up. Those people become leaders in the new space because they have expended the necessary energy to define, provide for or in some cases to create the scarcity that makes a new profession valuable to consumers. What scarcities exist in the emerging software development models that will translate into positions of leadership in this next century? I have some ideas on this subject which I will be writing about soon. Until then, read Clay's book and let me know what you think.