底层开发性价比越来越低,基础软件的质量将会越来越差

2018-01-23 23:25:49 +08:00
 begeekmyfriend
这是我的一个预言,前半句是当前事实,后半句是基于事实推断未来无可避免的事情。

对于年轻人而言,底层开发收获与投入比重将会越来越低。很简单,柏油路都建好了,未来将不存在什么颠覆性的基础软件产品。Windows 不说了,就拿 Linux 内核为例,近来很多人都提出构建全新的,不再基于传统 Linux 的操作系统,包括 Google 在内的一些巨头蠢蠢欲动,现在看来也是雷声大雨点小。比如之前呼声很高的什么 Fuchsia 最近也没什么声音了,就算新兴 IoT 方面,实时仍然老牌 FreeRTOS 等为主,非实时也看不到取代裁剪 Linux 的可能。新的产品很有可能毫无建树,如果年轻人真的对底层开发感兴趣,那么他们最明智的方向还是去学习 Linux,并且将他们未来几十年的职业生涯寄托在这些老牌软件上。

显然具备这样热情的年轻人是有限的,他们天生敢闯敢拼的冒险家心态决定了多数人不愿意去维护前人花了数十年,累计几千万行的作业。如果不能将老东西们推翻重来,他们宁愿去开辟新的领域,以此作为属于自己的一片天地,正巧当今的商业资本对此也是喜闻乐见,一直鼓励他们这么干。这就导致了那些愿意留下来并心甘情愿默默为传统付出年华的人们得到的报酬总是不如前人那样多——干得好了那是前辈的功劳,干不好就需要勇于承担责任,包括被 Linus 为首的老家伙们训斥。当然细细追究起来,大多数情况下,这些训斥是正确的也是应该的,但是这显示了一个先兆,那些基础软件的补丁质量在逐渐下降,以至于老人们都看不下去了。

我们不能否认先辈们在软件工程上长年累月孜孜不倦的投入,取得的功绩以及累积的高水平,但是这种优良传统正在逐渐被侵蚀。年轻人不愿意再往底层投入,不在乎那些过时的成绩,对源码细节的探索也不再充满热情,他们不愿意去做“平行世界的守护者”。这并不意味着年轻人不具有高水平,而是他们追求自我,所谓“自我实现的价值”。很不幸,这些东西与现存的软件工程有着不可调和的矛盾。年轻人意识到如果他们留下来,也不太可能取得 Linus Torvalds、Jeff Dean 这些人当初的成就,这个世界已经太拥挤了。对于留下来的人来说,对于报酬的考虑似乎更加现实与理智。

我有时候也不免想象再过十年,Linus 等开源世界的群雄从决策者退下来之后,他们留下来的庞然大物会往什么方向发展。也许这根本不需要我操心,如今编程教育日趋完善,人才的供给源源不断,整个软件产业虽不能说饱和,起码也是相当成熟了。披荆斩棘的草莽英雄多已安然退居幕后,精力旺盛的新生代们乐此不疲地开着自家小汽车在柏油路上狂飙。丰富的资产仍然需要有人修桥补路,平行世界仍然需要守护者担当大任,但是这些人未来应该不会受到太多的关注,这意味着他们的付出可能得不到期望的激励。二十年前最优秀的人才都在指针和指令上绞尽脑汁,如今新来的人可能不再关注这些细节,毕竟这些承载着成千上万小汽车的老破柏油路不属于自己的产品,他们只想解决那些头痛的 bug,尽快交付过去,有时候就难免显得急功近利。他们提交的补丁受到老家伙们种种不待见,后者痛心地斥责前者的玩世不恭,前者内心却为后者傲慢的脾气深感憋屈。于是矛盾不可避免,日益升级,爆发冲突,直到拂袖而去,熟悉的一幕幕在邮件列表中日复一日地上演,留下的是源代码中不断增加的千疮百孔。

还记得经济学里“破窗效应”,就是不良现象的放任导致更多的破坏,这在软件工程中同样存在。我以为万物都会有自己的生命周期,但对于基础设施而言,这个周期几乎就是无限的,只不过内部将会越来越破败。这固然可以归咎于管理不善维护不周等人为因素,但对于自然规律,任何软件都逃不掉因果——除非自身不再进化,或者一直到人们实在无法忍受的那一天。幸运的是,无论开源软件还是商业世界,总有替代品,不过时机未到而已。人们不必担心有朝一日自己的生活受到毁灭性打击,平行世界的守护者们将会永远驻留。

深夜搁笔。
11470 次点击
所在节点    程序员
59 条回复
chenhui7373
2018-01-24 09:13:57 +08:00
底层可能还有物理
nicevar
2018-01-24 09:20:50 +08:00
历史发展就这样,有进步有所失,计算机技术的东西实在分布太广,隔几代很多东西传承不下去,老一辈退下之后,有些技术就渐渐被人遗忘了,然后后辈们重复的造轮子,这一点在最近几年的 js 上挺明显的,一些人写的新奇东西其实以前早就有了,只不过后来的人学习过程中接触不到认为很独特
现在的软件确实炫酷多了,不过性能和内存泄露问题就比较常见了,与十年前相比,在主流硬件配置上,现在的软件虽然易用并且设计合理,但运行体验普遍要差,因为现在软件开发普遍采用内存自动回收机制,早期的时候打 Java 口水战,内存方面一直都是喷点,后来 windows 开发也转向了 c#,mac 开始用 arc,好处就是开发速度快,问题就是运行缓慢内存泄漏严重,win vista 和 mac 10.5.7 就是分割点,进入靠硬件弥补性能的时代,特别是 mac,近几年软件内存泄漏已经不像话了,不泄个 10 来 G 内存都没人管的,所以在现在硬件条件支撑下是允许底层变差的,你看 google 自己的各种库内存泄露都不是什么大不了的事,别说第三方的应用软件了,所以 android 系统跑一段时间就跑不动了大家也习惯了,好几个 G 的内存呢,随便漏!这要是以前硬件资源有限的年代,分分钟就把系统搞趴下了,一个 xp 也就占用 100M 内存
qiukong
2018-01-24 09:20:59 +08:00
这年头确实没啥公司注重底层,像您那几千万条数据,一般起步公司也达不到,所以从来不注重效率优化问题。
begeekmyfriend
2018-01-24 09:35:23 +08:00
@nicevar 由俭入奢易,由奢入俭难啊
begeekmyfriend
2018-01-24 09:39:18 +08:00
@rogerchen 我没有小视任何人啊,包括年轻人,我的意思是说,当年轻人对这些基础软件没有归属感的时候,你如何期望他们兢兢业业打好补丁?老家伙是不一样的,这些软件是他们亲手打造,自然愿意用生命来守护啊
kyotrue
2018-01-24 09:46:25 +08:00
因为已经够用了,多的那点特性也可以其他方式解决,一点点性能损失问题并不大。
你要知道这是个生态系统,不是你想动就随便大动的,那么多业务在跑、那么多从业人员的培训。
就拿大家熟悉点的 Java 来说,虽然性能令人诟病,但是用得太多了,就算有个更好用性能很好的语言也不可能在很长一段时间内替换它了,所以 CPU 直接为 Java 做优化,就是这个道理
berretta
2018-01-24 09:47:25 +08:00
你在这里说没有用,这里很多互联网行业的受益者,屁股决定脑袋
junwuhui
2018-01-24 09:51:01 +08:00
只不过是这个时代的底层变了,现在的底层可能主要是一些云平台
402124773
2018-01-24 09:57:36 +08:00
我个人的观点是由于经济原因决定的。
底层工作工作机会比较少,很难去量化工作量,去展现工作上的贡献,自然会被忽视。
工作机会少,工资不如意,已有的人才也会转向其他方向,新手不会入坑。导致恶性循环。
毕竟国内很多年轻人都在为了房贷而奋斗。面向工资编程。
bestkayle
2018-01-24 10:11:55 +08:00
内容不说,感觉你的文笔太好了。
wizardoz
2018-01-24 11:27:17 +08:00
多虑了,市场决定一切。
要是软件的质量不够用了,自然有人出钱买质量够用的软件。有人出钱就有人去搞。高质量的软件就出来了。
rustkeyboard
2018-01-24 11:48:37 +08:00
LZ 有点悲观了,要涉及到底层开发,必须是当业内目前成熟的架构已经满足不了需求的情况下才会去考虑的。比如淘宝每年的双十一高峰期,巨大的用户流量和订单需求对系统的稳定性和安全性提出的超高的要求。淘宝团队因此而对架构做出的一系列变革和创新,从"两地三中心"到"同城双活",再到最终的"异地多活"。这些过程中,绝对有对底层的深入研究、再造和创新。
ryd994
2018-01-24 11:59:34 +08:00
底层本就很冷门,很少人学,很少岗位。但是只有基础知识最扎实的开发者才能做。硬件、算法、操作系统,都要非常了解,才敢动手。
如果你没读过 linux 源码,那你说这话不合适。
zhujiulin
2018-01-24 12:02:23 +08:00
底层并不少, 国内不知道, 反正国外年轻人基础扎实的很多
janus77
2018-01-24 12:24:36 +08:00
个人观点,做项目本来就是个工程化的东西,很多时候是需要考虑成本收益得失的,而不只是单一的做到极致。如果说单目标那是学术界的事,一旦大规模应用于工程界,必须考虑多种因素,甚至于为劣币妥协。这才是现实社会,不是纯粹理想的乌托邦
co3site
2018-01-24 12:45:24 +08:00
长远的眼光来看,这应该是个旋回。十年河东,十年河西
ae86
2018-01-24 12:47:16 +08:00
文笔不错!
htfy96
2018-01-24 12:48:37 +08:00
infra 不好做 学了那么多东西,校招按 R&D 招和 CRUD 一个价,整体比算法低了一档,还不如速成一下 ML 当调参侠
jejer
2018-01-24 13:02:00 +08:00
有趣, 想想好像的确如此
pezy
2018-01-24 13:10:36 +08:00
杞人忧天,据我所知,那些真正奋斗在一线做底层工作的年轻人,基本和老人们保留了同样的习惯:不在互联网上瞎咋呼,基本是透明人。(但不代表他们不存在啊。。。)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/425391

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX