The Substrate License
By Richard CrowleySubstrate is now open-source under the three-clause BSD license, a change we made as the metaphorical lights were going out on Source & Binary, the company I founded in 2020 that developed and attempted to build a business around Substrate. It, uh, didn’t work. I’d like to think it didn’t work based on good old-fashioned lack of product-market fit and not the topic of this article: The Substrate License.
In most respects, Source & Binary the company and Substrate the product resembled a great many other infrastructure technology companies and products. Consulting as product discovery. Software that improves the cloud experience. Command-line and web-based tools. Implemented in Go.
On one axis, though, Substrate was odd. Substrate was neither SaaS nor open-source software. Substrate was, from day one, offered for download under a proprietary license that I designed to balance the needs of customers with protections for the business. I want to take a moment to examine the license because, while Substrate-the-business didn’t work out, I think this style of license would be a good fit for many other products.
Incidentally, I may write more one day on the subject of Substrate as SaaS and the PaaS market. That day is not today, though. For now, suffice it to say that Substrate was not SaaS because I, as the prototypical buyer, would not have wanted to buy Substrate as SaaS.
Back to licensing: I have always wondered if source-available licenses would be viewed more favorably if they weren’t so often encountered in a “rug-pull” scenario in which a company is retreating from an open-source license. I wish Substrate was successful enough to have been the counterpoint here, a product offered under something like a source-available license from day one. Since no rugs were pulled the story could’ve been how well it supported customers and protected the business.
My past experiences with businesses built on open-source software have been pretty bad. Substrate began its life as consulting-ware that I intended to use on behalf of clients and offer to them for their ongoing use. I was clear with myself from the start: I was not starting an open-source project. I was not building a community. I was not going to invite feature or support requests that earned me zero dollars. I believed then (and still believe now, despite market evidence to the contrary) that Substrate provided value and that my company should capture some of that value.
In the run-up to the first Substrate release, I spent a lot of time considering how I wanted its licensing to work. At the time, every potential Substrate user was under a Master Services Agreement as a client of Source & Binary which granted them a perpetual license to keep and use any and all software produced or provided during our engagement. That was probably about the extent of the license that covered the very first releases of Substrate.
I knew, though, that eventually these clients would cease to be clients and I wanted to enable them to continue using Substrate, receiving updates to Substrate, and paying for Substrate. Once again imagining myself as the prototypical buyer, I listed the concerns I’d have as a client whose engagement is coming to an end:
- I’m not an expert in this software or the underlying cloud provider. I want support and am willing to pay for it.
- But I can’t be beholden to a vendor forever, financially or technically.
- I’m worried about the vendor’s goals and my own diverging, whether by the vendor changing directions or by me outgrowing their product.
- I can’t afford to start from scratch.
This vignette led me to the “plain English” terms of the Substrate License. Things are simple for a client or a customer; they’re paying for and receiving support and software updates. Their rights get trickier once they stop paying but that’s precisely when the concerns listed above all come to a head. Once you stop paying:
- You retain the right to use the last version of Substrate you paid for.
- You can modify that version to your heart’s content.
- You can do anything you like with it except open-source it yourself.
I am not a lawyer so I worked with a real one who translated these rights into a legible but legally meaningful license. I’m pleased, overall, with how that turned out. I wish there’d been a less obtuse way to legally express the “you can do anything you like with it except open-source it yourself” clause; asserting intellectual property rights works but makes the reader think a lot. I also wish the post-termination rights weren’t stuffed into a section called Effect of Termination because that sounds like a section where you find penalties and bad outcomes, not rights and optionality.
That’s not for a second to suggest I regret having the Substrate License written. The source-available licenses don’t feel right to me and I’m happy I didn’t choose one. The biggest difference between the Substrate License and typical source-available licenses is that it doesn’t mandate any time-based conversion to an open-source license. I didn’t think it was an appropriate to put a time limit on my business. AWS is legendary for their vanishingly rare deprecation so it was reasonable to expect that everything about Substrate from 2020 would still work in 2024 (which it does). If Substrate was popular and offered under a source-available license, I expect there would be a non-trivial number of potential customers who would opt for the old, open-source, and free-as-in-beer version over the most up-to-date and expensive version.
Given we weren’t able to build a thriving business around Substrate, this conclusion is going to ring pretty hollow. Nonetheless, I feel I have to put it out there. In all the conversations we had with prospective customers over the years, not one of them balked at buying Substrate because of the Substrate License or because Substrate wasn’t open source. This license is easy to explain to customers and offers them the protections I believe they actually need. I would reuse the Substrate License in the future and I welcome you to adopt it for your own product if it suits your purposes.
This article is part of a series on Source & Binary, my company that operated from 2020 through 2024.