{"id":1935,"date":"2014-12-04T15:27:31","date_gmt":"2014-12-04T21:27:31","guid":{"rendered":"http:\/\/redmonk.com\/dberkholz\/?p=1935"},"modified":"2014-12-05T21:31:25","modified_gmt":"2014-12-06T03:31:25","slug":"docker-rocket-and-bulls-in-a-china-shop","status":"publish","type":"post","link":"https:\/\/redmonk.com\/dberkholz\/2014\/12\/04\/docker-rocket-and-bulls-in-a-china-shop\/","title":{"rendered":"Docker, Rocket, and bulls in a china shop"},"content":{"rendered":"<p>Quick backstory: Docker&#8217;s an incredibly popular container technology, and CoreOS built a cloud-native Linux distro around it.<\/p>\n<p>CoreOS just announced a competing alternative to Docker called <a href=\"https:\/\/coreos.com\/blog\/rocket\/\">Rocket<\/a>.\u00a0Docker&#8217;s <a href=\"https:\/\/web.archive.org\/web\/20141201195306\/https:\/\/blog.docker.com\/2014\/12\/initial-thoughts-on-the-rocket-announcement\/\">official response<\/a> to the Rocket announcement was very telling, and surprising. It came less than 2 hours after the announcement went up, and it was packed with typos, defensiveness, and aggression.<\/p>\n<p>The basic structure and meaning of the response, in my own words, is:<\/p>\n<ul>\n<li>Docker has an enormous community \u2014 we own all the mindshare, implying that we&#8217;re clearly right.<\/li>\n<li>We&#8217;re moving up the stack. Since we own the mindshare, this is the right thing to do by virtue of us doing it.<\/li>\n<li>We love open source, we swear, although we&#8217;re definitely in the right because the majority of people are with us.<\/li>\n<li>There&#8217;s some minuscule group of people (all vendors, apparently) who disagree with our moves. They must be wrong because we&#8217;re taking efforts to point out that they&#8217;re vendors and not users. (ad hominem, anyone?)<\/li>\n<li>We&#8217;re going to imply that the reason Rocket exists isn&#8217;t technical or philosophical, by presenting that option as the final corner case (&#8220;of course&#8221;). Aim being to convince developers that Rocket is just some <a href=\"http:\/\/en.wikipedia.org\/wiki\/Not_invented_here\">NIH<\/a> thing that exists for no reason devs should care about.<\/li>\n<li>In bold, at the very end, such as to be the take-home point of the whole post, is a line about &#8220;questionable rhetoric and timing&#8221;, followed by another implication that Docker Inc knows what&#8217;s best since it has this huge ecosystem.<\/li>\n<\/ul>\n<p>It&#8217;s particularly easy to see when you compare the <a href=\"https:\/\/web.archive.org\/web\/20141201195306\/https:\/\/blog.docker.com\/2014\/12\/initial-thoughts-on-the-rocket-announcement\/\">initial post<\/a> to the current, <a href=\"https:\/\/blog.docker.com\/2014\/12\/initial-thoughts-on-the-rocket-announcement\/\">updated version<\/a>:<\/p>\n<p><a href=\"http:\/\/dberkholz-media.redmonk.com\/dberkholz\/files\/2014\/12\/screenshot_from_2014-12-02_00_16_58.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1934\" data-permalink=\"https:\/\/redmonk.com\/dberkholz\/?attachment_id=1934\" data-orig-file=\"https:\/\/redmonk.com\/dberkholz\/files\/2014\/12\/screenshot_from_2014-12-02_00_16_58.png\" data-orig-size=\"516,1825\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Docker Rocket response\" data-image-description=\"\" data-medium-file=\"https:\/\/redmonk.com\/dberkholz\/files\/2014\/12\/screenshot_from_2014-12-02_00_16_58-84x300.png\" data-large-file=\"https:\/\/redmonk.com\/dberkholz\/files\/2014\/12\/screenshot_from_2014-12-02_00_16_58-289x1024.png\" class=\"aligncenter wp-image-1934\" src=\"http:\/\/dberkholz-media.redmonk.com\/dberkholz\/files\/2014\/12\/screenshot_from_2014-12-02_00_16_58.png\" alt=\"Docker Rocket response\" width=\"150\" height=\"531\" \/><\/a><\/p>\n<p>What are the key differences?<\/p>\n<ul>\n<li>A host of typos disappear. Their presence indicates this was rushed out the door very quickly. Why might that happen?<\/li>\n<li>Emphasizing their commitment to the ecosystem, rather than solely the ecosystem&#8217;s commitment to them;<\/li>\n<li>Clearly noting that Rocket&#8217;s <em>raison d&#8217;\u00eatre<\/em>\u00a0appears to be true technical or philosophical differences; and<\/li>\n<li>Removing the bolding on the final paragraph, although the wording remains.<\/li>\n<\/ul>\n<p>I&#8217;d interpret that\u00a0as Docker&#8217;s leadership initially having a panicked knee-jerk reaction. Couple their post with Docker cofounder and CTO Solomon Hykes&#8217; behavior on <a href=\"https:\/\/twitter.com\/solomonstre\">Twitter<\/a> and on the <a href=\"https:\/\/news.ycombinator.com\/item?id=8682525\">Hacker News thread<\/a> on the\u00a0Rocket announcement\u00a0(<a href=\"https:\/\/twitter.com\/solomonstre\/status\/539892571494154240\">1<\/a>, <a href=\"https:\/\/twitter.com\/solomonstre\/status\/539551433276674048\">2<\/a>, <a href=\"https:\/\/news.ycombinator.com\/item?id=8683705\">3<\/a>, <a href=\"https:\/\/news.ycombinator.com\/item?id=8683986\">4<\/a>, <a href=\"https:\/\/news.ycombinator.com\/item?id=8684119\">5<\/a>), and you&#8217;ve got yourself a recipe for disaster.<\/p>\n<p>My experiences with abusive behavior in Gentoo have led me to <a href=\"http:\/\/www.slideshare.net\/dberkholz\/assholes-are-killing-your-project\">speak<\/a> for years on the data and social-sciences research behind negative community interactions. <strong>One universally critical point is that you separate technical criticisms from emotional attacks, and Docker has failed to do so in this case.<\/strong> The Rocket announcement has some harsh words, no doubt about it. <strong>But taking them personally and then replying emotionally is exactly the wrong thing to do.<\/strong><\/p>\n<p>Responses from the community have largely been negative to Docker&#8217;s behavior throughout this process, with some exceptions:<\/p>\n<blockquote class=\"twitter-tweet\" lang=\"en\" data-conversation=\"none\"><p><a href=\"https:\/\/twitter.com\/dberkholz\">@dberkholz<\/a> the <a href=\"https:\/\/twitter.com\/newsycombinator\">@newsycombinator<\/a> thread was just a total PR disaster for <a href=\"https:\/\/twitter.com\/docker\">@docker<\/a>.I was appalled at their reaction &amp; how unprofessional it was<\/p>\n<p>\u2014 Lance Albertson (@ramereth) <a href=\"https:\/\/twitter.com\/ramereth\/status\/539679440729419778\">December 2, 2014<\/a><\/p><\/blockquote>\n<blockquote class=\"twitter-tweet\" lang=\"en\"><p>docker&#8217;s response feels overly defensive and passive aggressive that it doesn&#8217;t even link to the Rocket post <a href=\"http:\/\/t.co\/T3lm3gnKZJ\">http:\/\/t.co\/T3lm3gnKZJ<\/a><\/p>\n<p>\u2014 Tatsuhiko Miyagawa (@miyagawa) <a href=\"https:\/\/twitter.com\/miyagawa\/status\/539609228969656321\">December 2, 2014<\/a><\/p><\/blockquote>\n<blockquote class=\"twitter-tweet\" lang=\"en\"><p><a href=\"https:\/\/twitter.com\/solomonstre\">@solomonstre<\/a> Your defensiveness &amp; snark on HN made it sound like you think it&#8217;s a *very* dirty word.<\/p>\n<p>\u2014 Jason Ives (@jivebot) <a href=\"https:\/\/twitter.com\/jivebot\/status\/539550359195484161\">December 1, 2014<\/a><\/p><\/blockquote>\n<blockquote class=\"twitter-tweet\" lang=\"en\"><p>Response from <a href=\"https:\/\/twitter.com\/docker\">@docker<\/a> on the Rocket announcement. Interesting that they saw the need to comment so quickly <a href=\"http:\/\/t.co\/apiTJ5jpOm\">http:\/\/t.co\/apiTJ5jpOm<\/a><\/p>\n<p>\u2014 Richard Seroter (@rseroter) <a href=\"https:\/\/twitter.com\/rseroter\/status\/539538299602628608\">December 1, 2014<\/a><\/p><\/blockquote>\n<blockquote class=\"twitter-tweet\" lang=\"en\"><p>Docker&#8217;s response to CoreOS reads like an awkward first draft. Poor formatting, typos, and bad grammar. <a href=\"http:\/\/t.co\/xCHZAJq5Z9\">http:\/\/t.co\/xCHZAJq5Z9<\/a><\/p>\n<p>\u2014 Michael Schurter (@schmichael) <a href=\"https:\/\/twitter.com\/schmichael\/status\/539518024043077632\">December 1, 2014<\/a><\/p><\/blockquote>\n<blockquote class=\"twitter-tweet\" lang=\"en\"><p>I&#8217;m going to say exactly one thing. Nothing will shake people&#8217;s confidence in Docker more than Docker&#8217;s response to Rocket.<\/p>\n<p>\u2014 dad reid (@dreid) <a href=\"https:\/\/twitter.com\/dreid\/status\/539508979534008321\">December 1, 2014<\/a><\/p><\/blockquote>\n<blockquote class=\"twitter-tweet\" lang=\"en\"><p><a href=\"https:\/\/twitter.com\/dberkholz\">@dberkholz<\/a> it&#8217;s never panic when there are 2 second points. And the emphasis on the last paragraph was anti panic<\/p>\n<p>\u2014 David Pollak (@dpp) <a href=\"https:\/\/twitter.com\/dpp\/status\/539516173843316737\">December 1, 2014<\/a><\/p><\/blockquote>\n<blockquote class=\"twitter-tweet\" lang=\"en\"><p>My initial take is that <a href=\"https:\/\/twitter.com\/docker\">@docker<\/a> becoming more a platform and less of a primitive is pretty scary for <a href=\"https:\/\/twitter.com\/coreoslinux\">@coreoslinux<\/a> and this is the response.<\/p>\n<p>\u2014 Mark Imbriaco (@markimbriaco) <a href=\"https:\/\/twitter.com\/markimbriaco\/status\/539484974970576896\">December 1, 2014<\/a><\/p><\/blockquote>\n<p><script src=\"\/\/platform.twitter.com\/widgets.js\" async=\"\" charset=\"utf-8\"><\/script><\/p>\n<blockquote><p><span style=\"color: #000000;\">This comes off as overly defensive and entitled, like &#8220;we brought you containers and you stab us in the back!?&#8221;<\/span><\/p>\n<p><span style=\"color: #000000;\">I don&#8217;t see why they need to view this as an opportunity to fight back and criticize another app container system, rather than enthusiasm about the continued spread of containers and expressing a desire to cooperate on building open, interoperable standards.<\/span><\/p>\n<p>\u2014 themgt, <a href=\"https:\/\/news.ycombinator.com\/item?id=8683407\">December 1, 2014<\/a><\/p><\/blockquote>\n<p>In longer-form writeups, Daniel Compton had particularly insightful <a href=\"http:\/\/danielcompton.net\/2014\/12\/02\/modular-integrated-docker-coreos\">thoughts<\/a>\u00a0on the competitive landscape and moves among\u00a0Docker Inc, CoreOS, Amazon, and Google that nicely complement my colleague Steve&#8217;s recent writeup on <a href=\"http:\/\/redmonk.com\/sogrady\/2014\/12\/01\/the-scale-imperative\/\">scale and integration<\/a>.\u00a0Matt Asay also wrote up a useful <a href=\"http:\/\/readwrite.com\/2014\/12\/04\/docker-coreos-how-not-to-manage-open-source\">critique<\/a> of Docker&#8217;s actions.<\/p>\n<p>While Solomon would prefer to focus solely on the technology, unfortunately <strong>&#8220;Field of Dreams&#8221; approaches don&#8217;t work out so well in real life. Things like marketing, community management, and the barrier to entry really do matter.<\/strong> I&#8217;d strongly recommend to Solomon that in the future,\u00a0he should stay out of any controversies\u00a0like this, get himself some media training, and stick solely to technical arguments in public as long as he&#8217;s representing Docker Inc.<\/p>\n<p>But he&#8217;s not alone \u2014 the formal statement from Docker was similarly out of touch\u00a0with reality, in that it was\u00a0very much focused on inside-out emotional reactions rather than the consequences they would have upon their existing and potential community.<\/p>\n<p><span style=\"color: #999999;\"><em><strong>Disclosure<\/strong>:\u00a0CoreOS and Amazon Web Services\u00a0are clients; Docker and Google are not.<\/em><\/span><\/p>\n<div class=\"acc_license\"><a href=\"http:\/\/creativecommons.org\/licenses\/by-sa\/3.0\/\"><img decoding=\"async\" src=\"http:\/\/i.creativecommons.org\/l\/by-sa\/3.0\/88x31.png\" alt=\"by-sa\" \/><\/a><\/div><!--<rdf:RDF xmlns=\"http:\/\/creativecommons.org\/ns#\" xmlns:dc=\"http:\/\/purl.org\/dc\/elements\/1.1\/\" xmlns:rdf=\"http:\/\/www.w3.org\/1999\/02\/22-rdf-syntax-ns#\"><Work rdf:about=\"\"><license rdf:resource=\"http:\/\/creativecommons.org\/licenses\/by-sa\/3.0\/\" \/><\/Work><License rdf:about=\"http:\/\/creativecommons.org\/licenses\/by-sa\/3.0\/\"><requires rdf:resource=\"http:\/\/creativecommons.org\/ns#Attribution\" \/><permits rdf:resource=\"http:\/\/creativecommons.org\/ns#Reproduction\" \/><permits rdf:resource=\"http:\/\/creativecommons.org\/ns#Distribution\" \/><permits rdf:resource=\"http:\/\/creativecommons.org\/ns#DerivativeWorks\" \/><requires rdf:resource=\"http:\/\/creativecommons.org\/ns#ShareAlike\" \/><requires rdf:resource=\"http:\/\/creativecommons.org\/ns#Notice\" \/><\/License><\/rdf:RDF>-->","protected":false},"excerpt":{"rendered":"<p>Quick backstory: Docker&#8217;s an incredibly popular container technology, and CoreOS built a cloud-native Linux distro around it. CoreOS just announced a competing alternative to Docker called Rocket.\u00a0Docker&#8217;s official response to the Rocket announcement was very telling, and surprising. It came less than 2 hours after the announcement went up, and it was packed with typos,<\/p>\n","protected":false},"author":6,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spay_email":"","footnotes":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false},"categories":[6,18,8,42,13],"tags":[],"class_list":["post-1935","post","type-post","status-publish","format-standard","hentry","category-cloud","category-community","category-devops","category-docker","category-open-source"],"jetpack_featured_media_url":"","jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p23Tsn-vd","_links":{"self":[{"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/posts\/1935","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/comments?post=1935"}],"version-history":[{"count":0,"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/posts\/1935\/revisions"}],"wp:attachment":[{"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/media?parent=1935"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/categories?post=1935"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/redmonk.com\/dberkholz\/wp-json\/wp\/v2\/tags?post=1935"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}