Live data from Hacker News

A new upstream project to break up Docker into independent components

github.com

71–80 of 321 posts

Re: A new upstream project to break up Docker into independent components

#71
post #62

Can this piece of the puzzle really support a venture funded company? I get RedHat, that's a complete operating system. And Mongo, the database is a huge chunk of a system. But Docker seems definitionally a tiny sliver of the overall ball of wax.

I think that's the problem they are trying to solve. They want people to be buying their higher level stuff, container management, orchestration, etc. But all the attention is on the lower-level container runtime.

And, their competition at the higher level is starting to abstract away from their runtime. Like this: https://github.com/kubernetes-incubator/cri-o

Re: A new upstream project to break up Docker into independent components

#72

Earlier quoted context omitted.

Of course it was the first thing I thought of when I originally heard the name -- what else could it possibly mean? I assume they changed the name because somebody finally pointed out the first definition of docker on urbandictionary. But what was so dirty about my phrasing, other than saying the name of the project itself? (And it's only a myth that it's dirty, unless you never bathe.) Shouldn't any mention of that…

> Leave it to the prudes to shoot the messenger... ;) Or maybe just because it is off-topic?

[deleted]

Re: A new upstream project to break up Docker into independent components

#73
So devops conferences will no longer sound like "Docker docker Docker? Docker. Docker docker docker docker? Ahh, Docker docker Docker docker docker." Now they'll sound like "Moby moby moby...?"

This seems absurd from a branding point of view.

I personally find this a little bit vindicating. I'm 39, which is like 120 in programmer years. I feel like one of the advantages of being an "old" (in quotes!) programmer is that I'm pretty good at spotting a fad. Unfortunately whenever I point one out I get mocked and down voted to oblivion, so I've learned to just sit on the sidelines and watch the fads go past and just work to avoid them in my own projects.

Programming is very faddish, and I've seen fads come and go. Here's a few of the ones I've seen in my tenure:

- "Design patterns" heavy "enterprise" programming, such as commonly seen in the older work in the Java and .NET ecosystem.

- XML for everything.

- Agile. Oh god, agile.

- Test driven development.

- Dynamic languages (as productivity magic pixie dust).

- Service oriented architecture (SOA).

... I could go on.

Not everything in these fads is bad. Fads often contain good ideas and some fads contain non-fad elements that stick around. But they're fads insofar as they are over-hyped as magic cure-alls.

The key characteristic of a fad is this:

It's heavily hyped as a cure to some set of very hard problems in programming or system administration, but all it really does is move the problem somewhere else or hack around it in some trivial gimmicky way. There is no real innovation. Meanwhile the fad often introduces new problems that nobody thinks about until the shine wears off.

My simple heuristic for recognizing a fad is to ask "where's the innovation?" A real innovation is a conceptual leap forward. It has a certain "meaty" feel to it and seems worthy of at least one solid CS paper. It often reduces complexity, since when deployed you can now dispense with all the mountains of hacks you used to work around the problem prior to the innovation.

Here's some current things that I very strongly think are fads:

- Microservices, which is just a reboot of SOA. The idea is not inherently bad and often results in more scalable systems, but the faddish part is the idea that replacing local API calls with RPC API calls or event queues is going to make some major class of programming problems go away. No, and you've also just introduced a new set of problems around network unreliability.

- "Serverless" cloud, a.k.a. total lock-in to a proprietary mainframe. Everyone doing this is going to regret it in 5-10 years except Amazon's shareholders. It's a roach motel. Compute will get another order of magnitude cheaper and prices for everything else will drop accordingly, but these prices will not since you drank the kool-aid haha.

- Containers.

... yes, containers.

Like most fads, containers are a response to a real set of problems. These are mainly:

- System/VM configuration drift and variability.

- Dependency and DLL hell.

- The fact that Linux/Unix has devolved into a single-tenant operating system where it's hard to deploy more than one thing on one "server." (This debacle is deserving of a whole very long blog post.)

Containers are a fad because they don't address any of those problems with real innovation.

System configuration drift, dependencies, and DLL hell are are addressed by the gimmicky hack of basically tar'ing up whole Linux images and treating them like gigantic statically linked binaries.

If you're going to do that, why do you need Docker/moby/whatever? Just use a static Linux distribution like http://sta.li and run every service in its own home or chroot. Keep your service trees in git and manage systems with Chef, Puppet, or f'ing shell scripts.

I fail to see why orchestration (a.k.a. provisioning) systems like Kubernetes could not work in such an environment without the container cruft.

Containers don't solve multi-tenancy much in practice. Their security profile is not good enough for true multi-tenancy, and if you try to run too many on one server you're going to run into stability problems that derive from all the bugs that exist in all that extra complexity they add.

Real solutions to these problems would... you know... really solve them. A real solution would make it possible to deploy stuff easily and forget about DLL and dependency hell. A real solution would restore true multi-tenancy to Unix, allowing users (not root) to install and run services on commodity identically-configured Unix systems. A real solution would reduce complexity.

Edit:

I do wonder a little if the idea of throwing out dynamic linking, which both containers and some newer compilers like Go do, is not a bad idea. Maybe it's obsolete. Maybe the tiny memory savings of dynamic linking are no longer justified by the complexity overhead of dependency management.

Re: A new upstream project to break up Docker into independent components

#74
post #46

This is a bait and switch of whale proportions. Docker used to be the open source part. Now that's being moved out of the way so when you search for Docker you get the paid offerings. The goal is to confuse the people who haven't been following this into thinking Docker is a thing you pay Docker (the company) for. It's brilliant.

> The goal is to confuse the people who haven't been following this into thinking Docker is a thing you pay Docker (the company) for

Following the first thing they google without actually understanding what's involved, all the way to handing over money sounds about what I expect from someone who thinks Docker is a viable platform to use for anything worth handing over money for.

Re: A new upstream project to break up Docker into independent components

#75
Hi all, Docker founder here. It appears that the explanation in the pull request is not very clear. Sorry about that. We didn't expect the PR to be the first thing people read: there is a new website at mobyproject.org. Unfortunately Github is struggling under the load, and I can't update the PR text to clarify.

Here is an updated version with some clarifications:

Docker is transitioning all of its open source collaborations to the Moby project going forward. During the transition, all open source activity should continue as usual.

IMPORTANT NOTE: if you are a Docker user, this does not change anything. Docker CE continues to exist as a downstream open-source product, with exactly the same interface, packages and release cycle. This change is about the upstream development of the components of Docker, and making that process more open and modular. Moby is not a replacement for Docker: it's a framework to help system engineers build platforms like Docker out of many components. We use Moby to build Docker, but you can use it to build specialized systems other than Docker.

You can learn more at http://mobyproject.org

We are proposing the following list of changes:

- splitting up the engine into more open components - removing the docker UI, SDK etc to keep them in the Docker org - clarifying that the project is not limited to the engine, but to the assembly of all the individual components of the Docker platform - open-source new tools & components which we currently use to assemble the Docker product, but could benefit the community - defining an open, community-centric governance inspired by the Fedora project (a very successful example of balancing the needs of the community with the constraints of the primary corporate sponsor)

>>>

EDIT: I'm happy to answer any follow-up questions here, if it helps clarify.

Re: A new upstream project to break up Docker into independent components

#76

Earlier quoted context omitted.

> Leave it to the prudes to shoot the messenger... ;) Or maybe just because it is off-topic?

The phrasing (as of when I write this comment, still within OP's edit window) can use work, but how's it off-topic? This article is about a name change and nothing but a name change. But OP is Dutch - nobody, even from the general gay community (not specifically Holland), replied saying it's the first thing they thought of. OP, you really made it sound like it's something as well-known as the word wanker - whereas it…

I'm not Dutch, and it's definitely not just a Dutch thing. And it's the first definition on urbandictionary, so it's not that obscure.

But speaking of which, the Dutch gay community was also quite enamoured with the name of the photo sharing site "Flickr", i.e. https://nl.wikipedia.org/wiki/Flikker

How was my phrasing inappropriate? I never said they should change the name -- just the opposite! At least it's not a demeaning insult, like gimp, git or mongo.

Is there an html markup for non-sarcasm I should use, like the opposite of ? Or if I just nest two tags do they cancel out?

Pro tip: always check urbandictionary before naming a project.

Re: A new upstream project to break up Docker into independent components

#77
What is it with tech companies and fucking terrible name/branding analogies?

Docker. Ok, works with containers I get... wait. Your logo is a WHALE with a bunch of shipping containers on it. You know that whales DISAPPEAR underwater for hours at a time, and shipping containers are NOT MEANT TO DO THAT?

Ok ok maybe it was an honest mistake hey whats this new thing moby.. wait. Whales. Moby. Moby dick? Your project is named after a mythical white whale that sank boats, the very thing that actually carry CONTAINERS.

Having said all that, based on this [1] summary of Docker's usefulness in production from February, maybe both names are absolutely on-point for the reality of this abysmal 'product'.

1. https://thehftguy.com/2017/02/23/docker-in-production-an-upd...

Re: A new upstream project to break up Docker into independent components

#78
post #4
post #2

Why change the name? All the books and posts reference the name Docker.

It looks like they want to rename the OSS version, to differentiate it from their commercial version. They're using the analogy of Fedora->RHEL. Moby = open source development Docker CE = free product release based on Moby Docker EE = commercial product release based on Docker CE.

What exactly is the difference between Moby and Docker CE?

Re: A new upstream project to break up Docker into independent components

#79
post #46

This is a bait and switch of whale proportions. Docker used to be the open source part. Now that's being moved out of the way so when you search for Docker you get the paid offerings. The goal is to confuse the people who haven't been following this into thinking Docker is a thing you pay Docker (the company) for. It's brilliant.

> The goal is to confuse the people who haven't been following this into thinking Docker is a thing you pay Docker (the company) for Following the first thing they google without actually understanding what's involved, all the way to handing over money sounds about what I expect from someone who thinks Docker is a viable platform to use for anything worth handing over money for.

That's not quite how it works.

- Decision maker googles and finds there's this Docker company that will solve their problems. Heard good buzz about Docker in the news, how open it is, and how many companies use it.

- Decision maker to engineer: "Hey can we use Docker software to solve problem X"

- Engineer: "Sure, the software is actually called Moby now though"

- Decision maker: "Meh, I don't care what it's called, I just want problem X solved. Docker solves it?"

- Engineer: "Yeah I guess"

- Decision maker: "Ok here's your budget. Pay Docker to solve problem X."

- Engineer: "Alright"

Re: A new upstream project to break up Docker into independent components

#80
post #20

From comment by @stykes on the pull request: Moby = open source development Docker CE = free product release based on Moby Docker EE = commercial product release based on Docker CE. Nothing is dead; and everything that was open-source remains open-source. In fact we are open-sourcing new things.

So it's like Chromium, Google Chrome, and then imagine an enterprise version of Google Chrome?
Post reply on HN