To Open Source Or Not
Could going open source lead to a life of crime? Are open source projects a gateway drug for becoming a full blown gangster? Listening to…
Could going open source lead to a life of crime? Are open source projects a gateway drug for becoming a full blown gangster? Listening to the story of Paul Le Roux though, you can’t help but think maybe the open source world helped nudge Paul into starting a global criminal syndicate:
People took Paul’s free software and they improved it, they made it better, and then they charged money for the things that they’d made. Some of those people got to cash in and Paul didn’t. He tried to start a company, that failed. By 2001 he was reduced to this job working for a guy whose product was actually based off Paul’s work, a commercialized version of E4M. And if that wasn’t bad enough, that guy fired Paul.
Okay, probably not. Open source software (OSS) by all accounts has been a huge boon for humanity. One estimate noted companies could save $387 billion in costs using open source. That same firm found that 96 percent of codebases they analyzed utilized OSS, and in a survey, 78 percent of respondents said their companies run part of their operations on OSS. Maybe the other 22% just don’t realize they are running on OSS?
The benefits have long been understood. When you have a global community of contributors, you open up software to a wider pool of innovative ideas, more eyeballs to quality review code, and more minds to enable faster development. You escape the constraints of proprietary software as one of the leaders of the open source movement, Michael Tiemann, describes:
“With open source, better/faster/cheaper by itself is available for the low, low price of zero dollars.”
Wait, zero dollars? Is the software and all that entails deploying and supporting OSS really “free”?
“Theoretically, the CAPEX for OSS is $0. But what is the OPEX? How many engineers will have to be employed to run the software and debug it? What features will have to be added to an unfamiliar code base? What additional ancillary management systems, UIs, etc. will need to be built such that the software can be consumed by the rest of the organization?”
The use of OSS came up this week on an internal podcast I recorded with a banking IT leader. OSS has brought a ton of value to the engineering and infrastructure teams. It would be foolish though to assume open source can solve all the needs required of business. The business doesn’t care about open or proprietary; they care about working software delivered on time and at cost generating their expected outcome.
Software in companies can be categorized as either core or non-core. Technology that differentiates a company and provides a competitive advantage in the market would be considered core software. Think of a consumer facing mobile banking app or high-frequency trading systems. Having the best user experience or fastest execution is technology enabled differentiation and creates market winners.
Most software in companies however is not customer facing or integral to market success. These technologies are important, but they are squarely of the “run the company” or non-core software category. Think CRM or ERP systems which are necessary, but no organization is winning marketshare or investor dollars because their HR or customer service systems are “the best”.
With SaaS, it becomes even easier to select buy over build for non-core applications. Over twenty years ago, I built a web-based CRM system for my company from scratch. At the time it made sense since nothing in the market fulfilled our particular use case. But would I do that now when Salesforce and many other vendors offer comprehensive and flexible solutions?
In deciding when OSS is the best path then, it comes down to what is the goal to be achieved? For developer tools, open source makes the most sense as the consumer of those tools and platforms are technical enough to work through the eccentricities of software that may not have the spit and polish of commercially available alternatives.
For applications that will be deployed to non-technical users, there is a stronger case to go readily built proprietary applications. OSS can still be useful for things like monitoring, integration, security, and other aspects of maintaining the application. What is harder to provide in the OSS world are the business best practices, the greater level of support, refinements in user experience and functionality that are often lacking. This explains the rise of successful commercial companies built on top of popular OSS projects such as Databricks, MongoDB, Cloudera, SugarCRM, and many others.
The best performing organizations focus on what makes them special. By extension, they eliminate or minimize the tasks that are not essential. As Michael Tiermann wrote:
What efficiency factors determine when a firm should produce its own open source capabilities to meet its own needs rather than outsource?
Cloud computing and SaaS give companies the freedom to choose. Vendor lock-in is less of a concern and the flexibility afforded by these models makes it easier to outsource. The upside is that it allows IT teams to access solutions that have robust support and solve the needs of the business while allocating resources towards innovation initiatives and market differentiation.
How is your organization using open source today? What is your perspective on buy vs. build decisions and the impact of open source on those decisions?
What languages were used for coding 50 years ago?
What languages were used for coding 50 years ago?
What were they coding 50 years ago? Are they still actively programming and using Stack Overflow?meta.stackoverflow.com
Interesting follow-up to a question on the Stack Overflow Developer Survey…
We help IT leaders in enterprises solve the cultural challenges involved in digital transformation and move towards a community based culture that delivers innovation and customer value faster. Learn more about our work here.