五月22,2019

在Twitter上,我看到了以下问题(通过):

#go中有很多关于泛型的话题,难道我们没有像OpenGo这样的社区可以在其中实现泛型的东西,而是等待正式的#go泛型发生吗?像OpenJDK这样的东西

有很多答案说明为什么这种情况不会发生,但是通常不会大声说出来的是Go是Google的语言,而不是社区的语言

是的,有一个社区为Go贡献了力量,其中一些重要而有价值的事物。您只需要查看CONTRIBUTORS中人员的多样性 或查看提交中出现的人员的多样性即可。但是Google是这些社区贡献的守门人。它独自决定了Go接受和不接受的内容。在某种程度上,甚至还有一个社区程序来决定接受什么,房间里有一只800磅的大猩猩。Google不会反对进入Go的任何内容,如果Google决定Go中需要包含某些内容,那将会发生。

(最清楚,最明显的说明是Go模块发生了什么,其中Google的Go核心团队的一名成员抛弃了外部Go社区一直在努力的整个系统,而采用了一种截然不同的模型。例如 ,参见一个版本历史)。

简而言之,Go有社区贡献,但它不是社区项目。这是Google的项目。无论您认为它是好是坏,这都是不争的事实,它具有我们需要接受的影响。例如,如果您希望Go接受一些重要的东西,那么在社区中建立共识就比说服Go核心团队重要得多。

(作为一个必然结果,将大量时间和精力投入到没有Go核心团队热情投入的社区工作中可能会浪费时间;最多,您的工作可能会帮助Go核心团队了解问题更好。再次,请参阅实际使用的Go模块。)

总的来说,非常明显的是,社区的声音对Go的发展并不重要,而我们这些与Go一起在Google隔离墙之外工作的人只能忍受这一点。如果我们很幸运的话,我们的工作重点与Google的工作相吻合;如果我们有足够的幸运,那么Go核心团队和Google会决定他们对我们的工作重点足够在意。好消息是,Google和Go核心团队(到目前为止)确实关心Go在外部世界取得成功,而不仅仅是在Google内部,因此他们愿意为痛点而努力。

(无论好坏,通常都有一个感觉,那就是Go拥有一支优秀的核心团队,具有良好的品味和对语言的一致见解,表现出色,这支团队不受外界声音的影响,动作缓慢且有偏见而不进行更改。)

PS:我喜欢Go,现在有了一个公平的市场,我基本上对语言的发展以及Go核心团队如何管理它持肯定态度。我当然认为最好慢慢地使用泛型之类的东西。但是与此同时,围绕Go模块开发的事物如何使我产生不良印象,现在我无法想象自己成为Go贡献者,即使是很小的变化(换句话说,我对知道我将永远成为二等公民)。我将提交错误报告,仅此而已。整个情况使我感到模棱两可,所以我通常会完全忽略它。

(而且Go团队声称他们真的很关心社区,并希望他们现在参与其中,这听起来很可笑。我敢肯定,他们在乎,但只是到了一定程度。我认为Go核心团队应该直率诚实了解情况,而不是假装并暗中引导人们前进。)

补充工具栏:Google和Go核心团队

您可能会问Go是Google的语言还是Go核心团队的语言,因为Go的方向是由该小型核心团队设置和控制的。但是,目前,我相信大部分或全部活跃的Go核心团队都由Google聘用,实际上不可能(至少从Google外部)确定这一区别。在实践中,如果Go核心团队成员开始离开Goog​​le并尝试保持积极性来确定Go的方向,我们将只有机会找出Go的真正归属。如果这行得通,特别是如果其中大多数不再为Google服务,那么Go可能就是他们的语言,而不是Google的语言,就像Python一直是Guido van Rossum的语言一样,无论当时他是谁工作的。

从实际的角度来看,不可否认的是,目前Google提供了许多支持Go的基础架构和资源,例如golang.org,因此拥有域名等。根据其商标列表,Google还将'Go'商标作为一种编程语言持有。


在此页面上的评论:

通过丹尼斯在2019-05-22 06:01:26:

Dep被丢弃是有原因的:它无法解决稳定的构建问题

伯恩德在2019-05-22 10:28:29:

Java也是如此。不能针对Sun / Oracle向Java添加任何内容。

弗雷德·弗诺德( Fred Fnord)在2019-05-22 16:32:48:

Go显然是Google的语言,随着它变得越来越流行,他们将开始以与使用其他所有产品相同的方式来使用它:作为增加其市场主导地位的工具。

这与他们使用Chrome引擎相同,只是他们从社区创建的网站开始(Webkit),并在该引擎上建立了足够的知名度,以至于当他们分叉并开始使其与标准有所不同时,他们会Web开发人员遵循的一种。(因此,如今所有网站都只能在Chrome上正常运行,即使它们的引擎是基于Safari所基于的那个引擎也是如此。)当然,它们的修复程序很少返回到社区拥有的分支机构。当他们使用它时,他们现在都没有做。

如果这还不够好,请考虑一下Android的“开源”性质。以及每个发行版中开放源代码Android的数量如何减少。以及他们如何进行Android的所有开发,然后不为此付费,而只是为了将其武器化以对抗竞争对手。(如果Google被迫向手机制造商实际收取Android值得的价格,我们将在移动OS领域至少拥有另外两个稳固的竞争对手,其中一个可能是一家面向开源开源隐私保护的公司。就是说,您只需购买iPhone并相信苹果的保证,因为Google甚至都不会假装它们重视您的隐私。)

Google拥有的任何产品最终都会对除Google以外的所有人使用。Google发现无法利用其竞争者或消费者牟利的任何产品,将被停产。有时,这种终止实际上是对他们的竞争对手的一种攻击:Google的航班搜索界面相当不错。他们有很多公司在使用它,并积极宣传更多信息。然后,在一两年后,他们宣布Google Flights作为许多这类公司的竞争对手,便突然停产了。它驱使许多公司破产。当然,谷歌知道谷歌航班已经提前了好几年了。但是他们积极出售了航班信息工具,因此,当他们推出自己的产品时,可能会产生巨大的新竞争对手的双重打击,并突然停止重要数据。破坏竞争的好方法。根据管理垂直整合的反托拉斯法,可能非法,也可能不会非法,但可能并非如此。但这仍然是一个真正的混蛋举动。

我再也不会相信Google。从字面上看,没有其他公司,包括微软在内,对该行业抱有更糟糕的信念。只要Google拥有Swift,我就会比Go更早地采用Swift进行后端编程。

这将是永远的,因为如上所述,Google不仅让他们的项目免费漫游。他们要么将其武器化,要么将其关闭。或者,偶尔,两者兼而有之。

通过比尔在2019-05-23 13:28:32:

罗伯·派克(Rob Pike)说,这里的语言已经完成https://youtu.be/cQ7STILAS0M 语言已被锁定。甚至考虑泛型的唯一原因是因为社区。

如果您不喜欢它,可以像这个家伙一样叉它,并用别的名字来称呼它。

https://github.com/tinygo-org/tinygo

我不希望它像npm那样成为开放式贡献的基础。那我会讨厌的。

特别是在听过道格拉斯·克劳福德(Douglas Crawford)的演讲后,他开始了对不良零件的描述。 https://youtu.be/99Zacm7SsWQ

另外,php,JavaScript,c#ect等新功能现在只是较少的功能而已。我不知道人们在说些什么?

而且我不希望罗伯·派克(Rob Pike)很快会吸引吉多(Guido van Rossum)。原因...完成了。

由亚历克斯在2019-05-23 18:09:24:

我个人不在乎谁拥有Go tbh。他们的心态让我非常困扰。如果您今天能用该语言取得成就,那么我们就不需要改进它,因为Rob会不喜欢它。他说语言“被锁定”,仅此而已!不必编写10000行丑陋的冗长代码即可实现它!我们不会改善它。错误处理,lambda,泛型和列表继续存在。

通过Pressimist在2019-05-24 03:42:03:

由Google支付薪水的人为了Goolge的利益而工作。那到处都是一样的。但是任何人都可以创造一个叉子并改变他想要的东西。但是您不能强迫任何人喜欢您自己的建议。

有人真的认为Google会付钱给人们实施违背Google利益的事情吗?

通过伊恩·兰斯·泰勒在2019-05-24 10:52:54:

在https://groups.google.com/d/msg/golang-nuts/6dKNSN0M_kg/rfb9qxB2BAAJ上的golang-nuts邮件列表中对此博客文章进行了一些讨论。

由Kevin Jame在2019-05-25 05:11:49:

听起来类似于clojure的“社区”。

通过袋鼠在2019-06-19 05:06:12:

欢迎加入Val的语言项目Http://wiki.gnome.com/project/Val的

从119.123.207.51在2019-06-19 05:10:27:

欢迎加入Vala语言项目Http://wiki.gnome.com/project/vala

英文原文:https://utcc.utoronto.ca/~cks/space/blog/programming/GoIsGooglesLanguage?showcomments#comments

Go是Google的语言,而不是我们的语言相关推荐

  1. 做嵌入式编程,为什么用的是C语言而不是C++呢?

    1.前言 几十年来,嵌入式软件工程师们一直在争论是否应该使用C++替代C语言进行开发工作.根据2019年IEEE和github的市场调查显示,微控制器制造商提供的软件大部分都是由C语言编写. 事实上, ...

  2. python程序设计语言是什么类型的语言-Python 是弱类型的语言 强类型和弱类型的语言区别...

    Python 是弱类型的语言 在强类型的编程语言中,定义变量时要指明变量的类型,而且赋值的数据也必须是相同类型的,C语言.C++.Java 是强类型语言的代表. 下面我们以 C++ 为例来演示强类型语 ...

  3. python动态语言双刃性_动态语言的灵活性是把双刃剑:以 Python 语言为例

    原标题:动态语言的灵活性是把双刃剑:以 Python 语言为例 本文有些零碎,总题来说,包括两个问题:(1)可变对象(最常见的是list dict)被意外修改的问题,(2)对参数(parameter) ...

  4. python语言发明者 google_谷歌的语言何以战胜Python?50%的人都应该立即学习Golang...

    全文共2623字,预计学习时长9分钟 图源:dailybtc 很多软件工程师视Python为最喜爱的语言之一,工作生活都和它死死绑定在一起.但Google, Uber, Dropbox, Soundc ...

  5. 漫谈C语言及如何学习C语言(转)

    云风最近写了一篇博客<C语言的前世今生>.作为长期使用C语言开发网络游戏服务器的程序员,云风是有理由写这样一篇文字,不过还是感觉谈的不够深入,C语言在业界使用的现状没有怎么描写,有些意犹未 ...

  6. GO语言-第一节-初识Go语言

    目录 1.1 语言简史 1.2 语言特性 1.2.1 自动垃圾回收 1.2.2 更丰富的内置类型 1.2.3 函数多返回值 1.2.4 错误处理 1.2.5 匿名函数和闭包 1.2.7 并发编程 1. ...

  7. 漫谈C语言及如何学习C语言

    漫谈C语言及如何学习C语言 云风最近写了一篇博客<C语言的前世今生>.作为长期使用C语言开发网络游戏服务器的程序员,云风是有理由写这样一篇文字,不过还是感觉谈的不够深入,C语言在业界使用的 ...

  8. 漫谈C语言及如何学习C语言--http://my.oschina.net/apeng/blog/137911

    目录:[ - ] 为什么要学习C语言? C语言学习方法 1,参考书籍 2,动手实验环境搭建 3,网络资源 附录 一些有用的C语言网络资源: 一些值得关注及研究的C语言相关项目: 一些C语言编程时可以使 ...

  9. 自学golang【第一章:go语言基础知识】为什么要学习go语言?go语言与c语言的关系?go语言创始人?go语言的特性有哪些?go语言适合做什么?国内外有哪些企业或项目使用go语言?

    事先声明:本文部分内容参考了尹成的笔记,如果侵权请联系删除. 我是一名自学go语言的初学者,从今天开始我将会坚持更新go语言的相关知识,从入门到精通,如果大家有什么需要可以加我QQ:239479969 ...

最新文章

  1. 别把机器学习和人工智能搞混了!
  2. 如何补救数据中心电缆
  3. linux系统子目录至少,Linux复习题(附答案)
  4. Switchover and Failover说明
  5. LeetCode MySQL 185. 部门工资前三高的所有员工(dense_rank)
  6. Python wxpy通过ModBus控制电脑鼠标和键盘
  7. 从TensorFlow到PyTorch:九大深度学习框架哪款最适合你?
  8. ubuntu vmplayer安装vmtool
  9. C++面向对象课程设计实例-图书馆借阅系统
  10. HTTP协议和SOCKS5协议
  11. windows10 LTSC转换成pro
  12. 杨诚 湖南科技职业技术学院计算机,2013年全国职业院校技能大赛高职组获奖名单...
  13. 今日新闻简报 精选简报12条 2月1日
  14. 身份证号判断男女和生日
  15. python采用requests+bs4爬取Gary个人博客学习页面并用mysql存储(https://www.gary666.com/learn)
  16. Problem A. Snapper Chain 问题A.按扣链条 解决办法
  17. 翻转课堂学习总结集—2015级
  18. RK3368 Edp屏调试,利用EDID做兼容
  19. 【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
  20. processing创意图形代码_Processing练习-Self Sketch - TAI CHI

热门文章

  1. stata里php代码,stata字符型数据如何转数值型
  2. js-xlsx导入数据
  3. Java面试题-LuceneSolrElasticSearch
  4. 手撕promise.all以及promise.race
  5. 优维科技携EASYOPS3.0亮相GOPS深圳站
  6. 深度解析dubbo源码系列
  7. (灵魂拷问)MySQL数据库高频面试题,助你脱颖而出
  8. bootstrap 图片上传框架
  9. Flink State 深度讲解
  10. 前端必会的 HTML+CSS 常用技巧 之 虚线的实现方式