当敲下人生中的第一行代码,每一个程序员的梦想被点燃,他们希望用双手写出的“Hello, World”改变世界。
学习物理专业的许式伟是追寻代码力量的狂热派,用他自己的话说,“它能让你感觉在创造一个世界!”从金山实验室到盛大创新院,再到创立七牛云,许式伟“折腾”了包含Java、Erlang、C++、Go在内的不下4、5门编程语言,为的是追寻代码的力量和更高阶的文明密码。
如今,他将自己的“终极”选择给了Go+,这也让许式伟在七牛云CEO的身份之外有了新角色——Go+语言发明人。
Go+商用,重任在肩
日前,在上海召开的Go+1.0发布会暨Go+开发者基金会启动仪式上,许式伟与Go+语言贡献者共同发布了Go+1.0版本,这意味着Go+正式进入商用阶段。
毫无疑问,这对全体开发者而言是一个大事件,许式伟与他的伙伴及Go+语言爱好者们做了一件艰难的事,但却意义深远重大。一年前的Go+首发仪式上,许式伟说,“Go+是一个聪明人不愿意走的路,但我看到了未来和其独一无二的价值,需要用‘坐十年冷板凳’的态度去探索及维护Go+。”
那么,这个价值到底是什么?很明显,短期看来它一定不是商业价值。许式伟有一个更远大的目标:为中国培养更多的工程师人才。
十几年来,中国互联网飞速发展并开始超越,在此过程中,似乎有一个愿望藏在每一位程序员的心底,既然要改变世界,为什么不用属于自己的编程语言?历史告诉我们,国内推出的编程语言不止一个,但并没有被广泛应用,逐渐淡出视野。究其原因,或不适用、或门槛高、或功能弱、或性能不强等等。
那么Go+是否又能担当重任?
Go+“三位一体”,构建工程师与数据科学家人才培养体系
许式伟用Go+的“三位一体”给出了肯定答案。
“我们让工程师与学校的学生用相同的语言来对话,从而实现产学研一体化,完成工程师培养体系的构建。我们让工程师和数据科学家用相同的语言来对话,从而完成数据科学家培养体系的构建。”
“for engineering,for STEM education,for data science”是Go+的三位一体,即让工程与STEM教育融合,让工程师与数据科学融合,前者解决工程师培养的体系,后者解决数据科学家的培养体系。
展开来说:
一方面,Go+最大化地降低了学习和使用门槛,这是Go+区别于其他编程语言最大的地方之一,许式伟称其为“连儿童也能掌握的语言”。无疑,这将为Go+带来最庞大的用户基础,如果一门工程语言简单到可以让七八岁的小孩可以掌握,那么自然会使得教学语言就等于工程语言。这意味着工程与STEM教育的一体化将为工程师培养体系带来革新,而不再是面临学与用的鸿沟。那么,Go+又是如何做到这一点的?其一,对于初学者,Go+隐蔽了工程的复杂性,其二,它使用了更加接近自然语言的表达,从而做到所有人都用得起的编程语言。
另一方面,随着数据时代的到来,数据科学被广泛应用,一些新兴的独角兽公司也因数据科学应用的成功而成功。但数据科学家的数量相对较少,其与程序员之间是相对割裂的,关键原因在于语言的不同,想想SAS、MATLAB等数学软件或者R、Julia等数据科学家专用的语言便可以理解。在此方面,Go+统一了程序员和数据科学家的语言,让他们之间有共同话语,让双方能自然对话,进而完成数据科学家培养体系的构建,让数据工程师从Go+语言中轻松孕育而来。
Go+站在巨人的肩膀上,加速普及与应用
当然,说到Go+,必然不得不说Go。Go语言源于Google,含着金钥匙出生,于2009年正式推出。许式伟是Go语言在国内的坚定布道者,无论是撰写国内第一本Go语言图书《Go语言编程》,还是参与翻译《Go语言程序设计》,他对国内开发者全面了解Go语言有着重要影响。
并且在Go语言诞生之初,许式伟就推动将其率先大面积应用在七牛云的产品中,足以看出他对Go语言的情有独钟。回过头来看,开发效率和系统稳定性等客观数据,证明了七牛选择Go语言的正确性。
如今,Go语言已经成为云计算基础设施的主流语言选择,催生出docker、kubernetes等杀手级应用,并被众多互联网公司所采用,在编程语言排行榜上亦是榜上有名。
那么,我们不禁要问,为什么还需要Go+?
Go+在工程能力上继承了Go,但它并不是Go,Go+是Go语言的“升级版”,是Go的超集,它兼容Go,扩展Go,支持生成Go代码,方便Go语言编译代码,并与其他Go项目集成,让代码变得更加简洁透明和高效。正如上文所言,在工程能力之外,Go+面向数据科学领域和教学领域做出了更多革新和探索。
作为Go+语言贡献者代表,秒熊英语CTO陈东坡用“以Python之形结合Go之心”形容Go+的特点,融合工程开发的Go、数据科学的Python和教学领域的Scratch,让程序员与数据科学家沟通无碍,使初学者更易入门。
在Go语法特性的基础上,加最小的功能;在引擎能力和设计上兼容Scratch,并在此基础上实现自动化代码转换;在Python基础上直接import Python的包,去解决Go+在数据科学领域生态薄弱的问题。这也是许式伟眼中Go+的流行密码,兼容并蓄,继承多重社区生态。进而实现Go+的目标,站在巨人的肩膀上加速普及与应用。
编程语言“后浪”,站在中国向世界Say Hello
当Go+从工程与STEM教育的一体化开始奠定用户基础,Go+的竞争力也将自然显现。这也看得出,Go+走得道路并非急功近利,而是第一步从教育开始,强化产学研融合,只有当这一庞大的开发者人群汇聚起来,Go+的势能也将得到释放。
作为名副其实的编程语言“后浪”,Go+以兼容并蓄、博采众长和开源的姿态走出一条独特的竞争发展之路。
尤为重要的是,对于今天的中国而言,无论是开发者群体还是互联网、云等市场,人才之多、市场之大给了一个新编程语言发展的优沃土壤,站在中国向世界Say Hello,迎接Go+的是前所未有的发展机遇。