I’m a software engineer by training, somewhat by practice, and, in a sadly diminishing way, by mindset. Maybe some of the real engineers around me can back me up on some of that. (Please?)
So it is with a heavy heart that I say that software technology has become a commodity. Evidence is everywhere:
- Increasingly, technical work is contracted out to third-party developers, sometimes offshore. “Here’s a spec; how cheaply can you build it?”
- Platforms are getting faster every day. You can stand up a Rails site now orders of magnitude faster than what you could do just a few years ago. Hell, you can configure a WordPress site to do almost anything you want orders of magnitude faster than a Rails site, for free. Why stop there? You can pick-and-click your way to a Ning site orders of magnitude faster than configuring a WordPress site. (I know all those technologies/platforms don’t serve the same need, but you get the idea.)
- Software technologist supply is increasing; i.e., there are more software developers now than ever. The ease of building things is dropping the bar so low that a 17-year old kid can build Chatroulette in a few days. Culture and technology is changing so that everyone can be, and is becoming, a technologist.
- Costs of apps are dropping. Mobile apps cost $0.99, not per use, not monthly, but once ever. That’s because it takes a 17-year old a few days to build it. If you make $500 on your app, you’re ecstatic.
There’s nothing terribly radical about this observation; I’m sure it’s out there everywhere. It is very interesting to me, though, to take it to its logical conclusion.
Imagine if technology becomes so easy, so ubiquitous, so accessible that if you can imagine it, you can build it (or have it built) for nearly free. I think we would all agree that that’s where we’re headed, amazingly quickly. How would the software/internet industry change?
My take (thanks for asking) is you end up with something like the mass-market clothing industry (forget haute couture for this comparison).
Stick with me for a bit. Now, I won’t pretend to really know the clothing industry, but my naïve view is that it’s driven by designers and marketers. The “builders” are outsourced to the cheapest suppliers possible such that if a designer can imagine it, they could have 20,000 units drop shipped to their warehouse in a week. The success of a designer or a retailer or a brand is never about whether it can be built, or how efficiently it can be built, or how cheaply can it be built, but is only about whether enough people will buy it.
You can already say the exact same thing about the software industry, and I run into this all the time at Intuit. An engineer or architect will have or hear about an idea and jump straight to the standard question: how are we going to build it? They start thinking about data models, class structures, engineering processes, etc., stuff that I personally love arguing about.
But whenever I’m in these conversations I ask the same questions: what is the big unknown about whether or not this will be a successful idea? “Can it be built?” or “How efficiently can it be built?” is almost never the issue. Put another way: if you ask the engineer/architect if they think it can be built, their answer is always “Of course”; if you ask them if people will actually use it/pay for it, the answer is typically “I don’t know”. Voila, your big unknown.
I’ve rambled on for long enough, but I’d love to know what people think. I actually have many, many more thoughts of what the software/internet world would be like with free technology, but strangely, they all have one common theme: we’re here already.