The Wall Street Journal thinks it’s news that Zulily is developing “more software in-house.” It’s not. At all. As Eric Raymond wrote years ago, 95% of the world’s software is written for use, not for sale. The reasons are many, but one stands out: as Zulily CIO Luke Friang declares, it’s “nearly impossible for a [off the shelf] solution to keep up with our pace.”
True now, just as it was true 20 years ago.
But one thing is different, and it’s something the WSJ completely missed. Historically software developed in-house was zealously kept proprietary because, the reasoning went, it was the source of a firm’s competitive advantage. Today, however, companies increasingly realize the opposite: there is far more to be gained by open sourcing in-house software than keeping it closed.
Which is why your company needs to contribute more open-source code. Much more.
A Historical Anomaly
We’ve gone through an anomalous time these past 20 years. While most software continued to be written for internal use, most of the attention has been focused on vendors like SAP and Microsoft that build solutions that apply to a wide range of companies.
That’s the theory, anyway.
In practice, buyers spent a small fortune on license fees, then a 5X multiple on top of that to make the software fit their requirements. For example, a company may spend $100,000 on an ERP system, but they’re going to spend another $500,000 making it work.
One of the reasons open source took off, even in applications, was that companies could get a less functional product for free (or a relatively inexpensive fee) and then spend their implementation dollars tuning it to their needs. Either way, customization was necessary, but the open source approach was less costly and arguably more likely to result in a more tailored result.
Meanwhile, technology vendors doubled-down on “sameness,” as Redmonk analyst Stephen O’Grady describes:
The mainstream technology industry has, in recent years, eschewed specialization. Virtual appliances, each running a version of the operating system customized for an application or purpose, have entirely failed to dent the sales of general purpose alternatives such as RHEL or Windows. For better than twenty years, the answer to any application data persistence requirement has meant one thing: a relational database. If you were talking about enterprise application development, you were talking about Java. And so on.
Along the way, however, companies discovered that vendors weren’t really meeting their needs, even for well-understood product categories like Content Management Systems. They needed different, not same.
So the customers went rogue. They became vendors. Sort of.
Scratching Their Own Itches
As is often the case, O’Grady nails this point. Writing in 2010, O’Grady uncovers an interesting trend: “Software vendors are facing a powerful new market competitor: their customers.”
Think about the most visible technologies today. Most are open source, and nearly all of them were originally written for some company’s internal use, or some developer’s hobby. Linux, Git, Hadoop, Cassandra, MongoDB, Android, etc. None of these technologies were originally written to be sold as products.
Instead, they were developed by companies—usually Web companies—building software to “scratch their own itches,” to use the open source phrase. And unlike previous generations of in-house software developed at banks, hospitals and other organizations, they open sourced the code.
While some companies eschew developing custom software because they don’t want to maintain it, open source (somewhat) mitigates this by letting a community grow up to extend and maintain a project, thereby amortizing the costs of development for the code originators. Yahoo! started Hadoop, but its biggest contributors today are Cloudera and Hortonworks. Facebook kickstarted Cassandra, but DataStax primarily maintains it today. And so on.
Give It Away (Now)
Today real software innovation doesn’t happen behind closed doors. Or, if it does, it doesn’t stay there. It’s open source, and it’s upending decades of established software orthodoxy.
Not that it’s for the faint of heart.
The best open-source projects innovate very fast. Which is not the same as saying anyone will care about your open-source code. There are significant pros and cons to open sourcing your code. But one massive “pro” is that the best developers want to work on open code: if you need to hire quality developers, you need to give them an open source outlet for their work. (Just ask Netflix.)
But that’s no excuse to sit on the sidelines. It’s time to get involved, and not for the good of some ill-defined “community.” No, the primary beneficiary of open-source software development is you and your company. Better get started.