How damaging for the Golang community is docker becoming pay-to-use ? Will this become a trend ?

polaris · · 421 次点击    
这是一个分享于 的资源,其中的信息可能已经有所发展或是发生改变。
<p>First of all, I understand that the &#34;old docker&#34; is still alive in the form of moby. However, the &#34;owners&#34; of docker have chosen to use the brand of docker for a closed &#34;EE&#34; product.</p> <p>This is obviously bad because it splits the community. People will fork away from Moby because of the fear of being burnt again. Of their import paths being fucked, of their company being confused as to why the sudden change of tooling happened, of being afraid that your huge infrastructure no longer has support and you have to quickly find or create a popular fork, or hope to good moby keeps getting new maintenance.</p> <p>This seems especially bad since Docker, in itself, is not rocket science. Its not easy to create docker.... but the Jail system, KVM and LXC are all open source, well designed and well documented. Something like Docker is not &#34;good&#34; because of the developers that created it, it could be created by any team of decent programmers over a few months, its not innovative or challenging, its not Linux, its not Unreal, its no a mission-critical real time control software for a mars rover, its just a more advanced chroot... and not the first by a long stretch.</p> <p>What makes Docker so nice is the community, the fact that dozens of thousands of developers, sysadmin, laymen, ops, testers, w/e have gone around and spread the word about it and created packages and written tutorials and tested the hell out of it. </p> <p>The brand that &#34;Docker inc&#34; is planning to milk for money is not of their own making, it was created by the community and its now being taken away even though it will fracture and hurt that community.</p> <p>What is worrying here is that Docker was, even if you might not admit it, one of the &#34;flagship&#34; go projects... even if it was not fully written in Go. They were one of the first guys besides Google that were using golang in applications that were production worn, used by dozens of thousands of people and had proven they worked well. </p> <p>Software going closed-source pay-to-use all of a sudden is exactly the kind of crap that happened in the &#34;Java community&#34; which makes people hate java so much, its not Java they hate, its Java EE and the cloud of proprietary crap that floats around it.</p> <p>I think a lot of the reason people use language like Python and Go is not purely because of the fact that they are some sort of masterpiece, but because of the community and projects around them... and one of the biggest open source projects written in GO going dark does not seem to bring great news... especially since none seems to be taking note and revolting against it.</p> <hr/>**评论:**<br/><br/>tv64738: <pre><blockquote> <p>What is worrying here is that Docker was, even if you might not admit it, one of the &#34;flagship&#34; go projects...</p> </blockquote> <p>It saddens me that some people equate Docker with a &#34;good&#34; Go project. The code has consistently been pretty miserable.</p></pre>jerf: <pre><p>I have no idea why anyone would even remotely consider this when deciding what language to use for some task, nor do I have any idea why you would think this has any impact whatsoever on the license any other project will use. That&#39;s not how anyone picks languages or licenses. I&#39;m not sure why you&#39;d even think this would damage anything. Who do you think is picking Go because they believe it will... force them to use open source licenses irrevocably? I can&#39;t wrap my head around anything you&#39;re laying down here. </p> <p>Docker isn&#39;t that important to Go anymore, if it ever was. Plenty more &#34;real users&#34; now.</p></pre>RalphCorderoy: <pre><p>Docker always came across as a not great product in a good enough place at the right time. There are technically better alternatives and this could weaken Docker&#39;s hold on things enough to allow a bit more light to shine on those alternatives; overall a good thing. From what I&#39;ve heard, Docker have been very reluctant to accept pull requests from other large companies that want to build tools around Docker, but find its problems make this awkward. Speculation is this is because Docker have their own competing future products in mind. I&#39;ve thought for a while that a competitor will gain hearts and minds in time; this provides the break needed.</p></pre>luckyleprechaun98: <pre><p>I think they are realizing that the money is in higher level orchestration frameworks. The container runtime itself is just a commodity. They are probably hoping that by splitting off the engine they can let others work on the low margin tech so they can brand swarm EE and sell that to enterprise. But personally I think kubernetes has a huge lead there and Google is not in as much of a hurry to squeeze money out of it other than trying to get people on GKE. Docker needs to find a cash cow to get a return on all that VC money. </p></pre>snakegums: <pre><p>I agree. Docker doesn&#39;t really seem to solve many problems and introduces several of its own. I suspect this change will do more to encourage competing products to emerge more so than any harm to Go.</p></pre>Irythros: <pre><blockquote> <p>There are technically better alternatives and this could weaken Docker&#39;s hold on things enough to allow a bit more light to shine on those alternatives </p> </blockquote> <p>What alternatives? I&#39;m looking into having auto-deployment images and Docker appears good. I know there is other deployment tools like Ansible, Salt, Chef etc but having an image would be great. I haven&#39;t looked into alternatives to docker yet since its a ways off so not being sarcastic at all.</p></pre>dlsniper: <pre><p>CoreOS&#39;s rkt comes to mind. lxc as well.</p></pre>tmornini: <pre><p>I&#39;m with you, Docker is very slick.</p></pre>snack_case: <pre><p>This was always a possibility so I don&#39;t think it damages Go as a language in any way. No more so than say MySQL EE damaged C/C++&#39;s reputation. The permissive license that allowed Docker to make this kind of move was presumably in place before the community decided to contribute and grow around Docker.</p> <p>If you care about open source software remaining open source then this should serve as a gentle reminder to look at the licence before contributing.</p></pre>PedanticGeorge: <pre><p>To be honest this isn&#39;t as much a license issue as a branding issue I think. </p> <p>If Linus Torvalds suddenly decided &#34;Linux&#34; is their &#34;EE&#34; product and &#34;FuckYou&#34; is their open-source &#34;CE&#34; project.</p> <p>With things like trademarks I think there has to be some degree of trust involved in the whole thing... I mean, its really hard to legally state &#34;This is our trademark, we control it, but we promise not to change the licensing of the products under it in any way shape or form&#34;. Maybe there is a way, but we are getting too much into law at this point and I&#39;m a software developer not a lawyer. </p> <p>And really, if the fore-front of the community is composed of assholes, there&#39;s not much to do about it. Also, in the plethora of open projects written in C/C++ the fact that mysql sold out doesn&#39;t make much of a difference, with golang I&#39;d be hard-press to name even a few projects written (even partially) in the language as popular as docker.</p></pre>cdoxsey: <pre><p>Did docker ever contribute libraries that anyone used in their own code? (Is anyone importing something in <code>github.com/docker/...</code>?)</p> <p>I think this will have no impact whatsoever. There are plenty of other companies out there contributing code written in Go that you can actually use for your own programs. For example:</p> <p>Uber: <a href="https://github.com/uber-go" rel="nofollow">https://github.com/uber-go</a> Facebook: <a href="https://github.com/facebookgo" rel="nofollow">https://github.com/facebookgo</a> Google (of course): <a href="https://github.com/google?utf8=%E2%9C%93&amp;q=&amp;type=&amp;language=go" rel="nofollow">https://github.com/google?utf8=%E2%9C%93&amp;q=&amp;type=&amp;language=go</a> Dropbox: <a href="https://github.com/dropbox/godropbox" rel="nofollow">https://github.com/dropbox/godropbox</a> Shopify: <a href="https://github.com/Shopify" rel="nofollow">https://github.com/Shopify</a> Vividcortex: <a href="https://github.com/VividCortex?utf8=%E2%9C%93&amp;q=&amp;type=&amp;language=go" rel="nofollow">https://github.com/VividCortex?utf8=%E2%9C%93&amp;q=&amp;type=&amp;language=go</a> (I use their stuff all the time)</p> <p>I could keep going... and honestly, most of the most popular packages in Go are written by individuals. The Go ecosystem is quite healthy. These days you can find open-source packages for almost anything.</p></pre>dericofilho: <pre><p><a href="https://news.ycombinator.com/item?id=14157715" rel="nofollow">https://news.ycombinator.com/item?id=14157715</a></p> <blockquote> <p>Hacker News new | threads | comments | show | ask | jobs | submit soroso (115) | logout shykes 5 hours ago | parent | flag | favorite | on: Docker is transitioning to Moby</p> <p>Hi all, Docker founder here. It appears that the explanation in the pull request is not very clear. Sorry about that. We didn&#39;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&#39;t update the PR text to clarify. Here is an updated version with some clarifications: &lt;&lt;&lt; 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&#39;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 <a href="http://mobyproject.org" rel="nofollow">http://mobyproject.org</a> 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 &amp; 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)</p> <blockquote> <blockquote> <blockquote> <p>EDIT: I&#39;m happy to answer any follow-up questions here, if it helps clarify.</p> </blockquote> </blockquote> </blockquote> </blockquote></pre>PedanticGeorge: <pre><p>Let me quote the top question in that thread (Unanswered until this point):</p> <blockquote> <p>Do you know that keeping your users in a constant state of confusion is not the way to convince them that you&#39;re building a stable and secure product? Also, isn&#39;t it kind of ironic that you built your company on OSS and then invited a well known destroyer of OSS onto your main stage? Plus, I want my DockerCon money back. What exactly did you announce besides multi-stage builds at the general sessions that is actually benefiting Docker users? I don&#39;t care about your plumbing and constant rebranding, other than finding it very discouraging, I want to know what you&#39;re actually doing with your product this year. I guess nothing.</p> </blockquote></pre>Sphax: <pre><p>how is this relevant? </p></pre>shovelpost: <pre><blockquote> <p>Software going closed-source pay-to-use all of a sudden is exactly the kind of crap that happened in the &#34;Java community&#34; which makes people hate java so much, its not Java they hate, its Java EE and the cloud of proprietary crap that floats around it. </p> </blockquote> <p>Not only that but Java has this EE mentality aka pay thousands of dollars in training to become certified that you know how to use a certain framework. Then you do not write Java anymore. You write that framework and you need other people that know that framework. And of course in order to use some niche/advanced feature of the framework, your company has to pay. Smells like docker CE/EE already.</p> <p>Go on the other hand has a strong standard library which makes frameworks unnecessary and makes collaboration and maintenance easier. Unfortunately where there&#39;s success and money involved such things will keep happening. You already see frameworks getting &#34;pushed&#34; to the community and now we got the moby dick move.</p> <p>It&#39;s kinda sad to realize but it seems that Go&#39;s &#34;golden era&#34; is slowly coming to an end. It has happened to Java and most other successful languages so it shouldn&#39;t be so surprising. But personally I love Go so much that it hurts to see this happening.</p></pre>Sphax: <pre><p>Why are you conflating Go and Docker ? Go itself is not changing and this move by Docker will have no impact on Go si I&#39;m not sure how you can say Go &#34;golden era&#34; is ending. </p> <p>If anything it&#39;s the reverse </p></pre>shovelpost: <pre><blockquote> <p>Why are you conflating Go and Docker</p> </blockquote> <p>I am not, that&#39;s why I quoted that specific part of PedanticGeorge&#39;s text that talks about Java EE. It&#39;s just that the moby dick move gives the opportunity to open this &#39;meta discussion&#39; if you will.</p> <blockquote> <p>I&#39;m not sure how you can say Go &#34;golden era&#34; is ending If anything it&#39;s the reverse</p> </blockquote> <p>I suppose the term &#34;golden era&#34; is relative. For me seeing Go slowly following the footsteps of Java in terms of community and tooling is a nightmare because that&#39;s exactly what I am trying to escape from. But for others maybe that&#39;s exactly what they want. People want different things. Go figure. ¯\_(ツ)_/¯</p></pre>Healer_of_arms: <pre><p>¯\_(ツ)_/¯</p></pre>shovelpost: <pre><p>Thanks that one indeed looks better. :D</p></pre>Sphax: <pre><blockquote> <p>It&#39;s just that the moby dick move gives the opportunity to open this &#39;meta discussion&#39; if you will.</p> </blockquote> <p>Fair enough.</p> <blockquote> <p>For me seeing Go slowly following the footsteps of Java in terms of community and tooling is a nightmare because that&#39;s exactly what I am trying to escape from</p> </blockquote> <p>Well I don&#39;t want to have a J2EE equivalent for Go either, but I don&#39;t see that happening. It&#39;s really not the same situation, no Docker <em>user</em> should or will care because docker will stay the same, you still have the same CE version (which apparently stays open source too). Docker having a EE version is not the same as if we had some sort of Go EE.</p></pre>shovelpost: <pre><blockquote> <p>Docker having a EE version is not the same as if we had some sort of Go EE.</p> </blockquote> <p>True.</p> <blockquote> <p>Well I don&#39;t want to have a J2EE equivalent for Go either, but I don&#39;t see that happening.</p> </blockquote> <p>J2EE is more than just tooling. It is also a school of thought, and attitude from the community. Those things do not happen overnight obviously but you can already see some signs. It is a combination of many things happening at the same time right now in the Go community. But let&#39;s not get into specifics because this will end up becoming doom-talk.</p> <p>The Go veterans should focus on preserving Go&#39;s school of programming and prevent any of the above from happening. That&#39;s the important part.</p></pre>

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

421 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传