许式伟:What Go+ would |1024实训营公开课
导读:
为什么选择 Go+ 作为七牛云1024实训营主题?Go+ 是什么?Go+ 在不同领域中取得了哪些进展?在「1024 实训营」中,老许为我们带来了精彩分享,让我们跟随着 Go+ 全景图一起去看!
大家好!欢迎大家来到 1024 实训营。作为 1024 活动的一部分,我们希望通过本实训营,能够帮助大家培养良好的工程习惯,工程规范。同时也能让大家了解到实际的生产项目到底应该怎么做。虽然是面向内部的培训,但是我们把它打造成公开课形式,是因为在工程习惯日趋同质化的今天,我们认为,还是有很多细节是不尽相同又非常重要的,我们希望大家能了解,在七牛云我们是如何思考工程相关的问题,也为大家分享我们的最佳实践。
我今天选择 Go+ 来作为实训的主题。
之所以这么选,是因为我们认为 Go+ 已经迈进了生产级的门槛。作为一门新语言,我们可以借助它做出足够有意思、足够有价值的产品。当然在此之前,让我们先来看看 Go+ 的全景图,看看我们为什么这么说。
让 Go+ 成为语言榜排第一的语言,是我对这门语言的愿景。虽然听起来可能有些不切实际,但是我仍然对此深信不疑。相信通过全景图,你也能了解到其中的原因。
What Go+ would be
那么首先要和大家介绍的是,Go+ 到底是什么?
今年是很特别的一年,是 ChatGPT 大火出圈的一年,那么由此引出两个问题:这个世界为什么需要 Go+?在未来人们还写不写代码?
这两个问题其实已经在程序员圈子里被广泛讨论,很多人担心自己会不会因为人工智能的兴起而被取代。那么究竟未来需要更多的代码还是更少的代码?持有不同观点意味着对未来发展方向有着不同的判断。而我个人坚定认为:未来会有更大量的代码。
我们相信 AI 会诞生更多的代码,AI 也会让更多人可以写代码,由此产生更大量的代码。正是基于这样的判断,我认为未来会有更多的人会去写代码,全民编程时代必然会到来。而目前的编程语言,所有主流语言的视角都是精英视角,也就是说编程语言是给精英群体用的。但 Go+ 是少有的面向大众的语言,Go+ 核心观点是让所有人都可以使用。正因如此我相信 Go+ 会成为排行榜第一的语言。
当然随着 ChatGPT 的发展,有人会说我们某天通过自然语言就可以编程,不再需要学编程语言了,因此未来的代码量会减少。我是反对这个观点的,因为自然语言的不准确,导致它无法应对追求确定性的软件工程。而编程语言最核心的逻辑就是确定性,工程实践的核心思想也是确定性。比如说我们的代码管理,大家都知道代码管理遵循的是版本。版本背后是确定性的基线,基线的概念是只读,只读的目的就是为了确定性。所以,在所有的工程实践里都是反不确定性的。所谓的自然语言编程,也无非是将其转化成某一种编程语言,而这个准确率再高也不可能达到百分百。所以在这样的一个情况下,编程语言依然会被作为不可或缺的工程基础。
基于这样的逻辑,Go+ 有两个先天优势。首先是易于学习,既然是面向全民,那么我们希望全民都能够掌握。Python 是目前所有语言里面最趋向于全民编程的一门语言,我们希望 Go+ 的最佳实践的语法量是小于 Python 的。
第二是我们希望 Go+ 是面向大型工程的,也就意味着它可以写非常庞大的软件而不只是初学者随便用一用。刚才提到的 Python 虽然容易学,但是在大型工程上的能力有所不足,我们希望 Go+ 在这方面做到更好。
那么 Go+ 究竟是什么样?我想通过对比的方式和大家进一步解释。
首先是目前在数据科学领域最流行的 Python,由于 AI 很火,所以 Python 也很火,一跃成为语言榜的第一,我们希望 Go+ 更简单,同时具备面向大型工程的能力。第二是 Scratch,一门面向儿童的编程语言,可能这个语言很多程序员没听说过,但是它同样榜上有名,就是因为它门槛极低,所以我们也把它作为一个对比的对象。第三个是 Go,其实从名字上来看,Go+ 的工程能力都继承于 Go,是在 Go 的基础上发展而来的,Go 的语法最少,是工程领域里最简洁的一门语言,没有之一。使得它成为云计算领域里最流行的语言。
当年乔布斯发布 iPhone 的时候,为我们留下一场精彩的演讲,他把 iPhone 看作是 iPod、Internet 和 Phone 的三合一,重新定义了移动电话。而我希望 Go+ 能和 iPhone 一样,等于 Go 加上 Python 加 Scratch,重新发明编程。因为它能够搞定庞大的工程、简便易学、面向数据科学。
这三个领域都是 Go+ 关注的范畴,但其实它们有着同样的内核——让所有人都能用 Go+ ,来创建产品级的应用。这是 Go+ 的目标,也是全民编程的必由之路。
今天所有的代码都是程序员产生的,而未来产生最多代码的是 GPT,所以希望 ChatGPT 能够用 Go+ 产生最多代码,因为 AI 产生的代码量最多的语言,一定会成为语言榜第一的语言。ChatGPT 如果能用 Go+ 产生更多代码,那自然而然也会有更多的人用 Go+ 来写代码。
#我的成功项目解析#