平凡之路——关于代码世界的构建 2018.5

(顺带说说编程语言)

这两天在思考一个问题,为什么我们所应用的操作系统、内核都开源了,还细心地为我们写了技术文档,铺设好了开发环境,我们还在强调自有的操作系统。

或说:核心技术没有掌握在自己手中,当别人(主要指美国吧?)不让用时,就只能扎起脖子没得用。

这是真的吗?

就拿Android来说,基于apache协议,若谷歌闭源,我们完全可以在闭源前的任意版本继续开发。差不多可以说,当下载了Android的所有源码,我是拥有了整个项目的处置权的,除了冒充那些代码是我写的以外。。。

我们会没得用吗?

或说:怕代码中有漏洞存在。

认真的讲,代码都在你眼前,还带有注释文档;你说。。。怕有漏洞,你的良心不会痛吗。就算有漏洞,你确定谷歌自己是知道的吗?

诸如或说吧,没有什么能站得住脚的理由能够清晰地告诉我,我们为什么费力不讨好的自己搞另外一套操作系统、内核?

那么,我们。。。不该自己搞一套操作系统、内核吗?

这个问题,我想回答这个问题。

做一个这样的假设,当前最新版本的Linux的内核中,80%的代码中国(公司、组织、个人等)贡献,我们会有多少对自主操作系统渴望?

再假设,每个Android版本发布,我们不是靠翻译人员对新版本做评估(评价/分析),我们会有多少恐惧?

这只是假设,也不必有答案。

我只是想表达:我们的恐惧,是因为我们在全球软件行业中扮演的角色。

我们集体擅长应用,而不擅长技术(集体。。。有点刺眼)。这当然并不是错误,但是“集体擅长”肯定是有问题的。

我们擅长在非自有技术上架设应用,然后产生价值;

在C语言的时代(并非说C过时,不想引起吐槽),我们可能起步较晚,我们搞C语言的应用;

后来变成了C++(可能C++不太称的上,但同样不想引起吐槽)、Java的时代,我们搞Java的应用,搞架构、软件工程;

后来又有C#、Node.js。。。好吧,后来有啥并不重要,重要的是我们。。。坚定不移的应用。

在Windows/Linux时代,我们擅长了在Windows/Linux上架设应用;后来Android和iOS打的火热,Win,我们擅长了在Android/iOS上假设应用;

后来还会有什么我并不知道,重要的是我们。。。坚定不移的应用。

就连小小的脚本语言,从Vbs、shell、python,我们都在坚定不移的应用

在世界更迭起起伏伏的浪潮中,我们坚定不移的应用着,仿佛是一批看客。

任他们Win、linux、C、Java潮起潮落,我只应用、应用、应用、应用。

其实我真的是认为我们在占便宜,并且还占便宜没够(比如经常盗版什么的)。

但是我觉着我们的恐惧与我们占的便宜似乎是同一个问题。

我认为,对于自有操作系统的渴望或恐惧,不是简单的什么什么技术;我觉着恐惧来自于OS公司、组织、人才的缺失。就算我们能够获得全部的源代码,带着说明文档的源代码,我们依然无法掌控它。

那么,我们不该自己搞一套操作系统、内核吗?

其实这个问题是一个陷阱。

我们该搞操作系统、内核。

但我们不该自己搞一套操作系统、内核。

我们该与别人一起搞操作系统、内核。

我们该与别人一起搞比之前更好、更先进的操作系统、内核。

我们若是能作为主导,跟别人一起搞一套比之前更好、更先进的操作系统、内核就更好了。

那么如何我们能搞得起这些基础的东西(不仅限于操作系统)?

首先要说的是,在应用下面的这些东西似乎真的没有什么能够短期赚钱的营生;不过一旦能赚钱也真是能躺着赚很多年,比如说微软用Windows卖License、Android作为谷歌的流量入口简直像是在往家里流钱一样、iOS更不必说。哦,linus好像没赚什么钱,但是红帽、SUSE。。。

我认为要搞起这些基础的东西来需要两件事:

一是能靠它赚钱

靠这些基础的技术来赚钱,应该要求我们的操作系统有足够的先进性吧,或是能解决某种深刻的需求。

就像C语言的时代,软件危机,于是Java/C++等开始风生水起。

移动端的交互方式更新,Windows不适应/诺基亚老土,于是Android和iOS开始攻城略地。

大数据开始兴起,于是不会python就像是傻子(比如说我)。

基础的东西很多时候真的很残酷,相比起应用:外卖送的不好可以合并、网约车开的不好也能合并、自行车共享不好也能被收购;基础技术路线被截断真的会死亡,比如诺基亚的塞班、微软的WindowsPhone。

机会不常有,但总有在其中浸淫多年的老油条能看到那条隐隐约约的路(于是我们需要老油条)。

同样想起某公司辞退老程序员的新闻,我觉着都混成老程序员了还要被辞退,这是混的多。。。*

老油条或许老,一直写代码;但肯定不会仅仅是代码。

二是靠它赚不来钱的时候

若谷歌是与微软的Windows打擂台而生,我敢肯定它活不到见iOS的那一天(不信你问问那个时代的乔布斯)。

我认为,若某个组织能发布能替代Java并且更优秀的编程工具,这个组织必然非常了解Java,甚至是非常多使用Java的。能更迭掉Java的组织中必然有极优秀的Java工程师,以及了解JVM的人。

当我们用Java,会不会有人停下来思考:Java的不能解决的问题在哪里,有没有更优秀的方案;JVM是如何工作的,有没有优化的空间(即便仅是针对某些场景)。

当我们应用Linux、以及开源社区的代码,我们是否可以为开源社区贡献一些代码,Linux也是有很多缺陷的,是否有更好的方案。

当然,这些都需要充足的知识,老油条估计也是这么炼成的。

所谓生态的竞争,在别人的生态中讨生活就是为他人做嫁衣。。。其实我们不必思考为谁做嫁衣的问题,当我们成为主导,别人的技术不就是披在我们身上的嫁衣么。更何况我们那么多应用,这嫁衣。。批的还不够厚实么。

我认为,本质上,我们确实正在竞争,并且我们确实全球软件行业中扮演着不怎么拿得出手的角色;但是这种竞争,并非是深刻的对立;其实是我们在技术实力的相互倾轧中,被碾压;别人或许并未举刀,但我们确实在疼。

都说仅有各种挑刺并不是好汉,咱也要有始有终,

我看到国家对自有核心软件的培育,但总感觉。。。差点

很多钱花进去了,出来的东西。。。

就是开发的人觉着很诡异,用的人同样觉着很诡异,

简单来说。。。就好像是在模仿什么。

没有先进性为前提,是不可能将现有技术迭代掉

不能将现有技术迭代掉谈什么自有核心

我假设我们有一个开源社区

就是从GPL的社区复制而来,或者某种演化而来,或是模仿而来

对国家关心的项目,如内核、虚拟化、OS等等,所有经过审核的代码的提交将会得到奖金

可以是个人、公司、学校各种组织。

我们有重复和先进性审查和互审机制

在这个社区,我们唯一的要求是:一切非代码的提交必须采用中文;

出现非代码的英文提交不在奖金范围。

写于2018.5

发布了24 篇原创文章 · 获赞 3 · 访问量 2344

猜你喜欢

转载自blog.csdn.net/ytfy339784578/article/details/103946285
今日推荐