Docker had a bad week. What’s less clear is whether Docker deserved it.
For those who haven’t heard, last week Docker announced that it was sunsetting Free Team subscriptions. Some in the open source world read this as “pay up or lose your data.” In light of the uproar, Docker was quick to apologize: “We did a terrible job announcing the end of Docker Free Teams.” Unsurprisingly, this failed to placate its most vociferous critics: “The open source community is not alarmed because of how you communicated, but because of what you communicated and how you implemented the transition,” one person commented.
If this sounds like just another day at the open source office, that’s because it is. After more than 20 years working in and around open source, I’ve learned that often people get the most upset about things they haven’t paid for. Free as in beer, free as in outrage.
Talking with Scott Johnston, CEO of Docker, it becomes clear that this change reveals no nefarious plans to force open source projects into paying. If it did, Johnston probably wouldn’t deserve his CEO title, given that the change impacted less than 1.8% of all Docker users. You don’t optimize revenue by targeting a rounding error on your income statement.
Instead, the change is perhaps best explained by Docker’s multiyear journey to refocus its business on developers. Yes, really. Let’s talk about how.
Bad at math
If Docker were trying to shake down open source projects (for the whopping sum of $420/year, as some erroneously claim), it probably shouldn’t offer a sponsored open source tier with better benefits than the retired Free Team tier, like no rate limits and improved discoverability on Docker Hub, and better analytics. All for $0. This “results in a better experience for both the open source project publisher, but also [for the] end users of their software,” says Johnston.
The Free Team tier, by contrast, “was ending up being this catchall for a bunch of different types of customers and users and wasn’t … serving any of them particularly well,” Johnston says. Was Docker trying to push customers out of that Free Team tier? Clearly. That’s what sunsetting does. But was it trying to force open source projects, some of which found themselves affected by the change, into paying $420 each year? No. Instead, Johnston suggests, the idea is to make it simple for open source projects to move to the sponsored open source program: “You don’t have to do anything with your account. All you have to do is apply. And if you apply, then we’re just going to bless you, wave you in, you’re good.”
It sounds like some users haven’t had this seamless of an experience, though it appears to be getting better. Again, this raises the question as to how this fits into Docker’s business plan. I hate to be the bearer of bad news to open source conspiracy theorists (of which there are plenty on Hacker News), but if Docker were looking to grow revenue, going after a Lilliputian percentage of users wouldn’t be the way to accomplish that. Nor would it be overly smart to pinpoint open source projects, which are notoriously short on cash. (Remember, we’ve spent decades debating how to make open source sustainable.)
So for those accusing Docker of trying to grow its revenue through rapacious business practices targeted at 2% of its users with limited bank balances, you need to find a better villain. The math behind “Docker is trying to squeeze open source projects!” simply doesn’t add up. What does?
Party like it’s 2019
Back in November 2019, Docker went through an incredibly painful restructuring. The company had lost its way a bit and grew dependent on larger deals that serviced operations executives within enterprises. Looking back at that time, Johnston said the executive team and board of directors came to a realization that developers, not operations, was the company’s future, as InfoWorld has previously covered.
That meant a different mindset, a different revenue model, a different everything.
The company sold off a big percentage of its business to Mirantis, leaving a fraction of its employee base to chart a new course centered on developers. Out went Docker Enterprise and Swarm. In came a focus on app velocity and security. Today Docker automatically creates a software bill of materials (SBOM), giving developers visibility into what’s inside a container, without the developer having to do anything. Then there’s Docker Scout, which automatically indexes all the packages that are going into that image before it gets built, then checks that against the public Common Vulnerabilities and Exposures (CVE) databases so that it can notify the developer of the need to upgrade, for example, because a newer version may be CVE-free.
The point is to give developers “a guided experience” to help them “make smart decisions locally right there on their laptop.” The revenue model is much lower price points, geared toward developers and aligned with developer productivity. None of that benefits from alleged shakedowns of open source projects or of developers generally. If we view the Free Team tier decision in light of the pragmatics of Docker’s business, as well as its guiding company virtues, while recognizing that imperfect humans were involved, it becomes much easier to see the decision exactly as Docker described it: good intentions, poorly communicated and executed.
One of those Docker Virtues, “Open Collaboration,” is reflected in how the company tries to collect feedback. First, Docker maintains a public road map on GitHub. Developers are encouraged to comment there, and comments are reviewed at least weekly by the leadership team, Johnston says. Second, Docker has external Docker Captains, similar to Microsoft MVPs or AWS Heroes, who both advocate for Docker while also giving feedback. (I imagine their private Slack channel was buzzing after the news about sunsetting the Free Team tier came rolling in.) And third, Docker relies on a Technical Advisory Group that includes a dozen or so senior technologists from outside organizations who advise on product direction.
Should these “open collaborators” have caught the Free Team snafu before it happened? Perhaps. But the point with Docker, as with any company, is not what it does at a given moment in time, but rather its general direction over time. In this light, it’s hard to look at Docker since 2019 and not come to the conclusion that this is a company that takes developers seriously and keeps looking for ways to boost their productivity. It’s easy to deride how Docker managed the Free Team tier change, but doing so overlooks just how much Docker has changed, and continues to change, into a developer-oriented company.