In life and, as it turns out, in tech, you need friends—in Docker's case, lots of open source friends.
In case you missed VMworld this week, clouderati tweeter @cloud_opinion has a nice summary for you:
From Project Pacific to Tanzu, VMware is very clearly all in on Kubernetes, the industry darling for container orchestration and more. It's a great move by VMware, and an ironic one: VMware, which once dissed the container revolution, will now play a big part in carrying it forward. Indeed, every company that may have initially sat out the Kubernetes rise is now fully on board. (Disclosure: I am an employee of AWS.)
Given this impressive adoption of containers (and associated technology), it's even more ironic (and somewhat sad) that Docker, the company that did more than anyone else to kick-start the container revolution, is a comparative pauper when it comes to profiting from containers. No, I'm not suggesting that Docker is struggling financially, but just that other vendors seem to be making a lot more.
Why? What is it about Docker that makes so many people indifferent to the company's plight?
Designing out community
There may be sound, technology-based reasons that Docker is doing well enough but not rolling in billions. Murali Gandluru, for example, has highlighted the difficulty Docker was always going to have in the container orchestration market against Kubernetes, given that Kubernetes "was operation hardened internally at Google AND had Google's stronger muscle."
Fair point, and likely true.
But this and other technology reasons aren't the reasons people give for "not weeping for Docker." Instead, if you ask (as I did), the responses center on Docker's alleged mismanagement of its open source community. Take, for example, Ben Kepes' criticism:
Docker was a victim of its own arrogance and hubris. They thought they could create a walled garden off the back of an OSS project and failed to see there was no obvious way to scale revenue from their model….Of all the open-source initiatives over the last 10 years, none showed as much ignorance (or arrogance) of what makes a good community builder than Docker.
Analyst Krish Subramanian agrees, noting that "Docker paid a price for blocking contributions and not having an open community." That lack of open community, he continued, was driven by calcified design decisions: "The problem with Docker then was their 'any orchestration but with our batteries attached' strategy. That lead to fissures in the community."
Make friends, influence people
Not everyone agrees. Phil Estes, for example, has suggested that core Docker contributors "to this day...are incredibly frustrated at the implication that there were declarations from on high to 'block contributions.'" He went on:
The maintainers had strong opinions about the design and implementation of the client/daemon, and took sometimes too long to go back and forth and, in the end, refuse certain [pull requests]. Swarm is another story, but the main engine was a very open project with many external maintainers. It took a very specific PR (and not the pull request kind) campaign to promote the idea Docker was closed as a project, and many engineers no longer at Docker have said to this day they would have refused those GitHub [pull requests] regardless of their paycheck signer.
To which Subramanian responded:
It may not [have been a] declaration from the top but it was definitely a "my way or [the] highway" approach. [There] may have [been] some design considerations in play. But it was not an open approach which could have kept the community behind them.
Or maybe, as is so often the case, Adam Jacob offers the pithiest, most accurate summary:
From the outside: Docker made no friends at all in the industry. My experience was they were convinced they needed nobody, were better than everybody, and it was essentially fate. Turns out you need friends when the industry turns.
The business lesson? In Jacob's view, it's simple: "[M]ake friends, even with your enemies." Or the slightly longer version from the open source lawyer Van Lindberg: "Open source is non-rivalrous. Figure out a way to monetize that doesn't set you up in opposition to your community, and people will love you. But if you need to diminish the community in order to be successful, people will treat you as if your product is proprietary." Amen.
- DevOps: A cheat sheet (TechRepublic)
- Hiring kit: Database administrator (TechRepublic Premium)
- What is Docker and why is it so darn popular? (ZDNet)
- Kubernetes gameplay key to VMware strategy, but execution speed critical (ZDNet)
- Survey reveals growing concern about container technology security (ZDNet)
- The 10 most popular container tools for businesses (TechRepublic)
- 6 critical factors to consider when deploying containers (TechRepublic)
- DevOps: More must-read coverage (TechRepublic on Flipboard)