有没有安全的工作?

作者: 阮一峰

日期: 2015年12月15日

如果你经常使用互联网,可能知道有一种东西叫做Flash。

它是一种软件,用来制作网页游戏、动画,以及视频播放器。只要观看网络视频,基本都会用到它。

七八年前,它是最热门的互联网技术之一。如果不安装Flash,很多网站根本打不开。那时还流行用它制作动画,随便一个作品,就有几十万、上百万的浏览量。电视台甚至开辟栏目,播放网上流行的Flash动画。各大互联网公司都有专门的Flash工程师,还是属于那种比较抢手、收入较高的工程师。我记得那个时候,社会上也有大量的Flash培训班,它们的招生广告都写着保证就业。

后来,Flash就不行了。2010年,乔布斯宣布,苹果手机不会使用Flash,因为影响手机性能。再后来,新的技术兴起,它就开始没落了。上个月,BBC发表一篇报道,名字就叫《Flash还能活多久?》。话音刚落,一周后,这项技术的拥有者Adobe公司宣布,放弃Flash这个名字,软件将重新定位,只用来制作动画。

说了这么多,我并不是感叹Flash这项技术的没落,这也是很正常的事,而是感叹那些从事Flash开发的工程师,他们该怎么办呢?你在一个领域钻研多年,都成了专家,突然之间那个领域过时了,你的所学所长没人需要了,那将是怎样的处境?

那些年里,我在上海遇见过一个朋友。他开了一家软件公司,专门面向海外市场开发Flash游戏。公司不大,十几个人,那时正是最好的年景,每个月都有几十万、甚至上百万人民币进账,看上去前景一片大好。可是,谁能想到Flash技术突然就会不行了呢?开始时,公司还能维持,后来手机游戏起来了,Flash游戏的市场顿时萎缩。我见过他的招聘广告,改招手机游戏的开发者。再后来,就再没听到过他的消息。

当一种技术消亡的时候,与它相关的工作岗位也就消亡了。这种事情在技术行业特别多,因为技术的升级换代太快了。

我再举一个例子。苹果手机出现之前,最流行的手机都使用Nokia公司开发的"塞班"操作系统。你可能还记得,它的典型标志就是"九宫格"菜单。那时,塞班工程师也是非常抢手的,彻底掌握它那一套开发技术,我估计至少要一两年时间。后来,智能手机流行,塞班一败涂地。2010年,诺基亚宣布放弃塞班,改用微软的操作系统。再后来,Nokia自己也没了,所有手机工程师都遣散了。我知道,Nokia中国有一个资深工程师,选择重进大学去读MBA学位。

试想一下,你花了多年的心血,孜孜不倦地投入和练习,终于掌握了一门赖以谋生的手艺,还进入了世界排名第一位的通信业跨国公司。就在你觉得人生终于有一点安全感的时候,一切就变了,几年之间,曾经的巨无霸土崩瓦解,不仅你的职位没了,更可怕的是,以前的产品已经没人用了,全世界现在不生产任何塞班设备。你的手艺的价值变成了零。

有人说,可以再学习、然后重新就业啊,塞班不行了,可以学习苹果手机开发。没错,说得完全正确。但是,你以前的积累没了,需要从零开始。跟现在刚刚走出校门的学生,站在同一条起跑线上,学习同样的东西。说实话,虽然你有几年开发经验,但很可能并没有那些20岁的年轻人学得快。在一个高速变化的行业,经验有时候不是帮助,而是障碍,因为以前的那套行不通了。退一步说,就算你重新学习了,但苹果手机的开发也在变,你得不停地追赶新东西 。一个人的人生,能经受得起多少次从零开始呢?

"终身学习"这个词完全没错,但是想通过"终身学习"保持职业竞争力,我觉得不太可能。

程序员,乃至其他很多技术岗位,其实是青春饭。只有底层的技术,还有一些稳定性,越接近应用层,技术的升级换代就越快。你学会一门技术,然后吃上三十年,这种事情越来越少见了。更常见的是,几年以后,你会的东西就淘汰了,你被迫重新学习新东西,或者重新就业。

为什么中国很少见35岁以上的程序员?因为他们上学时学习的东西都淘汰了,必须和年轻人一起学习新技术。你很难比年轻人更有竞争力,其中最关键的是,雇佣刚走出校门的学生,比雇佣你便宜得多。

其他行业的升级换代,不如技术行业那么夸张和激进。职业的安全感可以保持得更久一些,但远不是高枕无忧。技术正在取代人力劳动,比如财务会计这样的行业,随着电子支付的兴起,将来肯定不会需要这么多财务人员。"互联网+"从某个方面说,就是使用互联网技术取代一部分人力,更便宜地服务更多的顾客。

回到本文的题目,世界上有没有安全的工作?应该是有的吧,但真的不多。公务员可能比较安全,因为这个职业改变得比较缓慢,而且没有技术升级的压力。医生和律师,也比较安全,因为对于这些行业,经验很重要,但技术正在把它们的成本降下来。厨师和物流,也是比较安全的行业,因为技术再进步,也总需要人来做饭和送货,但是它们是纯粹的体力劳动,没有进入门槛,供给非常大,想拿到高工资不容易。

最终来说,人类社会的就业形态正在发生深刻的改变,"终生职业"越来越少了。每个人都应该尽早打算,如果明天你的职业消失了,你该怎么办?

[说明] 原文发表在《财新周刊》(2015年12月11日)的专栏。

(完)

留言(120条)

没那么可怕,没落了再学一门就可以了。个人认为,有经验的人学东西更快-_-,关键是要喜欢

我只是觉得厨师这个不太适合

个人感觉做应用层的同学比较被动,做底层的同学需要积累会持久吃香

想来想去,说的好像是Java。

所以做前端变化这么快的还是不如做老师教一成不变的知识好吧-_-

IT业就是吃青春饭的,跟民工妓女以及其他大部分行业都差不多。
比较好的是做投资行业,像巴菲特芒格都八九十了还能做,而且年龄越大,越了解人性,投资就做的越好。

阮老师,看到你最多发表python和js系列课程。我现在用的是php和laravel框架做后端,这样的话,是不是我选择的不是未来,我很担心被世界遗忘。能不能你指导下,看看那种语言和技术做web前后端最合适。不会被世界十年内淘汰。比如企业OA,CRM,还有开放的点评网站,OA等。PHP NODE RUBY PYTHON GO,mysql nosql?

我倒觉得,公务员更废啊。做程序员,现在至少还能积累算法和逻辑思维。做公务员,说死了出来就真的除了吃拿卡要其他啥都不会

应用层确实发展变动更频繁,但毕竟应用层需求也更多也更好就业啊,好的程序员都需要不断学习,了解学习更多的知识才是正常的。不要局限于一种语言。你不管什么职业只局限于一门手艺都是有相当风险的。

我早上还在思考类似的问题。我做了10年程序员,转行做HR软件系统设计。才发现过去10年虽说一直在HR系统这个领域工作,但对HR的了解太少了。现在在怀疑转行这个决定是否正确,又在怀疑如果重新回到程序员行当里,是否还能保持竞争力。没想明白。

这真是现在现在发表的观点吗?是不是显得太落后了。
能不能胜任一份工作只和人的能力有关系。。。和年纪一点关系也没有。一个没有竞争力的人,就算“早点打算”,换个职业就能好了吗?就算是建筑工人,他的工具也一直在更新,材料也不断在更新,最可怕的是不去学习。

Flash 确实不需要了,但是网页还在,网页上看视频看动画的需求也在并将长期存在,所以这个问题就看从什么角度什么高度看了。所以我一直认为只会一种语言的程序员一定不会是高手,只靠一个平台或技术或框架的程序员在技术上不会太有追求。

全栈是目标,前后都能搞就不会太担忧了,纯安卓或者iOS觉得比较担忧,前车之鉴。web毕竟这么久了。

10年前的delphi程序员今何在?

全栈是目标,前后都能搞就不会太担忧了,纯安卓或者iOS觉得比较担忧,前车之鉴。web毕竟这么久了。

41岁程序员路过冒泡。告诉你为什么中国高龄程序员极少。
1999那年,cnnic 中国互联网用户统计是30万。现在网民是几亿?
此年,我25岁正好大学毕业找工作中。年龄再比我大一些的人,如果是改行的,从头学起就难了。

从1998-2004之间入行的人,有能力或者有想法的,一般都升职了,或是改方向了。剩下还在coding的朋友,一般是心思简单、与世无争、也没太多奢求、和生活压力的人。
其中我还因病离开了此行6年,回来后,网页全变成了div+css的,重新学的jquery,还后端转前端,又做了个普通的码农。

送大家一句话:没有“终身学习”的习惯的人,就不要做it。
再重复一句:互联网行业,存在着大量难度不高,类似于木匠瓦匠的职位,只要你愿意可以干一生!而不是青春饭。

厨师,可以成为食神,煮出堪称火之艺术的菜式;医生,几乎每月都要考试;公务员,更危险,今晚打老虎,苍蝇也打;

这个问题值得思考,每过一两年技术栈就更新一次,所以要不断地学习。那么,年纪大了以后,还能不能保持这种不断折腾的心呢?

诺基亚又没有自己开发语言,塞班工程师无非用的也是C++ java这些,如果是资深工程师,我不觉得转型做安卓开发有什么困难的。 编程思路都一样,语言也一样,只不过多花点时间读读安卓API文档。

Flash不过是矢量图动画软件,Flash死了,矢量图又没有死,矢量图动画也没有死。 如果是资深的flash从业者,制作矢量图看家本领不会没有吧,那么随便哪里都能找到工作。

况且现在只不过没有人用Flash做界面,做视频播放器之类的东西了,网页游戏大多还是Flash啊。

大型页游用HTML5+JS显然不现实,前端小游戏也许还行,和后台频繁交互数据就得令寻方案了。 那么剩下的方案就只有websocks和Flash。websocks现在成功的案例实在太少,支持的浏览器也少,开发难度大,所以还是Flash占主流

引用shawn的发言:

……

这位仁兄分析的比较客观,我也觉得是,真正有能力的,有货的人不会为此而担忧,担忧的就是投机者

引用石樱灯笼的发言:

我倒觉得,公务员更废啊。做程序员,现在至少还能积累算法和逻辑思维。做公务员,说死了出来就真的除了吃拿卡要其他啥都不会

你这说的,真要做好公务员那是难上加难啊,一辈子做个普通公务员的那就是混吃等死的,干啥都没不行啊。能爬上去的99%都是人精啊

请问博主作了哪些打算,能分享一下吗?

还是一句话,是人去适应这个时代,而不是时代去适应个人。
有什么办法?
那就是人去主动调整自己。
怎么做?
1. 个人发展,还是终身学习。
2. 靠他人发展,开个小企业。
3. 靠资本发展,积极理财。

不同意楼主的换个技术换个方向,之前的积累就没用了,一切都从零开始了。楼主更多的是想说居安思危吧

引用lmax的发言:

我只是觉得厨师这个不太适合

很赞同,厨师并不是体力活。也许最低端不思进取的厨师是这样的,但是很多厨师还是一直在推陈出新,研制新的口味,新的做法的。

其实adobe还有那一套牛逼的工具,flash直接转html,引申出的createjs也算很好的工具吧。flash应该不会死

技术没落了,技术人才不会和初学者在同一起跑线上的,他们的技术经验、能力、思维甚至职场的生存能力、管理能力,是新人望尘莫及的…

不说未来,现在已经有做饭机器人和无人机送货了

技术更新换代快这个不用质疑,但是与之得来的编程思想逻辑思维却可以通用,语言是相通的,如果害怕不断学习那就要考虑是否要进这个行业

文章略悲观……

Flash永远不会死(当然我是从美术动画的角度看) 死的可能是Flash Action 3 这个语言…… AS本身是JS的一个子集 让位给H5+CSS3+JS很正常

“跟现在刚刚走出校门的学生,站在同一条起跑线上,学习同样的东西。说实话,虽然你有几年开发经验,但很可能并没有那些20岁的年轻人学得快。”

假如一个10年的美术从业者,思维套路依然和刚毕业的大学生一样,当然无法与之竞争。因为你的人力成本远高于对方。

事实却是一个10年的美术从业者如果依然没有转管理做投资,依然几十年如一日做美术。我敢保证他不会被刚毕业的大学生取代,当然某些逆天的天才不能比。拿我自己做例子,2010年之前我只会PS,Coreldraw做设计,2010年花费了3个月时间学习Flash CS4。2015年重回UI岗位,只花了3周时间学习Sketch。

应用层的东西变化快,太正常了。作为资深工作者如果发现不了底层不变的东西,那不如转行做买卖活着做忽悠,这两样来钱比辛苦做图做设计快多了。

知难行易

其实也没那么可怕,没前途的只是单一领域,一个人如果只会一样,确实没有抵御风险的能力,而且技术过不过时其实无所谓,早上还看到腾讯给QQ飞车做的宣传站,用的就是flash技术,很炫,气氛烘托也很好,所以不用那么悲观,事实证明诺基亚就是不行了,也没听说他们的工程师集体跳楼的,哈哈。反而是富士康这类公司要小心了,你只会单一技能,那抗风险能力必然很弱。所以多多学习,就算乞讨也能收入过万。

----来自码农届的乞丐

引用bjhhh的发言:

41岁程序员路过冒泡。告诉你为什么中国高龄程序员极少。
1999那年,cnnic 中国互联网用户统计是30万。现在网民是几亿?
此年,我25岁正好大学毕业找工作中。年龄再比我大一些的人,如果是改行的,从头学起就难了。

从1998-2004之间入行的人,有能力或者有想法的,一般都升职了,或是改方向了。剩下还在coding的朋友,一般是心思简单、与世无争、也没太多奢求、和生活压力的人。
其中我还因病离开了此行6年,回来后,网页全变成了div+css的,重新学的jquery,还后端转前端,又做了个普通的码农。

送大家一句话:没有“终身学习”的习惯的人,就不要做it。
再重复一句:互联网行业,存在着大量难度不高,类似于木匠瓦匠的职位,只要你愿意可以干一生!而不是青春饭。

“但是,你以前的积累没了,需要从零开始。”这句话是有很大问题的,所谓的积累没了只是这个领域的知识没有商业价值,但不代表使用这套方法论去学习和实践类似的相同领域,这是思考问题,解决问题的方法的积累。

关于方法的积累,是不会消失的。

程序员也不是青春饭,刚毕业的白纸,和写到40岁的程序员,那生产力,那代码质量怎么可能是一样的?

更优质的程序员,早已不是Work Hard,Work Smart才是王道。

flash确实没落了,但是依然有很多人在靠它闷声发大财,主要是前几年页游太火推高了,其实现在flash才回到原本,因为他们来就是一个小众技术

不管怎样 至少现在不后悔

其实我想问个题外话,创意共享3.0许可证 这是什么

只要基础扎实,别的不是问题。曾经看过Compiler Design in C一书作者Allen Hollub的网站,他说现在也做些web开发,to keep sharp

阮老师很多技术文章我觉得都很好, 也许有些人批评不够深入,但至少从入门的角度, 讲得很清楚,这已经很了不起。

但是, 这篇文章错得非常离谱了。 真的是门外汉在猜测。 为什么这么说?原因是,对于软件开发工程师来说, 学习一门具体的语言和具体的技术,只占了很少一部分时间。一个软件开发工程师最大的价值,并不是他掌握的某一门语言和相关的API的熟悉,而是软件开发中的一些基础和普遍的东西, 比如模式的运用,分析能力,分析方法,查找问题的能力等等。

所以有句话说, 好的程序员与差的程序员的效率差别可以有100倍。

所以老程序员完全不担心技术的更替。 本人工作13年,一直是工程师。

不需要在乎技术淘汰的多快,职业有多么不安全。

只要喜欢。只要做出来的产品有意义。

境界不同,看问题的角度会完全不同。

我觉得这篇文章有失偏颇,因为作者看不到技术背后的真正推动者还是人,我不知道年纪轻轻的人为何要永远去做老一辈所制定的一切规则,他们不如说是既得利益集团。长江后浪推前浪,总不能让你一辈子独领风骚吧。

早就说学习型社会,学习意味着适应与进化。禅者的初心要你不要像专家那样心里缺少可能性。

经典问题:35岁以上的码农都去了哪里?
青春饭啊,不知道还能吃几年。

无法苟同。
1.青春饭的定的太武断了。关于35岁程序员的问题,并不能充分证明你的观点。软件开发在中国大行其道才几年?
2.flash的例子,用得也不太恰当。技术从来都是有传承的,只要它的理念有优点,就一定会在别的语言、别的领域有所遗产,比如angular继承了flex双向绑定的衣钵。如果真的是在flash/flex浸淫多年的高手,于adobe air app开发、 html5 svg、angularjs也注定还会有所建树。
3. 还有经验是阻碍的观点,最多是个例吧,反正我是没遇到过。如果一个人,因为经验阻碍了新知识的学习。那绝不是经验的错。而是自大,自满。

程序员要做出自己的产品,管这个产品用什么语言、环境、库、框架、API实现呢,最重要的是产品的功能、服务,而不是实现它的方法。比如,我现在就放弃boost、stlport、C++,完全改用glib2了。

文章说了这么多,等于还是没说。

人无远虑必有近忧,阮老师这个主题其实蛮好的,起码我是为之一振,让我能够更多的去思考和规划来前的学习路线。

作为一个做了6年的phper,危机感一直比较强,经常想以后能做什么技术,自己单干可以做什么产品,目前市场上还有什么没有做,什么还可以做的。
直到今天才发现,这不就是需求吗,稍微有危机感的人可能都有这个困惑。
于是就注册了个域名,itzsm.com(今天注册的),it做什么,想解决这个问题。
注册域名后,刚好来阮老师博客看到这篇文章,我更加有信心了。

引用Alu的发言:

IT业就是吃青春饭的,跟民工妓女以及其他大部分行业都差不多。
比较好的是做投资行业,像巴菲特芒格都八九十了还能做,而且年龄越大,越了解人性,投资就做的越好。

投资行业入门的门槛也高呀, 没有第一桶金, 怎么进得来这个行业

楼主不要误人子弟了可以么?一个语言吃30年饭,这样的人只有两种,精英级专家,垃圾级烂货.
没见过那个程序员只熟悉一种语言的,过多的不想说了,楼主完全不懂,也没从事过it行业,自己在那乱猜.

我目前在学习Android,不知道Android还能存活多久

我有点武断的猜测,这个时候就显示楼主的基础不够和对这个行业理解不深了。
建议从国外的计算机科学概率、算法、编译原理、计算理论等学起,完善一下知识结构。

上面打错了,是“概论”。
我也是码农,建议看一篇叫做 计算机在做些什么:建模、连接、交互利用 的文章:
http://blog.jobbole.com/22700/
抽象、算法、概率这些东西才是计算机科学的核心。

阮老师,最近几乎天天来看你的博文,非常理解你的心态,这篇博文道出了我的心声,我也常常在想,虽然在前端领域我已经是大妈级的人物,可是后面还有漫漫人生,究竟要何去何从呢?可能好些人还年轻,保持着激情,可能好多人没有孩子,不用每天陪孩子做3个小时的作业,所以不理解我这种苍凉的心态。

记得以前看到一篇文章说,传呼机的时代过去了,那些接线员们也就没了工作……同时有人在那个年代选择学习修传呼机,现在被当做笑话来听。传呼机都没有了,这门手艺又有什么用呢…… 时代变化的太快,可能越是某项高科技的技术性的工作,越是不安全吧……

引用四不象的发言:

10年前的delphi程序员今何在?

在写java。考虑两年内再学一门语言

阮老师有些偏激了,个人觉得,目前C#做了快6年了,虽然windows平台一直在互联网行业不景气,但是看着网上这么大牛,还是觉着自己要学习的东西有很多很多。毕竟语言层面的东西大部分是区别在与语法,熟悉语法的话也许只需要几天就可以搞定了,重要的就是框架所带来的api和思想。

真是误人子弟,这就像学英语,用英语书写,和用英语写散文,和用英语写数学论文能一样?编者根本就是站在门外妄加猜测,不懂计算机老站在一个旁观者角度对别的行业瞎评论什么,多少学生被你们这种文章影响的干了别的行业,不懂就别一副把握全局的样子胡言乱语

对阮老师这篇文章里的很多观点并不赞同。

观点非常不赞同,flash只是表层。
就好比特种部队的人,使用的枪支型号换了,是枪支淘汰了,而不是人。
军方更看重的是人的素质、应变的能力、曾经处理过那么多cases积累的经验。
工具换一下,算个什么事儿啊。

最近我们从svn换成git了,配置管理员就要淘汰了要换一批吗?

达尔文大叔已经说得非常清楚:“物竞天择,适者生存”。这说明,变是一个不变的真理。关键是如何把握变革?世界上,没有好的职业,也没有坏的职业。所以要用开放的心态去历练,如果你没有不同的经历,可能你会拒绝变革。如果角度改变,思想改变,我们看到这个世界是非常不一样的。

引用高远的发言:

达尔文大叔已经说得非常清楚:“物竞天择,适者生存”。这说明,变是一个不变的真理。关键是如何把握变革?世界上,没有好的职业,也没有坏的职业。所以要用开放的心态去历练,如果你没有不同的经历,可能你会拒绝变革。如果角度改变,思想改变,我们看到这个世界是非常不一样的。

阮兄只是提醒大家,做任何事情要有洞见和激情。

一个技术衰落了、消失了,很多人失去职业,但是和天灾人祸(地震、海啸、改朝换代)相比要温和多了。
唉!!!脑子有点乱,想起了好多:49年后的地主;当年“下岗”的工人;工业革命时工人砸机器;很多人无法接受达尔文的“物竞天择,适者生存”进化论;杨慎的《临江仙-说秦汉》;飞机舷窗外那安静的大地;飞船上看到的安静的地球景象。。。
一句话:“是非成败转头空,一切都在笑谈中”

感觉这个财经报道可能误会了程序员,如果说是北大青鸟出身的程序员,倒是有可能换行业后起步稍稍困难点,你要北大出身的程序员……底子厚那种,估计转换之后压力也不会很大吧。毕竟计算机技术里面很多就是一种思想的实现。
一门开发语言或者框架,学会语法写个helloworld并不难,难的是配套知识/思想和实践过程中的解决思路。恰好,有相关经验的情况下,后面两种更容易掌握。

我不同意您的看法
像flash语法学起来一个月搞定,里面的算法经验才是最宝贵的,
换行之后不过就是学个语法罢了

引用Quon的发言:

这真是现在现在发表的观点吗?是不是显得太落后了。
能不能胜任一份工作只和人的能力有关系。。。和年纪一点关系也没有。一个没有竞争力的人,就算“早点打算”,换个职业就能好了吗?就算是建筑工人,他的工具也一直在更新,材料也不断在更新,最可怕的是不去学习。

不是不去学习,而是没有时间精力只学习技术。
随着年纪增长,要学习生活,学习人情世故,学习自然,学习。。。
要学习的东西太多,必要有所取舍。

非常同意阮老师的这句话,觉得全文想表达的主要也是这个意思:
“"终身学习"这个词完全没错,但是想通过"终身学习"保持职业竞争力,我觉得不太可能。”

不是通过"终身学习"保持职业竞争力, 如果把 "终身学习" 当成一种 "办法", 永远无法保持职业竞争力.

如果把 "终身学习" 当成一种爱好(像麻将和网游那样的爱好...) 则你不需要去保持什么职业竞争力, 你一直都具有竞争力.


我不认可年龄大了, 学习能力弱的说法, 你有更多经验和积累, 你的学习比新人只会更有效率, 那么问题就变成, 一个更高速学习,但是时间更少(因为被家庭什么其他事情占用了)的人, 跟一个学习不够高速但是没事折腾自己通宵熬夜学都没问题的人, 哪个学的快的问题. 这就不好说谁快了, 但是另外一方面被忽略了的事情是, 一个年龄比较大经验比较多的人, 花在工作上的必要时间, 比一个新人要少得多, 所以实际上如果以终身学习为爱好, 你的时间并不比新人少.

举个例子, 一个刚毕业的人, 一天可能需要用6小时来完成自己的工作(还有两小时你懂的....如果加班的话,还有n小时在浪费时间大家都知道加班不会干更多事情...) 而一个工作10-15年的老码农, 一天花在完成工作上的时间一般不该超过1-2小时.....即使他的工作价值量是前者的10倍(因为他可以节约50-100倍时间) 剩下的六七个小时, 不管是看新闻也好, 在qq上跟人瞎扯淡也好, 其实都是在学习....

其实不太赞同阮老师的这篇文章的思想,人是社会性群居动物,工作大部分都是面向他人的。技术的确是日新月异,但是要抓住那些不变的东西,这些思想才是核心竞争力,比如管理能力,工作阅历都是竞争力的体现。

世界是变化的,没有不变的东西,如果世界不变 那可真会令人窒息。其实我们找的不是什么外界的让你有安全感的东西,而只是我们内心的安稳,只有内心强大起来不怕任何东西才能得到长久的安宁。不要为了内心安稳而选择安逸 安逸不能给你保护,给你的只是随时都可以消失的临时冰块 唯有在痛苦中成长起来的心灵才不会畏惧
我们真正所希望的 : 不是为了安宁 而是为了经历! 经历才是人生的真意

不太同意本文看法。因为当学习能力具备后,一门新语言学起来真的很快,可能只需要几周时间。但是设计模式、算法、体系结构、架构设计需要长时间的积累,没有捷径。

很多近几年火的思想(比如云计算、分布式、机器学习等)60、70 年代就有了雏形和算法,只是限于计算能力当时无法实现。Python 这门看似很新潮的语言也有几十年的历史了。另外越小众的语言,薪资也容易很高,因为旧系统需要维护,却很难招人,比如 COBOL 等。

做计算机的过程,如果深入,不可避免要提升英语水平。英语是不会过时的。

需要担心的倒是『全自动编程技术』,那时候给出需求即可产生代码,完全不需要程序员的参与。不过,凭借自己积累的学习能力,学其他也很快的。

老师啊,我也觉得做程序员的被动技能就是对脑力的训练和保持学习的本能。

引用Kyle的发言:

需要担心的倒是『全自动编程技术』,那时候给出需求即可产生代码,完全不需要程序员的参与。不过,凭借自己积累的学习能力,学其他也很快的。

...全自动编程技术也要程序员维护的啊 不知道有什么可担心的 与其担心这个不如担心人工智能消灭人类好了...

flash程序员可以转做webgl什么的,如果本身功底深厚,物理图形处理什么的也都是相通的
本身的经验可以作为学习下一项技能重要的加速度.
多年经验的程序员无论学任何新技能,都比毕业生要快多,还有知识转换率,架构理解等问题.
如果公司不认同这些,那就让它认应届生好了呗,咱换到认同自己的空间去.
不能失去学习之心

引用王天的发言:

没那么可怕,没落了再学一门就可以了。个人认为,有经验的人学东西更快-_-,关键是要喜欢

但是您不觉得上了年纪的人学习能力确实不如年轻人么?

引用竞折腰的发言:

不说未来,现在已经有做饭机器人和无人机送货了

无人送货机我感觉是可行的,毕竟不需要太多的用户体验,但是做饭机就不一样了,民以食为天,吃排第一位,需要较强的用户体验,谁要冷冰冰的机器人帮你做饭,而且口味很难定位。

庄子曰:夫天地之应因于事,事应于变,变无常时。是以事不可预设而变不可先图,犹痛不可先摩而痒不可先折,五味不可以升斗和,琴瑟不可以尺寸调也。故至微之微,微不可言,而至妙之妙,妙不可传。

人算有时候真不如天算,不如找一个自己感兴趣的行业一直做.哪怕技术没用了,哪怕岗位消失了,但是业务知识和抽象的数学知识并不过时.依然可以在行业内做指导.

引用四不象的发言:

10年前的delphi程序员今何在?

实际是很多内陆的城市还有在招delphi程序猿,中国国情太特殊

it行业就这样,至于文中提及的几种职业比如医生,会计师,那可是经验丰富退休都会返聘的根本不用愁这些

引用Alu的发言:

IT业就是吃青春饭的,跟民工妓女以及其他大部分行业都差不多。
比较好的是做投资行业,像巴菲特芒格都八九十了还能做,而且年龄越大,越了解人性,投资就做的越好。

研究人的行业技术革新是非常缓慢的,研究自然的就快很多,像计算机这种人类创造来的东西,然后再上面再建立技术,这种就更快了。所以这篇文章有点太站在计算机技术领域来看问题了,举个例子,就拿同行业的产品经理岗位来说,基本不存在博主说的问题,对他们来说,行业的变迁是非常漫长的时期,即使变迁了,掌握新的知识也非常依赖旧的学习方法和经验,不是刚走出校门的学生能随便代替的

引用lifr的发言:

阮老师很多技术文章我觉得都很好, 也许有些人批评不够深入,但至少从入门的角度, 讲得很清楚,这已经很了不起。

但是, 这篇文章错得非常离谱了。 真的是门外汉在猜测。 为什么这么说?原因是,对于软件开发工程师来说, 学习一门具体的语言和具体的技术,只占了很少一部分时间。一个软件开发工程师最大的价值,并不是他掌握的某一门语言和相关的API的熟悉,而是软件开发中的一些基础和普遍的东西, 比如模式的运用,分析能力,分析方法,查找问题的能力等等。

所以有句话说, 好的程序员与差的程序员的效率差别可以有100倍。

所以老程序员完全不担心技术的更替。 本人工作13年,一直是工程师。

这位说的太对了,语言和框架的学习在实际工作占用的时间真的不是大头。要真的比的是谁学习新技术最快,那为啥BAT的技术基干,中干都是30+的人?且不论学习能力,解决问题能力这些更深层次能力是无法短期学习获得的,就设计模式这个大家天天打交道的家伙,理论知识就只是一小部分,大部分都是实践获取,维护旧代码看软件如何腐化,然后重构后重生。新来的码农花3天撸出来的代码,日后花1,2周来填坑的事情太常见了

应用层的东西时刻都在变化,作为一个从业者你应该拥抱变化。其实flash的消亡不是空穴来风的,这一切都是由先兆的,如果说那些flash工程师真的因此丢掉了饭碗,我只能替他们感到惋惜,一方面是他们曾经创造了很多价值,flash的确给这个世界带来了不少欢乐,至少给我一生带来很多乐趣,我的童年就是在flash游戏中度过的;另一方面是惋惜他们作为一个上道的,甚至是资深的工程师了,却仅仅专注于一种技术,这放在20世纪还勉强说得过去,但放在21世纪难免有些可悲和可笑。这是一个互联网+时代,资本市场空前的庞大,市场需求瞬息万变,作为一名技术人员,你不能再纵向提高自身能力,应该,而且是必须要横向拓展一下自我,如果每个人都有这种意识,我觉得就不会存在什么安全不安全的工作的说法了。说到底还是这个社会太浮躁了,中国人真的迫切需要静下心来看看书,思考人生。

一件事物的新生,就必然会有一件事物的消亡!
这就是创新的力量,代表着社会的进步和发展!
So, we have to keep up with the time!

软老师保重身体,最近看你脸色不是很好,加班要有节制

并不会出现“技术是青春饭”这种事情出现。
更多的是,可靠的技术是一门堆时间“经验饭碗”

flash的actionscript,我也是曾经写了很久。同样都是ecmascript,后来学习javascript和其相关的内容就很容。

而且新技术都是旧技术变革出来的,不是蹦出来的。互相之间都有衍生的关系,并不是那种门槛很高。学完php转到python只是分分钟的事情。
就像
maven gradle composer gulp grunt 几乎都是同一种东西的变种。

理念和概念是相通的。

1、很容易切换技术
2、具体使用轮子很容易学习,背后的理念才是困难的部分
3、软件设计经验和对问题的敏锐感才是关键
4、可能解决问题的思维方式才是最重要的

貌似很多技术大牛最后都做了教授,人类的知识传承还是需要人类自己来做的。

我认为没有安全的高薪工作不是坏事,这样只要努力都有回报不是很好.不会有人靠着邪恶的制度.

科技的进步,以及自由的思潮,会让社会更加富有和公平. 只要社会没有攀比的风气.人人都会很幸福.

写得不错,应该说每一位刚刚步入这行的程序员最初都会有类似这篇文章的困惑。

在回答这个问题之前,我想先把语言进行一下分类。
就程序语言的社会性而言,主要可以分为两大类:
一类是面向科研以及教育的语言,比如FORTRAN、C、LISP等等。
还有一类是面向市场的语言,比如VB、JAVA、C#、WEB、DELPHI等等。
前者较为稳定,但薪资待遇较低,发展前景有限。通常十年甚至更长的时间内才会有一次标准的更替。
后者背靠大公司,工资待遇较高。但竞争激烈,更新频繁,有的语言标准每2-3年就会有一次变化。

那么回到文章的标题,有没有安全的工作适合程序员呢?
我个人认为是有的吧,但要看你的兴趣和发展方向。如果你是院校的教授、国家科研机构的研究员那么没什么好担心的,非常稳定。
又或者你所处的是世界五百强企业(主要是美国),那么也没什么好担心的。因为这些跨国巨头们实力雄厚,有自已的技术标准。
它们能够比市场提前掌握整个行业的技术发展方向,在这些企业做事你也可以放心。当初带我入行的前辈十多年来一直在IBM,通常在大牛们出书以前就已经熟知了新技术的标准,并且在内部运作了许多年。
除此之外,其它的企业或多或少都面临一些不确定性。这种不确定性通常能让企业一夜之间从天堂掉入地狱。像Novell、Borland、Nokia等等许多以前出名的公司皆是如此。

为什么会这样?说轻点是整个行业的发展方向不在我们手里,因此在国内从事技术开发总是有种被人家牵着鼻子走的感觉。说重点则是政府几十年来的不作为,上面的几家势力之间达不成一致,地方上的保护主义和以夷制华思想又浓厚。
有人总是想着能够通过博弈来赢得筹码,可换来的永远都是落后市场主流技术十几年没有任何实际价值的东西。真要下定决心了哪会到现在连自己的操作系统,自主的CPU和圆珠笔芯都没有。。。

引用许大地的发言:

我目前在学习Android,不知道Android还能存活多久

至少十年内你不用担心,其实你更应该担心的是Java能活多久。国内使用Java的人数众多,但google和oracle之间的官司让一切都充满着不确定性。

引用chonder的发言:

作为一个做了6年的phper,危机感一直比较强,经常想以后能做什么技术,自己单干可以做什么产品,目前市场上还有什么没有做,什么还可以做的。
直到今天才发现,这不就是需求吗,稍微有危机感的人可能都有这个困惑。
于是就注册了个域名,itzsm.com(今天注册的),it做什么,想解决这个问题。
注册域名后,刚好来阮老师博客看到这篇文章,我更加有信心了。

PHP仍然是这个世上最好的WEB开发语言,开源且类库众多。出于平衡,没有其它同类性质的语言能完全替代它,但竞争对手还是有的,如Node.JS。

还是看人,看透技术,早日走上管理岗位确实是大多数程序员该走的路,除非能成为自己领域内的大牛,在业内响当当,不用担心工作问题。照目前的情况来看,前端开发是相对安全的,至少10年内不会有问题。

引用骚年,来一发吧!的发言:

至少十年内你不用担心,其实你更应该担心的是Java能活多久。国内使用Java的人数众多,但google和oracle之间的官司让一切都充满着不确定性。

还有OpenJDK

凡是能被淘汰的知识技术 必然都是与基础民生无关的东西 从另1个方面来说 淘汰的越快 说明根子越不牢靠 至少在电子方面...我完全推导不出最基础的是那方面内容

老师讲的真好

看完了以上所有的评论。很多人都不同意博主的观点,可惜事实的情况正如博主所说的那样,特别是当今中国这样的浮躁的氛围下。这里面发表观点的基本上都是程序员(本人也是),可能偏向于自我安慰一下,但是我认为这不解决问题,但是决定程序员工作稳定的大部分是企业的老板和HR那些人,这些人可不会看着我们这些程序员因为一种技术淘汰了失业了就会根据大家发表的这些“技术会变化,思想不会变”之类的话而可怜你,同情你而录用你。这些人可是实际的很呢,那管我们死活。

引用小媒体的发言:

还是看人,看透技术,早日走上管理岗位确实是大多数程序员该走的路,除非能成为自己领域内的大牛,在业内响当当,不用担心工作问题。照目前的情况来看,前端开发是相对安全的,至少10年内不会有问题。

前端开发的问题是每过一年都像是到了一个新的行业

@bjhhh:

这个励志!

nodejs有一个致命的弱点,就是学习难度大,php之所以流行,就是因为简单,容易找到廉价的程序员。而这又反过来导致php的需求越来越大。

都学学传统文化吧,真正认清楚人 需要的什么,合乎自然道理,就没什么疑惑,或者淘汰、技术好坏之分了!
程序员只是一种吃饭的工种而已,和各行各业都是一样。如果你做人基础不牢固,是非不分明,分不清正邪,到头来看看一切的努力都是笑谈,或者你越加班,越拼命努力工作,越空虚,你要想想是不是你努力的方向走错了

- -如果按照年限来说..我也应该算是一个资深的flash工程师了...09年入行,做到现在来说,7年了,是看着flash走向辉煌,又进入了低谷,甚至,2 3年前几乎没有新人来学这个技术了,但是我现在还是靠flash活的好好的,只不过从游戏开发迁移到了视频开发,换个角度,路会更广,现在不紧做flash的视频点播直播,也会去做流媒体服务器和web端的h5点播,和web的p2p,感觉比以前活的还滋润了..

人要跟着潮流走才不会被潮流所湮灭·

是浪都会被后浪拍死在沙滩上,人也不如此

"为什么中国很少见35岁以上的程序员?"

中国互联网从兴起到现在本来也就20多少年的样子啊。

引用Tan_c的发言:

...全自动编程技术也要程序员维护的啊 不知道有什么可担心的 与其担心这个不如担心人工智能消灭人类好了...

自动编程是迟早的事情,产品画一个原型,设计师做几个界面,然后机器自动编出程序来。
这是完全可能的,而且正在发生。像易企秀、初页这样的h5展示网页就是一个例子,你完全不需要懂编程,而且做出来的效果还不错。虽然功能很简单,但以后肯定会更复杂。
那么问题来了,程序员还能干嘛?至少大部分都会失业吧。

引用匿了吧的发言:

我早上还在思考类似的问题。我做了10年程序员,转行做HR软件系统设计。才发现过去10年虽说一直在HR系统这个领域工作,但对HR的了解太少了。现在在怀疑转行这个决定是否正确,又在怀疑如果重新回到程序员行当里,是否还能保持竞争力。没想明白。

以为你管理国家的阶层都是傻子吗?恢复这种文章还这么大怨气,真是…

有经验者还是有其优势的,尤其是广度和深度都可以的资深工程师。不过,这又回到那句话了--“终身学习”。不但要终身学习,还要具备很强的快速学习的能力。而有经验者,又如练就了九阳神功,一通百通,学习新技术会比毕业生快的多,只是时间未必有毕业生那么多。
从我接触到的例子来看,真正能静下心来去搞技术的人,决不会饿死的。40岁左右的Architecture认识好几个,而老美那边五六十岁的Architecture也有多位。
对技术有兴趣、愿终身学习、能快速学习、具备强逆商,就能在技术上站很久。只是这样的人不多吧。
当然,本人并不认为不走技术路线就是错误的。转型管理也不错,甚至Plan B,都不错。

关键还是要静下心来学东西吧,现在都这么浮躁,没几个静心做事

技术虽然一直在变化,但方法思路是相通的。

逃离舒适区,抛掉安全感。

保持危机感。

引用四不象的发言:

10年前的delphi程序员今何在?

转c++了

引用神剑的发言:

看完了以上所有的评论。很多人都不同意博主的观点,可惜事实的情况正如博主所说的那样,特别是当今中国这样的浮躁的氛围下。这里面发表观点的基本上都是程序员(本人也是),可能偏向于自我安慰一下,但是我认为这不解决问题,但是决定程序员工作稳定的大部分是企业的老板和HR那些人,这些人可不会看着我们这些程序员因为一种技术淘汰了失业了就会根据大家发表的这些“技术会变化,思想不会变”之类的话而可怜你,同情你而录用你。这些人可是实际的很呢,那管我们死活。

你说的很对,我也是看完了所有评论。大部分人说的都很对,确实是年纪大了积累了更多的深层次的内容,不是年轻人可以轻易达到的。但是关键是工作中多数需要的只是一些能干事的写些业务代码的人,需要架构师、设计模式、算法什么的毕竟是少数。而且老板们还非常喜欢跟风,一旦出了新的技术就需要立即追上。面试时非常明显许多人都会带着偏见问你知不知道新的框架,不知道就是守旧,不会用就是落伍。我个人是学习iOS的,12年就搞了,当时资料并不多,等资料多起来的时候我发现随着苹果本身的完善我浪费了很多时间去理解它后来淘汰了的东西,浪费很多工作时间去做它后来修复掉的东西,而那些年轻人却可以轻易地超过我们。不管怎么说,站在巨人的肩膀上,那些曾经的巨人就会变成矮子,虽然自我安慰也没用。只能说努力让自己成为无法替代的人吧,然后找个养的起你的资本家。

还好我选择了挖掘机专业

引用zhaoqize的发言:

还好我选择了挖掘机专业

兄弟, 你蓝翔哪个班的?

还是多学习吧,这不是一小部分人的问题,而是绝大部分人的问题,很多人都要面对,从这个方面来讲,大家其实还在一个起跑线上.关于如何应对,个人认为开阔视野,其实几乎所有的事物都在变,差别在于变化周期的的长短而已.

只是学习一种框架或者局限性很大的开发语言,就业面肯定会受到限制

努力,奋斗。。。。。。。

引用许大地的发言:

我目前在学习Android,不知道Android还能存活多久

要死还早着呢

看来大多数程序员还是不依赖资本家的,思维都比较正常。。。看了偶尔几个奇怪的程序员的评论。。。这个资本家不要就去那个资本家呗,实在不行自己开公司,真不明白,有钱有技术,你怕啥呢?

引用神剑的发言:

看完了以上所有的评论。很多人都不同意博主的观点,可惜事实的情况正如博主所说的那样,特别是当今中国这样的浮躁的氛围下。这里面发表观点的基本上都是程序员(本人也是),可能偏向于自我安慰一下,但是我认为这不解决问题,但是决定程序员工作稳定的大部分是企业的老板和HR那些人,这些人可不会看着我们这些程序员因为一种技术淘汰了失业了就会根据大家发表的这些“技术会变化,思想不会变”之类的话而可怜你,同情你而录用你。这些人可是实际的很呢,那管我们死活。

你的死活请自己管。。人家又不是做慈善的,需要同情的话建议去做乞丐那行,肯定不会被淘汰,不过乞丐工具也会更新。。可能你会思考会不会因为不会用新工具而被淘汰。。。

『程序员,乃至其他很多技术岗位,其实是青春饭。只有底层的技术,还有一些稳定性,越接近应用层,技术的升级换代就越快。』

我觉得这话说的是在是太偏颇了。

我觉得很多人,真的不知道软件工程师和程序员到底是什么样的人。他们其实是用软件解决问题的人。技术对于他们来说,从来都不是问题。我工作15年了,一直在从事软件开发。用过的编程语言多如牛毛:java,js,python,php,android,c++,scala,clojure,c#,go。这些编程语言,我不敢说我都精通,但是有一点我需要说明的是,使用编程语言写程序,的确是有非常非常大的共通性的。

这个共同性是什么呢?其实就是一句话,如何用最少的代码来写出最清晰的程序。

除了编程语言,我使用过的平台也很多,不一一列举了。

编程或者软件开发是一种应用科学。并不是艰深的理论研究,它所用到的理论,基本都都是别人的。比如我们实现计费系统,计费的模型是来自于数学的。


而且,我们绝对不能小看人的学习能力。不要把人当做一成不变的机器设备来看待。人的生存,适应能力,学习能力真的十分惊人。不要老觉得我们会被机器淘汰,机器只会解放我们,而不是淘汰我们。

我的看法就是,科技的发展,其作用和推动力,就是对人类的解放,使得人类能够不去做那些无聊的,重复性的,机械的劳动,而真正去发挥人类的长处,去认识和改变世界,这才是我们人类的使命。

而且人的创造力也很惊人,人的知识积累也很惊人。

总之,我们不要自暴自弃,不要莫名其妙的担心未来,我们要不顾一切的前进。。。

唯有变,才能顺应时代的潮流。
在信息革命之前,人类发展的太慢了,所以,有的可以一门手艺吃一辈子。
信息革命后,时代的发展就像坐上了高铁一样,要想不在拐弯的时候被甩下车,那就得抓紧嘞!
还有新的加速剂,AI

"物流,也是比较安全的行业,因为技术再进步,也总需要人来做饭和送货"
阮老师说了这句话的8年之后,市场上最火的职业就是快递员。

我要发表看法

«-必填

«-必填,不公开

«-我信任你,不会填写广告链接