go|Go+1.0发布背后的“突围赛”( 二 )


  • 其次,替代不是它的本色,与开源社区兼容并蓄才是它的本色。
Go+希望做到三个兼容:一是兼容Go的语法特性,在其基础上添加的特性最小化(目前Go+已经有对Go有90%的兼容能力);二是兼容Scratch的引擎能力和设计,在此基础上实现自动代码转换;三是兼容Python,计划可以直接导入Python包,到2023年实现对Python的兼容。
  • 再然后是具备一个杀手级应用。
虽然Go+定位于“三位一体”,但这并不意味着它会一上来就直接切数据科学场景。在解决数据科学任务方面,Python语言社区在库的数量、语言的简单性方面确实有一定优势,且一定程度上形成了强大的生态。一开始就“鸡蛋碰石头”,并不是个好方法。
为此,Go+会从工程与STEM教育一体化开始。相较之下,Scratch只是个玩具语言,并不适用于后期对工程科学的深入。Go+这是沿用了Code Monkey的教学体验,直接使用代码编程,学习门槛低,并进一步强化产学研融合发展,其优势得以体现。这种策略在过去的一年中已经得到有效性的印证。
目前Go+团队提供了兼容Scratch的2D游戏引擎,可便于学生学习Go+。据了解,此次Go+1.0版本中,一半的小游戏都是一位12岁的学生用Go+写出来的。
go|Go+1.0发布背后的“突围赛”
文章插图

应用深化下的探索
Go+1.0仍处于初级的探索阶段。STEM教育仅仅只是Go+的其中一个使用场景。
而面向工程开发,许式伟还指出,如游戏开发、职业培训(包括少儿编程),以及轻量型的IoT场景等,同样也是Go+的潜力应用场景。
其背后的一个重要原因在于,Go+所具备的低代码、去复杂性、低龄化的特性,即语法简单,能够贴近数学的表达方式去工程化,同时完成功能所需的代码量更少,每行代码的能力更强了。这种特性恰恰能够满足越来越多市场中对低门槛工程能力的需求。
而回到当下,Go+仍需要快速获取更多开发者的关注。
例如,社区需要加强对IDE的支持,提升开发者的使用体验,不弱于Go的开发体验;推出生产级游戏引擎;完善数据科学相关功能,支持Jupyter;借助七牛云PaaS的能力,开发者可以通过PaaS进行应用构建,实现对Go+的使用等等。
因为相信所以看见
200多年前,当一台织布机学会读穿孔卡片时,很难有人想象这竟为后来的计算机编程语言创造了先河。
这件事情说来也奇怪,虽然计算机语言发展到如今有上千种,主流和新贵的两极化趋势亦十分明显,但语言仍在快速演进。
在很多人眼里觉得,技术大牛们一言不合就写了个新编程语言,丝毫不顾忌后来人学习和使用门槛会有多高。而在一代又一代的持续改进过程中,这些编程语言逐渐成为在Web、后端、数据库中间件、机器学习等场景下的核心应用语言。
许式伟也表达了另一个观点。如今国内大量的程序员是做前端开发,只有少部分在做后端。随着企业上云动作基本完成后,下一阶段是对云上、云原生下各行各业进行全链路的数字化、智能化,那么数据科学的市场空间逐渐扩大起来后,新场景下开发者也将面临新的转型挑战。此时,编程语言作为一项生产力工具,能不能及时甚至较早就能响应市场的需求?
go|Go+1.0发布背后的“突围赛”
文章插图

值得一提的是,Go+语言在国内其实相比国外迎来了更快的发展。而在不久前的GitHub Trending上,Go+首次冲到了榜首。在现在看来可能仍微不足道,但在中国开发者“虹吸效应”溢出的时代下,还有什么不可能发生的事呢?
【 go|Go+1.0发布背后的“突围赛”】