<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>编程语言 &#8211; 老范讲故事｜AI、大模型与商业世界的故事</title>
	<atom:link href="https://lukefan.com/tag/%e7%bc%96%e7%a8%8b%e8%af%ad%e8%a8%80/feed/" rel="self" type="application/rss+xml" />
	<link>https://lukefan.com</link>
	<description>这里是老范讲故事的主站，持续更新 AIGC、大模型、互联网平台、商业冲突与资本市场观察，帮你看清热点背后的底层逻辑。</description>
	<lastBuildDate>Tue, 02 Jul 2024 00:50:49 +0000</lastBuildDate>
	<language>zh-Hans</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://lukefan.com/wp-content/uploads/2026/03/cropped-jimeng-2026-02-28-5245-用图一的人物形象，替换图二中的人物，使用图二的风格。文字替换：老范讲故事，Yo-32x32.jpeg</url>
	<title>编程语言 &#8211; 老范讲故事｜AI、大模型与商业世界的故事</title>
	<link>https://lukefan.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>华为仓吉编程语言发布，中文编程语言骗局终告破灭。超级缝合怪，未必不是好的编程语言，但仓吉的成败，更加依赖其他因素</title>
		<link>https://lukefan.com/2024/06/28/%e5%8d%8e%e4%b8%ba%e4%bb%93%e5%90%89%e7%bc%96%e7%a8%8b%e8%af%ad%e8%a8%80%e5%8f%91%e5%b8%83%ef%bc%8c%e4%b8%ad%e6%96%87%e7%bc%96%e7%a8%8b%e8%af%ad%e8%a8%80%e9%aa%97%e5%b1%80%e7%bb%88%e5%91%8a%e7%a0%b4/</link>
		
		<dc:creator><![CDATA[Luke Fan]]></dc:creator>
		<pubDate>Fri, 28 Jun 2024 00:45:33 +0000</pubDate>
				<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[华为很厉害]]></category>
		<category><![CDATA[Dart语言]]></category>
		<category><![CDATA[Go语言]]></category>
		<category><![CDATA[HDC大会]]></category>
		<category><![CDATA[LLVM编译器]]></category>
		<category><![CDATA[Objective C]]></category>
		<category><![CDATA[Rust语言]]></category>
		<category><![CDATA[Swift]]></category>
		<category><![CDATA[TypeScript]]></category>
		<category><![CDATA[中文编程]]></category>
		<category><![CDATA[中文编程语言]]></category>
		<category><![CDATA[互联网编程]]></category>
		<category><![CDATA[人工智能编程]]></category>
		<category><![CDATA[仓吉]]></category>
		<category><![CDATA[仓吉编程语言]]></category>
		<category><![CDATA[仓颉编程语言]]></category>
		<category><![CDATA[代码库]]></category>
		<category><![CDATA[全域编程]]></category>
		<category><![CDATA[兼容性]]></category>
		<category><![CDATA[内存安全]]></category>
		<category><![CDATA[内存泄漏]]></category>
		<category><![CDATA[内存越界]]></category>
		<category><![CDATA[前端开发]]></category>
		<category><![CDATA[华为]]></category>
		<category><![CDATA[华为仓吉]]></category>
		<category><![CDATA[华为仓颉]]></category>
		<category><![CDATA[后端开发]]></category>
		<category><![CDATA[多核心设计]]></category>
		<category><![CDATA[嵌入式系统]]></category>
		<category><![CDATA[并发安全]]></category>
		<category><![CDATA[并行处理]]></category>
		<category><![CDATA[开发效率]]></category>
		<category><![CDATA[开发者社区]]></category>
		<category><![CDATA[开源项目]]></category>
		<category><![CDATA[技术革命]]></category>
		<category><![CDATA[数据类型]]></category>
		<category><![CDATA[新兴编程]]></category>
		<category><![CDATA[新技术]]></category>
		<category><![CDATA[新技术解析]]></category>
		<category><![CDATA[新语言发布]]></category>
		<category><![CDATA[易用性]]></category>
		<category><![CDATA[易读性]]></category>
		<category><![CDATA[版本更新]]></category>
		<category><![CDATA[现代编程]]></category>
		<category><![CDATA[瑞斯克5]]></category>
		<category><![CDATA[生态建设]]></category>
		<category><![CDATA[科学计算]]></category>
		<category><![CDATA[科学计算适用]]></category>
		<category><![CDATA[程序员调试]]></category>
		<category><![CDATA[程序完整性]]></category>
		<category><![CDATA[程序开发.]]></category>
		<category><![CDATA[程式优化]]></category>
		<category><![CDATA[程式设计]]></category>
		<category><![CDATA[程式调试]]></category>
		<category><![CDATA[类型安全]]></category>
		<category><![CDATA[编程发展]]></category>
		<category><![CDATA[编程工具]]></category>
		<category><![CDATA[编程工具链]]></category>
		<category><![CDATA[编程平台]]></category>
		<category><![CDATA[编程效率]]></category>
		<category><![CDATA[编程教育]]></category>
		<category><![CDATA[编程新法]]></category>
		<category><![CDATA[编程未来]]></category>
		<category><![CDATA[编程案例]]></category>
		<category><![CDATA[编程模式]]></category>
		<category><![CDATA[编程环境]]></category>
		<category><![CDATA[编程生态]]></category>
		<category><![CDATA[编程社区]]></category>
		<category><![CDATA[编程简洁性]]></category>
		<category><![CDATA[编程规范]]></category>
		<category><![CDATA[编程语言]]></category>
		<category><![CDATA[编程语言比较]]></category>
		<category><![CDATA[编程语言特性]]></category>
		<category><![CDATA[编程语言进化]]></category>
		<category><![CDATA[编程趋势]]></category>
		<category><![CDATA[编程逻辑]]></category>
		<category><![CDATA[编程革新]]></category>
		<category><![CDATA[编译器选择]]></category>
		<category><![CDATA[网络设备]]></category>
		<category><![CDATA[自主控制节奏]]></category>
		<category><![CDATA[自主研发]]></category>
		<category><![CDATA[英特尔CPU]]></category>
		<category><![CDATA[跨平台编译]]></category>
		<category><![CDATA[软件工程]]></category>
		<category><![CDATA[软件开发]]></category>
		<category><![CDATA[软件更新]]></category>
		<category><![CDATA[软件架构]]></category>
		<category><![CDATA[高性能程序]]></category>
		<category><![CDATA[高效编译]]></category>
		<category><![CDATA[麒麟CPU]]></category>
		<guid isPermaLink="false">https://lukefan.com/?p=1353</guid>

					<description><![CDATA[大家好，欢迎收听“老范讲故事”的YouTube频道。今天，咱们来讲一讲华为，仓吉编程语言终于来了。在刚刚过去的 ... <a title="华为仓吉编程语言发布，中文编程语言骗局终告破灭。超级缝合怪，未必不是好的编程语言，但仓吉的成败，更加依赖其他因素" class="read-more" href="https://lukefan.com/2024/06/28/%e5%8d%8e%e4%b8%ba%e4%bb%93%e5%90%89%e7%bc%96%e7%a8%8b%e8%af%ad%e8%a8%80%e5%8f%91%e5%b8%83%ef%bc%8c%e4%b8%ad%e6%96%87%e7%bc%96%e7%a8%8b%e8%af%ad%e8%a8%80%e9%aa%97%e5%b1%80%e7%bb%88%e5%91%8a%e7%a0%b4/" aria-label="阅读 华为仓吉编程语言发布，中文编程语言骗局终告破灭。超级缝合怪，未必不是好的编程语言，但仓吉的成败，更加依赖其他因素">阅读更多</a>]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe title="华为仓吉编程语言发布，中文编程语言骗局终告破灭。超级缝合怪，未必不是好的编程语言，但仓吉的成败，更加依赖其他因素。" width="900" height="506" src="https://www.youtube.com/embed/N9k3Q3Uerzc?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</div></figure>



<p>大家好，欢迎收听“老范讲故事”的YouTube频道。今天，咱们来讲一讲华为，仓吉编程语言终于来了。在刚刚过去的HDC，也就是华为开发者大会上，除了发布鸿蒙新一代操作系统，感谢了一大堆友商，还故意把腾讯的名字落掉之外，还发布了众望所归，或者大家期盼已久的仓吉编程语言。2020年，华为就申请了仓吉的商标，而且告诉大家说，我要去做编程员了。当时很多人就直接疯了，说哎呀，华为要做中文编程语言，我们再也不需要使用英文字符去写程序了，我们要用古老的中文去写了。</p>



<p>在这件事情上呢，华为采用了叫不承认不否认，不负责的态度。什么意思？就是华为自己从来不承认说，我要做中文编程语言，没有任何中文编程语言相关的报导是从华为出来的。但是华为呢，也不否认任何人说华为要做中文编程语言了，他也不出来辟谣，也对所有市面上流传的信息不负责任。反而不是我说的这件事情呢，传来传去，传来传去，传到2024年，这个仓吉编程语言终于发布了。</p>



<span id="more-1353"></span>



<p>对于程序员来说，中文编程语言这件事就是个笑话，不可能有，想都不用想。为什么？因为中文的输入效率很低。我们现在使用这种26个字母的英文键盘，你打英文肯定是最快的嘛。这么大量的内容要输进去，你要打中文拼音，然后再挑字，有时候还写错别字，这玩意咋弄？而且中文那么多的字之间，入和这个人为和末它很像，你到最后找bug，你咋吵？所以，这件事是不可能的，想都不用想啊。现在，华为的仓吉编程语言终于发布了。</p>



<p>首先，说结论是：它不是中文的，而是英文的。跟中文有关系的部分不是完全没有啊，是什么呢？就是它的名字——仓吉编程语言的这个语言名呢，是仓吉的汉语拼音，也不敢写中文。它的程序后缀是CJ，仓吉嘛，仅此而已啊。剩下的跟中文就没有任何关系了。大家要知道，我对于华为的看法呢，就是他们的技术一直都还是可以啊，但是他们使用的很多手段，让我觉得比较不齿。但是技术我从来不质疑啊，包括他们很多生产的设备的工艺，都是很好的。</p>



<p>咱们讲讲仓吉编程语言到底怎么样。仓吉编程语言呢，是一种缝合怪。他把现在最好的这些语言特性，都缝在一块。但这个呢，并不是贬义词。其实所有的编程语言，就是新发展出来都是缝合怪。什么意思呢？编程语言发展一段时间以后说啊，现在的新的编程环境啊，新的程序编造的任务有些什么变化了，那么我们有一些新的编程语言的特性需要出来。那么只要有新的编程语言出来，他们就会把所有这些新特性都塞进去。所以只要是新编程语言都是缝合怪，不是说到华为这都变缝合怪了。</p>



<p>最后，这个编程语言到底能不能成功啊，是不是大家喜欢用，跟它是不是缝合怪本身，这件事并没有关系。编程语言本身呢，其实也一直在发展。发展的方</p>



<p>可能就是其他新编程语言的3-5倍，或者有的可能达到十几倍。包括Objective C，这是苹果原来在iOS上开发用的。这种语言相对来说比较繁琐。现在新的语言都比较简洁，相对来说更易读易懂。以前为什么搞得那么复杂？因为那时候的都是软件工程，有架构师负责设计，然后底下的人必须按照这种复杂的规则工作，像螺丝钉一样。你写的越严格定义，写的越长，它就越不容易出错。通过这样的方式来实现。</p>



<p>但是现在呢，都是小团队开发，甚至有好多代码是一两个人写的。你让他写一大堆又臭又长的代码，人家觉得才不费这劲呢，太累了。然后易读性这个事，程序是一个工程，即使到现在可能也还是工程，需要多个人来配合。你这个人写完程序以后，下一个人读不懂了，这玩意你咋弄啊？或者说我自己写的程序，过俩月我再看，我自己看不懂了，这事也没法整啊。所以程序一定要易读。</p>



<p>然后第三个呢，叫什么就是适合描述当前主要任务。因为大家知道，随着计算机行业、互联网行业，包括现在人工智能行业不断地往前发展，我们用写程序的方式要解决的主要问题和矛盾转变了。以前的很多程序语言其实不太适合描述当前的任务。你描述的过程，可能会变得非常的冗长。这个事是非常麻烦的。所以呢，就会要求编程语言发展。这个发展实际上是两个方向：第一个方向呢，就是传统编程语言其实也在一个版本更新的过程中，不断地在优化和改进。</p>



<p>第二个方向，就是新兴的编程语言，它们在设计之初就考虑到了现代软件开发的需求，更加注重易读性、易用性和描述当前主要任务的能力。这些语言往往更简洁，语法更贴近自然语言，使得开发者能够更加专注于问题本身，而不是语言的细节。这种趋势使得编程语言的发展更加多元化，满足了不同场景和需求下的开发工作。</p>



<p>一个版本往前迭代的二个分，就是要不断有新的编程语言出现。那么，新的编程语言到底需要具备什么特性呢？让我们稍微讲点技术，我尽量讲得让大家能听明白。现在有很多新的编程语言，比如说谷歌现在在推广的Kotlin，安卓里边现在使用Kotlin；苹果做的Swift；还有Go和Rust，这些都是属于新编程语言。它们都会有一些共同的特性。为什么讲这个？因为，仓吉把所有东西都放到自己身上，谁最后一个出现，就会把前面的都放到自己身上。都有哪些新特性呢？</p>



<p>第一个，它内存安全。程序运行的时候，在内存里头有执行代码，有数据代码。传统的编程语言呢，会经常出现一些叫内存越界和内存泄露的问题。所以，新的编程语言一定要解决这个问题。内存越界是什么意思？就是我告诉操作系统说，我需要10个字节的内存，它分配给我了，然后我去访问第11个字节去了，这个事肯定是不行的。他分配给你以后，实际上是告诉你说，给你一个地址，说这个地址就是你的，从这个地址往后十个字节都是你的。我去访问第11个字节，这事肯定是错的。访问其他的，在我这个地址范围之外的地方，都是错的。什么人去干这种事？病毒都是干这个事的，还有很多破解，都是要内存要越界的。</p>



<p>那么内存泄露是什么意思？就是我分配了10个字节，用完了以后，我得告诉操作系统，我用完了，释放掉。然后操作系统呢，再有人来分配的时候，再把这块内存再分配给别人。</p>



<p>他是这样去工作的。但是如果我光去调用了，我告诉操作系统来给我分配，内存分配回来了，用完了以后呢，我没有去释放啊。最后积攒了一大堆没释放的内存，就是内存的碎块在这个计算机里头啊。这叫内存泄漏啊。传统的编程语言都是这种问题啊。现在新的编程语首先要解决这个啊。第二个呢，叫什么叫并发安全啊？什么叫并发安全？现在的这个计算机呢，甭管是手机啊，电脑啊，还是平板啊，其他所有设备吧，都是多核心设计啊。就是你的CPU上有非常多的计算核心。那么我们需要什么呢？并行处理。传统的程序是顺序的啊，执行完第一句，执行第二句，执行完第二句执行第三句，对吧。那么现在呢，说我们要提高效率，我一看哦，8个核心，我就赶快把这个数据拆好了，分配到八个核心里，你们都去执行，执行完了以后，把执行结果拿回来，我再把这些执行结果拼在一起，再接着往前走。但是在这个过程中呢，却有个问题：计算核心他在工作的时候呢，不能随便去访问外边的数据啊。他只能访问他自己分配到这个计算核心里面缓冲里边的数据。所以呢，一般情况下，县城跟县城，或者说叫并行运行的这些程序之间是隔离的。你不能说我执行一段时间以后，我要到外面去访问一下别人的数据，这事是不允许的啊。这个就叫并发安全。在写程序的时候，你先要把这个事情搞定。然后第三个呢，是类型安全。现在新的编程语言大部分是强类型，就是我们规定好你这个东西到底是什么类型，你再去给他赋一些其他类型。</p>



<p>他是这样去工作的。但是如果我光去调用了，我告诉操作系统来给我分配，内存分配回来了，用完了以后，我没有去释放。最后积攒了一大堆没释放的内存，就是内存的碎块在这个计算机里头啊。这叫内存泄漏啊。传统的编程语言都是这种问题啊。现在新的编程语言首先要解决这个。</p>



<p>第二个呢，叫并发安全。什么叫并发安全？现在的这个计算机呢，甭管是手机啊，电脑啊，还是平板啊，其他所有设备吧，都是多核心设计啊。就是你的CPU上有非常多的计算核心。那么我们需要什么呢？并行处理。传统的程序是顺序的，执行完第一句，执行第二句，执行完第二句执行第三句，对吧。那么现在呢，说我们要提高效率，我一看哦，8个核心，我就赶快把这个数据拆好了，分配到八个核心里，你们都去执行，执行完了以后，把执行结果拿回来，我再把这些执行结果拼在一起，再接着往前走。但是在这个过程中呢，却有个问题：计算核心他在工作的时候，不能随便去访问外边的数据啊。他只能访问他自己分配到这个计算核心里面缓冲里边的数据。所以呢，一般情况下，县城跟县城，或者说叫并行运行的这些程序之间是隔离的。你不能说我执行一段时间以后，我要到外面去访问一下别人的数据，这事是不允许的啊。这个就叫并发安全。在写程序的时候，你先要把这个事情搞定。</p>



<p>然后第三个呢，是类型安全。现在新的编程语言大部分是强类型，就是我们规定好你这个东西到底是什么类型，你再去给他赋一些其他类型。</p>



<p>是不允许的啊。比如说，我规定了这是一个整数，你现在想往里头赋一个浮点数——就是带小数点后边那部分的那种数——这是不允许的，直接报错啊。然后呢，还有很多新的语言特性，比如说什么范型啊，闭包啊，命名函数，或者是函数增强什么的，它们都算是新的语言特性。为什么会有这种特性呢？就是为了让更大规模的程序可以被更灵活地编写。</p>



<p>然后呢，是需要有完善的生态和工序链。我记得我上大学，刚开始学计算机语言的时候啊，学C语言，学Pascal语言，学BASIC语言，每一个语言里头，它的关键词其实很少，大概有个几十个，有的有一两百个，也到头了。而且都很短小。但是学完这个语言的基本的结构，控制之后，你就会编程了吧。扯吧，你那玩意编不出来。真正要编程需要什么呢？就是需要大量的周边的函数库。比如说鸿蒙操作系统里头啊，我要调用某一个设备，你如果没有这些函数库，那这事费劲了对吧。你需要从最底层的去一层一层去折腾去。现在都是什么？有一个函数库叫摄像头，我现在调用函数库说，首先摄像头初始化一下，摄像头给我设定参数，摄像头给我拍一张照片回来啊，或者摄像头给我拿出一个预览图片回来。然后我要到哪里去显示啊。现在都是这样编程序的对吧。这个写的代码，基本上刚才我说的一句话，可能就对于编程语言就是一句对吧。现在都是这样，你要有完整的生态，然后呢，要有工序链啊。比如说，我可以给这个鸿蒙手机写程序啊，可以给鸿蒙平板写程序，可以给手表写程序。</p>



<p>那这个他要有完整的工序链，来去对应他们。然后呢，要有不同的应用场景——你比如说，我到底是前端用啊，就是写界面；还是网络上使用，做科学计算使用；还是后端操纵各种设备。它要有不同的应用场景。这是现代编程语言的一些新特性啊。所有这些特性，咱们的仓吉编程语言都有，都已经弄得齐齐的了。</p>



<p>另外还有一个什么东西呢？就是编译器啊。编程语言，你写完程序以后，是不能直接执行的呀。你要经过编译，编译成这种可执行的代码才可以去做。康杰编程语言呢，它使用的编译器，也是现在最时新最流行的，叫LLVM架构——叫low level virtual machine，就是底层的虚拟机系统。它呢，是一种模块化设计的编译器，里头每一个模块可以自由的拼接。然后呢，有很高级的优化，它可以将这个代码优化的非常高效。就是我写的时候，其实我是啊，不是那么在意，说你最后代码是怎么去执行的，都是由编译器去优化出来的。</p>



<p>然后呢，这种编译器最后编译出来代码，是跨平台的啊。你说我编译完代码，到底是在英特尔的CPU上跑，是在麒麟的CPU上跑，还是在瑞斯克5的CPU上跑，还是在一些啊，嵌入式的这种小的SoC上跑啊。它是用这样的编译器，可以一次性都编译出来啊。它是做这样的工作。而且呢，LLVM的这种编译器，也是有相对活跃的社区与生态的。这个编译器格式，是从2000年就开始在做，现在一些新的，比如像Swift呀什么的，也都是用这样的编译器模式啊。</p>



<p>不是说这个编译器叫 LRVM，而是编译器的形式是 LRVM。这是我们讲解的技术部分，就到这里了。然后，仓吉编程语言就包含了刚才我们讲的所有的这些新特性。那么，有没有想过为什么一定需要一种自己的编程语言呢？</p>



<p>首先，要讲的是，做编程语言这件事并没有像大家想象的那么神秘，那么高深莫测。现在我们用的一些很广泛的编程语言，其实出身并没有那么好。譬如说 PHP，很多的网站都是用它写的。PHP 实际上是某一位大神的大学本科毕业项目，他说那我自己做个编程语言吧，专门去写 Web 应用的这种编程语言。然后，就非常的流行，大家就写来用起来了。像包括 JavaScript，还有 C 语言，实际上都是很随机的就产生了。所以，做编程语言这件事本身并没有那么高大上。</p>



<p>但是，现在的编程语言已经不像那个时候了，已经发展的非常先进了。现在再有一个大学生说，我要做一个新的编程语言出来，已经非常非常难了，因为刚才那些特性你把它搞明白其实不容易的。现在，比如说谷歌最新做的 Dart 编程语言，为什么干这事呢？第一个，C++ 相对来说是一种比较笨重的语言，就是你要写同样的代码，完成同样的功能，它的代码量是别人的 5-10 倍。那个没必要嘛，对吧，何必跟自己过不去呢？我们需要一种新的、更简洁的编程语言。另一方面，C++ 的版权在谁手里头？在 Oracle 手里。Oracle 就不停地告谷歌，说你侵犯我版权了，你得给我钱。</p>



<p>那谷歌说：“算了，我不用了，行不行？我自己去整一套新的啊，quarterly到新编程语言，它的成本很高啊，因为你要自己搭建整个的生态，整个的社区，这个成本是非常高的，不是到逼不得已，一般不会有人干这个事啊。”五哥说：“既然你一直告我，那我就上吧，我有机会上新编程语言了，我就一定要把所有新特性全上！上啊，你原来那个沉重的包袱啊，这种需要写的，特别特别又臭又长的这种代码，不要了啊，整个扔掉。”这是谷歌，然后苹果的Swift呢，也是这样，就是说它的object啊，原来叫objective c啊，也是太笨重了啊，太陈旧了，说算了扔掉了，不玩了啊，整个整一套新的。所以苹果现在你做啊，Mac OS啊，iOS啊，iPadOS的开发都是Swift语言。</p>



<p>华为呢，原来其实是有一套自己的语言的，但是呢，它这个不是那么纯粹，它原来这个语言叫Ark TS，Ark是方舟的意思啊，它原来有方舟编译器，方舟的整个的代码库啊，它的编程语言TS是什么，叫typescript。但是这个里头有一个问题是什么呢？就是typescript的大版权是在微软手里的，虽然它的版权是阿帕奇2.0，它允许大家自己有去修改，允许大家去商业使用，就是华为去使用这种typescript是没有问题的。但是问题在哪儿呢？问题是，它的大版本是控制在微软手里，微软会不断地去升级typescript版本啊，不断地把新的语言特性加进去，改出来啊。而然后呢？（文本在此处似乎未完整结束）</p>



<p>所有的 TypeScript 的周边社区，对吧？你说我今天要给 TypeScript 写代码库了，啊，我要去给他写一些这个，呃，第三方的接口。我一定是跟着微软的标准走，我不可能跟着华为标准走。华为说：“哎，我想加点新特性进去。”微软说：“我不喜欢。”咔，干掉了，没了，对吧？然后那你说我这个新的代码库，我一个第三方的，比如说我是做鼠标的，我给这个设备专门写了一个 TypeScript 的接口库进去。那我肯定跟着微软标准走，不可能跟华为标准走。它是这样的，那么它这个叫什么呢？叫生态被微软绑定了。这个华为是不可接受的。</p>



<p>TypeScript 还有一个问题是什么呢？就是它更适合写前端，就是它去写很多跟界面相关的事情。因为 TypeScript 语言是从 JavaScript 的这种，就是前端语言里头演进出来的一种语言。所以呢，它对于很多的科学计算啊，对于很多后端的任务呢，其实并没有那么擅长。这也是华为为什么要去抛弃它的原因。就是现在的鸿蒙上都是使用的叫 ARCTS，未来呢，就准备通通都整到仓吉上面去。就是必须要有一套可以完全自己掌控节奏的全域编程语言啊，大家注意我讲的两个定语啊：第一个自己掌握节奏，我想升级就升级啊，我想加新特性就加新特性，不需要看任何别人的脸色啊。如果你想跟我兼容，你就老老实实跟着我的节奏走。这里头没有第二名啊，你就跟着我走。我们只有一个声音啊，这第一个。第二个是什么呢？叫痊愈编程语言。不过，最后一句似乎没有完整表达出说话人的原意，可能需要进一步的上下文来明确“痊愈编程语言”的具体含义。在这段话中，主要讨论了标准、生态绑定、以及华为对于编程语言选择的考量，特别是对 TypeScript 的观点，以及华为对于自主可控编程语言的需求。</p>



<p>我不但要负责界面的开发，服务器的编程，网络设备的设定，科学计算的处理，我还要确保所有环节无缝对接，这正是“仓吉”系统所承担的任务。那么，我们来探讨一下，“仓吉”是否有望成功，它是否拥有光明的前景。如今，甚至有人开始学习编程，我是否也应该掌握“仓吉”编程语言呢？这个问题，虽与技术相关，但也并非完全取决于技术。一个编程语言能否最终立足，关键在于其生态与工具链的建设。生态，正如我们之前所讨论的，指的是是否有一群开发者围绕该语言编写程序，是否有足够的工具和上下游相关的代码库支持。例如，当我使用“仓吉”编程语言时，如果我发现手机上的运动传感器无法找到相应的驱动，这就表明生态体系存在缺陷，最终可能导致该语言无人问津。</p>



<p>“仓吉”编程语言能否成功，归根结底，还是要看其生态和工具链的建设情况。目前，华为正投入大量资源致力于此。同时，谷歌也在推广多种编程语言，如Python、Rust、Go、Dart等，并表示愿意出资支持其生态链的建设。苹果公司也在推广其Swift语言，且Swift是开源的，但问题在于，很少有人愿意主动与苹果的系统兼容。尽管Swift是一种全功能的编程语言，有人用它来编写高性能的服务器程序，但这并不意味着它已经广受欢迎。</p>



<p>在讨论编程语言的未来时，我们不能忽视其生态建设的重要性，这将直接影响到语言的普及和应用。</p>



<p>都是在你手机上跑的一些APP啊。苹果的Swift始终在苹果生态里没出来，就是我们很少能看到，不是苹果系统，我去用Swift语言去写程序这个事，基本上没有。华为的现在也是如此。它的生态本身，相对于苹果这种封闭生态来说呢，还是要稍微小一点。毕竟苹果全世界那么多人在用，相对来说，华为也好，苹果也好呢，都是在外面没有人用。鸿蒙系统，你离开华为也没人使，对吧，就跟iOS、iPad OS什么这个东西，离开苹果也没人使是一样的啊。所以呢，他有可能就在华为鸿蒙生态系统内啊，可以继续跑下去，就像Swift一样啊。这个事可能性是存在的，但是前提你是鸿蒙得推的下去啊。如果你鸿蒙也没推下去的话，那这个仓吉也就没有任何意义了。华为的生态链啊，到底是不是足够强大，才是仓吉本身是不是成功的核心。他的生态链强大了，他就可以养的活，社区啊，社区这个东西其实是很现实的。如果我在你这个社区里写了程序，没有人用，没有人让我这个吃饱肚子，那就没有人在里头去玩耍，那这个社区就会快速的枯竭下去。玩编程社区里头还有很多其他的东西，明后天我们有机会再给大家讲啊。这个里头还有什么礼节对吧，还有很多的约定俗成的东西，如果你不遵守的话，会被整个的程序员社区所唾弃的。好啊，这就是仓吉编程语言这个故事啊，我们今天讲到这里啊。稍微有些技术啊，有些可能大家听着会费劲一点，但我尽量是用简单的方式讲。好啊，这期就讲到这里，感谢大家收听，请帮忙点赞。</p>



<p>点小铃铛，参加disco讨论群。也欢迎有兴趣、有能力的朋友加入我们的付费频道。再见。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>AIGC时代，写给想要学计算机科学专业的儿子的一封信——程序员会被取代吗？现在去学计算机还来得及吗？</title>
		<link>https://lukefan.com/2024/06/05/aigc%e6%97%b6%e4%bb%a3%ef%bc%8c%e5%86%99%e7%bb%99%e6%83%b3%e8%a6%81%e5%ad%a6%e8%ae%a1%e7%ae%97%e6%9c%ba%e7%a7%91%e5%ad%a6%e4%b8%93%e4%b8%9a%e7%9a%84%e5%84%bf%e5%ad%90%e7%9a%84%e4%b8%80%e5%b0%81/</link>
		
		<dc:creator><![CDATA[Luke Fan]]></dc:creator>
		<pubDate>Wed, 05 Jun 2024 00:43:33 +0000</pubDate>
				<category><![CDATA[AIGC]]></category>
		<category><![CDATA[老范讲给儿子的IT课程]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[个性化]]></category>
		<category><![CDATA[个性化服务]]></category>
		<category><![CDATA[人工智能]]></category>
		<category><![CDATA[商业]]></category>
		<category><![CDATA[基础原理]]></category>
		<category><![CDATA[大模型]]></category>
		<category><![CDATA[学习路径]]></category>
		<category><![CDATA[学生指导]]></category>
		<category><![CDATA[工程思考]]></category>
		<category><![CDATA[工程能力]]></category>
		<category><![CDATA[应用开发]]></category>
		<category><![CDATA[批判精神]]></category>
		<category><![CDATA[技术发展]]></category>
		<category><![CDATA[教育]]></category>
		<category><![CDATA[数字化]]></category>
		<category><![CDATA[数字时代]]></category>
		<category><![CDATA[数据结构]]></category>
		<category><![CDATA[未来趋势]]></category>
		<category><![CDATA[标准化]]></category>
		<category><![CDATA[沟通协作]]></category>
		<category><![CDATA[用户需求]]></category>
		<category><![CDATA[社会人文]]></category>
		<category><![CDATA[程序员]]></category>
		<category><![CDATA[编程语言]]></category>
		<category><![CDATA[职业发展]]></category>
		<category><![CDATA[自定义软件]]></category>
		<category><![CDATA[计算机教育]]></category>
		<category><![CDATA[计算机科学]]></category>
		<category><![CDATA[软件价值]]></category>
		<category><![CDATA[软件工程]]></category>
		<category><![CDATA[软件开发]]></category>
		<category><![CDATA[软件开发成本]]></category>
		<category><![CDATA[逻辑思维]]></category>
		<category><![CDATA[逻辑思考]]></category>
		<category><![CDATA[重复使用]]></category>
		<category><![CDATA[需求顾问]]></category>
		<category><![CDATA[高等教育]]></category>
		<guid isPermaLink="false">https://lukefan.com/?p=1291</guid>

					<description><![CDATA[大家好，欢迎收听“老范讲故事”YouTube频道。今天，咱们来讲一讲AI时代，现在学计算机还来得及吗？啊，首先 ... <a title="AIGC时代，写给想要学计算机科学专业的儿子的一封信——程序员会被取代吗？现在去学计算机还来得及吗？" class="read-more" href="https://lukefan.com/2024/06/05/aigc%e6%97%b6%e4%bb%a3%ef%bc%8c%e5%86%99%e7%bb%99%e6%83%b3%e8%a6%81%e5%ad%a6%e8%ae%a1%e7%ae%97%e6%9c%ba%e7%a7%91%e5%ad%a6%e4%b8%93%e4%b8%9a%e7%9a%84%e5%84%bf%e5%ad%90%e7%9a%84%e4%b8%80%e5%b0%81/" aria-label="阅读 AIGC时代，写给想要学计算机科学专业的儿子的一封信——程序员会被取代吗？现在去学计算机还来得及吗？">阅读更多</a>]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe title="AIGC时代，写给想要学计算机科学专业的儿子的一封信——程序员会被取代吗？现在去学计算机还来得及吗？" width="900" height="506" src="https://www.youtube.com/embed/h2Xf6S7ys1M?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</div></figure>



<p>大家好，欢迎收听“老范讲故事”YouTube频道。今天，咱们来讲一讲AI时代，现在学计算机还来得及吗？啊，首先要跟大家讲说，这个内容是怎么来的。呃，儿子要成人礼了，也是马上要高考了，太太给了我一个任务，让我给儿子写一封信。所以呢，我就前面录了一个视频，是给儿子的一封信。这个里面呢，有一部分就是讲AI时代，学计算机应该怎么学的。现在呢，我把这一部分摘出来，单独跟大家聊一下。</p>



<p>首先呢，要讲一下我的父母跟我太太的父母，在我们两个人选择大学专业的时候，跟我们说的话。我父母两个呢，都是学机械的——机械制造、机械设计、机械原理。我太太的父母呢，应该都是学电子工程的。啊，当我去高考的时候呢，我的父母跟我讲说：“不要去学机械啊，去学计算机吧。”为什么呢？说学机械这事儿啊，太辛苦太累，需要去工厂，需要跟这些设备打交道，太累了。他说学计算机这事儿啊，虽然也挺累的，但是你好歹是在空调的机房里呆着呀，你跟这个在工厂里的人比起来，你要好很多了。当然，我自己也比较喜欢，这是大前提。</p>



<p>我太太的父母呢，在他高考的时候说：“学电子太累了啊，你要不停地学新东西，电子元器件啊，电子的各种设备啊，不停地更新换代，这事儿实在太累了。”</p>



<span id="more-1291"></span>



<p>你去找一点这个不发生变化的东西吧，你去学习那个吧。所以他学英语的，哈哈，我太太是英语老师。这个是当时我们的父母在我们选择专业的时候给我们的一些建议。现在呢，我儿子要去高考了，这个我很开心。未来我儿子应该会选择计算机科学，DS这条路，就是软件啊，或者是软件开发呀。啊，就是相当于这些专业，等于还是走的我原来的这条路，因为我自己是学软件出来的。</p>



<p>首先啊，学软件也是很累的，因为软件更新的比这个电子还快，基本上每两三年就要更新一次。而且现在呢，软件工程师也不都是坐在有空调的机房里了，我们还可以坐在啊海滩上，还可以坐在数字游民村里，还可以坐在星巴克里。我们可以在各个地方去写程序了，这个应该跟那个时候又有一些新的变化了。</p>



<p>而且计算机这个东西呢，真的是活到老学到老啊，你不可能说学到哪一部分我就停在这里，这件事是完全不现实的。机械你基本上应该变化的是比较小的，电子啊，呃也变化，但是肯定比这个慢。学计算机有一个好处是什么，不是说我们可以坐在空调房里啊，就是比较好玩啊，比较有趣。我记得我当年学计算机的时候呢，有一次去参加一个汽车俱乐部，像九几年时，大家都不会开车，也都没有汽车，然后一帮没有车的人坐在一起。</p>



<p>来畅想一下，如果有了车会怎么样？当时呢，有一位我忘了叫什么了，也是一位前辈了，就在这儿讲，所以为什么汽车特别有意思，很多男生喜欢开汽车啊。突然你会看到说，这么大的一个东西，就算是一个小轿车，它也有个一两吨重，你可以驾驭这样的一个一两吨重的东西，用一个你自己永远也跑不到的速度，在公路上奔驰，可以到达你永远到达不了的地方。这是一种男人的乐趣。啊，当时我听了以后就异常的兴奋，异常的感动。对吧，我们驾驭了我们原来无法驾驭的东西，一个一两吨重的铁疙瘩，然后达到了我们从来没有能够达到的速度，甭管是一个小时100公里还是80公里，我肯定是跑不到的，然后到达了我们原来没有办法到达的地方。这是汽车有序的地方，而计算机有序的地方呢，跟汽车非常像。那我们不但去操作了这台电脑，现在我还可以操作整个的网络，我可以跟一些有智慧的东西一起去工作，甚至我可以操作这些有智慧的东西，达到一些我原来从来没有达到过的地方，操控我原来从来没有操控过的那么多的信息。对吧，所以它会比较有意思，特别是对于男生来说，学计算机相对来说比较有趣。而且呢，随着时代的变化，这种乐趣呢不但没有消失，还变得更加有趣了。</p>



<p>你想，我学计算机的时候玩的是单机。后来呢，开始有网络；再往后来，开始有手机；现在有AI可以玩了。所以，会变得越来越有趣。我们的能力会变得越来越强，让我们可以操控的网络，可以操控的数据，可以真正做到的事情会变得越来越多。这个乐趣就会变得越来越大。那么，AI时代的程序员都要被取代了，为什么还要学这个东西呢？AI系统啊，还是用程序员的方式进行工程化的工作的。首先，大家要想清楚，AI的背后的实现，并不是程序员错了。所以，AI的整个的输入输出的过程，整个的运作过程，这还是按照程序员的方式运作。为什么？因为程序员的想象力就这么大，我们习惯了这么干活。那么，AI你也得老老实实这么干。所以，未来肯定还是需要大量的程序员的。这个程序员呢，在未来需要干三件事：</p>



<p>第一个事，底层的架构与维护。AI系统还是要有人做的，AI系统还是要升级的，新的算法还是要有人写的，新的算法还是要有人维护的。那么，这个还是需要程序员的。这是第一件事。</p>



<p>第二个事是干嘛呢？做数据挖掘。对吧，有这么多的数据回来了以后，我们如何在其中找到规律，如何在里面去理解人性，如何在里面去找到流量的变化，这个是需要程序员去干的活。</p>



<p>第三个是什么呢？第三个是上层应用构建。</p>



<p>对吧，AI大模型，无所不能，无所不知。但是呢，你真的要让他完成具体工作的时候，还是需要有人去构建一些相应的应用出来。这个也是需要程序员去做的。所以，程序员未来需要干这三件事，而且数量会更多，而且程序员的薪水也会更高，因为他创造更大的价值。那么，AI时代，程序员应该怎么学呢？如果现在说我又高考了，考到了计算机系里头，我到底应该怎么学这件事情？第一个要想清楚，我们要学习更多的逻辑思维能力。对，其实学计算机就是学逻辑思维。你学那么多的课程，学各种编程语言，这个事情本身并没有那么重要。我在大学期间学的编程语言，到现在早就不用了。我印象里我大学学的什么DOS, FoxPro, 包括BASIC这些，基本上在大学毕业的那一天，就不用了。所以这些东西没有那么重要。真正重要的是什么呢？就是一些基础原理，很重要，而且一些底层的逻辑思维方式，很重要。这些东西是永远不会发生变化的。我们一般讲叫哲学，是研究科学的科学。所以在计算机里头也是这样，我们要学习逻辑，逻辑是确定所有计算机系统工作的最底层。而且呢，要学习很多基础的原理。</p>



<p>你说，我是不是应该学习一下？什么叫并行？什么叫存储器？什么叫做交换？什么叫做比较？什么叫指令级？这些工程的东西，我是不是要去学一下？这是最底层的东西。如果你不去学这些最底层的东西，你跟那些半路出家的，或者说从其他行业转过来的计算机人员来说，就没有任何优势了。对吧？有很多人，从半路出家——原来学法律的、原来学金融的、原来学财会的——你说在大模型的帮助下，他能不能利用一些大模型的工具去实现一些功能呢？也能，没有任何问题。那么，在这个领域里，程序员本身的优势在哪？就是我们知其然还知其所以然。如果你不知道它的底层运作原理，它上面的很多由大模型直接规划出来的路径，可能是错的。他也可以得到结果，但是，当并发数量上升，当遇到一些特殊情况的时候，这就会有问题。像我们以前常说，哎，一看这是名门大家里头训练出来的弟子，一板一眼，动作都是有规范的。而我们，不是要让大家学会这些规范，而是希望能够知道，这些规范原来是为什么建立的。那么，在这样的一些底层逻辑的帮助下，可以更好地设计出应用来。那么，除了学这些计算机相关的课程之外，AI时代来了以后……</p>



<p>还需要学一个东西，对吧？我们要知道社会是怎么运作的，所以需要更多的去了解和学习一些其他的科目，不仅仅是计算机之外的。比如说，我们刚才讲到的法律、金融、财会等领域的知识。现在，这些相关学科的人已经可以在大模型的帮助下使用电脑了。那么，我们这些学计算机的人，是不是也应该稍微学习一些其他领域的知识呢？这为我们以后跟他们一起配合工作，打下一个良好的基础。我们也要了解他们的领域里有哪些标准，底层的逻辑应该遵循什么，这是对齐的一部分。我们要对大模型做对齐，首先得对我们自己做对齐。</p>



<p>在这样的情况下，光是学编程语言、数据结构是不够的。我们还要去学一些商业的东西，一些社会人文的东西，一些应用的学科。这样，我们才能真正地做好工作。以前很多人说，学计算机的以后就可能变成工具，容易被替代。但如果你不仅懂计算机的底层逻辑，还懂商业上的一些事情，那你的价值就不同了。因此，这也是提前做好对齐准备的一部分。</p>



<p>除了学习这些科目之外，还有一个非常重要的东西，那就是学习沟通与协作。</p>



<p>这件事非常重要。想要说服大模型按照你的意愿展示活力，过去我们很简单，编写程序就能搞定。但现在，你可能需要与之对话了。要想和大模型，甚至可能是多个模型，像人们一样协同工作，你得好好学习沟通与协作的技巧。首先，得学会如何说服他人与你合作，再者，能将问题描述得清晰明了。这对于我们这些受过高中教育的人来说，是一个不小的挑战——给你一个主题，让你说清楚，对大模型而言尤其重要。</p>



<p>许多人认为，有了Sora这样的大模型，大家都会制作视频了；有了Journey和Dalí，大家都会画画；有了Sona之类的技术，就可以写歌创作音乐。大家都这么说，但每当听到这话，我就会问，看完一部电影后，你能描述给我看你看到了什么吗？能说清楚吗？这事很难，但至关重要，需要练习。如果一个问题你都不能清楚表达，又如何能让大模型理解你的意图，为你服务？这是一个现实问题。</p>



<p>因此，在新时代，学好语文、英语，掌握沟通技巧，学会与人相处、协作，成为了学习计算机不可或缺的技能。</p>



<p>除了刚才我们讲的，要学习这些东西，然后还要学会与人沟通协作之外，AI对所有学计算机的学生提出了一个新的要求——要有批判精神。这个要求可能是我们上中学时不太强调的。为什么要有批判精神？因为AI大模型所给出的答案并不保证正确。所有的AI大模型底部都有一句话：“内容由大模型生成，不保证正确。”重要的内容，请自己去核实。当我们使用AI大模型生成了大量内容后，如果就相信它是对的，这是非常危险的。因此，我们不仅要有能力判断AI大模型给我们的结果是否正确，还要知道如何评价AI给我们的模型的好坏。毕竟，结果不是非黑即白的，同样的输出结果，我们可以评价其质量：“这个是5分的，那个是4分的，这个是8分的。”我们要能够识别哪个更好，并且知道如何获得更好的结果，如何通过反复迭代，最终得到最优解。这需要具备批判或甄别能力。</p>



<p>那么，总结一下，AI时代程序员到底学什么？首先，学习基础原理至关重要。如果没有基础原理，你就不明白AI大模型究竟是如何运作的，也不了解整个网络环境、数据存储等是如何运行的。</p>



<p>如果没有这些基础知识，直接去上手干活，这些程序员就没有价值了。他们跟那些从其他行业里转行过来的计算机操作者之间就没有区隔了。所以这个很重要。然后，第二个是要学习我们的逻辑思维能力，这个是必须要学的。接着，第三个是工程能力。所谓工程能力，其实就是如何用可以接受的成本获得我们可以接受的结果的能力。所有的结果都是有成本支出的，有时间成本、有金钱的成本、有人工，还有其他的一些算力等，这都是成本。那么，我怎么能够在里面得到平衡？我们能够让更多的系统搭配在一起，得到一个大家想要的，或者可以接受的结果。这是工程。然后，学习沟通与交流协作，学习逻辑思考与批判。AI时代，如果有朋友从现在开始要上大学，那么这是应该去学的东西。最终，我们再做一个总结。需求顾问时代真的可能已经到来了。我在上大学的时候，很多人就跟我说，我像是91年到95年上的本科，人家跟我说，未来就没有程序员了，未来叫需求顾问时代。什么叫需求顾问呢？就是我们做到用户的面前去，用户说：“我要这个，我要那个，这个东西要来三份，那个要来两份。”当这个发生的时候，我们要如何应对。</p>



<p>他会给我提出这样的要求来，然后我呢，应该听到这些要求以后，直接就把这个结果做出来，而不是说我听到这个要求以后，回去以后再做个半年一年的，然后再把结果回去验收。不是这样的，而是人家提完要求我就直接做，做完了就有结果了。那以前呢，这个是实现不了，但是有了大模型以后，这件事情有可能就可以实现了。软件呢，会重新变得完全可定制化，而非标准化。因为以前我们告诉大家说，写软件的成本是很高的，所以啊，软件的价值是靠重复的次数来体现。这话怎么理解？就是我写了一套软件，如果被100个人用了，那么是可以挣到多少钱，或者它的价值是怎么样的？如果被100万人用了，那么这个软件是有什么样的价值，这个是不一样的。所以，我们要尽可能地提高软件的标准化，尽可能写一遍让更多的人使用。而现在呢，因为有大模型了，生成软件的成本下降了，在这样的情况下，OK了，我们可以干嘛呢？为更多的人提供个性化和定制化的服务，这是一个新的变化。所以，最终的结论：AI时代，程序员依然大有可为。好啊，这一期节目就讲到这里，感谢大家收听，请帮忙点赞，点小铃铛，参加Disco讨论群，也欢迎有兴趣有能力的朋友加入我们的付费频道，再见。</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
