Yugabyte CTO: The open road to developer mindshare
This is a guest post for Computer Weekly Open Source Insider written by Karthik Ranganathan, founder and CTO at Yugabyte.
Yugabyte is known for its high-performance distributed SQL database for what te company calls Internet-scale cloud-native applications.
Ranganathan argues there are only three ways to achieve mass adoption when developing an open source project:
- Be there first (before anyone else knows what is going on)
- Simply, be the best (and put serious money behind it)
- Publish under an open source license and build a vibrant open source community.
Although he realises this simplistic plan may be an over-generalisation, Ranganathan insists that the concept presented here is ‘mostly correct’ and that if a project can get the community factor done really well, then it can ultimately be more important than any level of monetary investment.
His theory is – if developer mindshare determines how much market share you have of (in) a flat world, then capturing developer mindshare is the key to becoming a profitable technology vendor.
Ranganathan writes as follows…
Assume that developers are hyper-rational — and, further, even their irrational thoughts are hyperrational.
If a developer rage-quits your software because it has too much of a learning curve, that’s actually a pretty rational decision. If a developer prefers an open source license, I would argue that that is rational too — so software companies should keep that rational mindset close to their heart when attempting to launch a new product/project.
The best choice (obviously) is to get developers attracted to any project as close to a zero-cost as possible. That means a license with no restrictions, great tutorials and documentation and support for whatever framework they are using.
Zero-cost = maximum developers
So at zero-cost you’ll have the ‘most developers’ that could be interested in whatever it is your software does. You still have to advertise and do all of the other things, but open source, easy to use, easy to deploy, widely supported is the lowest cost to developers you can be… so that maximises your potential (all other things considered).
In truth, if you charge developers zero and have an open source license, you will have some free-riders (who don’t contribute back to the project). However, most of the developers in this space will work inside firms that are not in the ‘target market’ (for any commercially licensed version of the open core).
The target market is the Fortune500, FTSE 1000 and ones that are ‘close enough’ to those standards.
If you are in sales, you ‘know what I mean, because these (free riders) are part of the prospect ‘qualification process’. In short, you were not going to get much money out of them anyhow.
Charting our progress
The far-right of my chart (below) are service providers. They may be financially large enough (to exert market muscle) and while most vendors consider them behemoth slow-moving beasts, they are almost always a disappointment.
Among the Silicon Valley big boys (who fail to invest in open source in a truly philanthropic way… and I could name a ‘fruit’-based company, but I won’t) there are the Facebook-type vendors who run software beyond the scale of most enterprises. They are at such a scale that they will not buy support or services from your open source project anyway. They might use the open source version, or just build their own.
This is rational, it makes sense for them to build their own team. They invented half of this stuff anyhow. It is more costly than it is worth to serve them.
So maximising adoption for even the best product or first mover, in enterprise software, means producing open source software that caters to developer preferences. It means creating a supported, highly manageable product that can be sold to the FTSE1000/Fortune 500+.
It also means regarding everyone else (on the planet) as part of your R&D and marketing… so, please, open source with arms wide open.