① 未来十年程序员越来越多,工资会变成白菜价吗
程序员的高薪资是行业皆知的事儿!对于一些刚刚毕业的IT专业的大学生来说,如果进到一些知名大企业,年薪可以直接达20万,更别说已经有好几年工作经验的程序员了。但是说到这里,有人会问了,现在学计算机的人越来越多,很多其他行业的人也纷纷转行来学IT,那么会不会再过几年,程序员越来越多,工资会变成白菜价?
此时,信息智能时代的企业生产方式也发生了巨大的变化:他们需要接受变革和创新。
当一个行业的大部分工作都是创新的时候,就会有越多的人涌入,这个行业就会越快地发展和繁荣,这个行业就会走到一个新的高度。
因此,在信息智能时代,程序员是这个行业和时代的执行中心,他们的薪水只会越来越高。如果他们被压到包,他们会非常高。
② 为什么说程序员会成为最富有的群体
不知道从什么时候开始,在广大报考大学志愿的年轻人和初入社会想要择业的年轻中流行一句话
这句话透着一股子朴素的务实思想,您仔细分辨一下,还有那么一丝金钱的铜臭味。
为什么这么说呢?因为这句流行语是有现实依据的呀。在无数个版本的平均薪资排行榜上,金融业与IT业一直是多年屹立不倒的两面旗帜,牢牢占据着排行榜的前两名。
但如果要让我选呢,选在未来20年都还能坚挺着占据收入榜榜主的行业,我会坚定地投码农一票。
为什么呢?首先说码农最大的竞争对手,金融业。金融业说白了,富豪的大手们拨弄着娇弱的市场,拨过来拨过去,拨得这个市场娇喘连连。而我们普通人,连这只手的影子都看不到,在一定程度上来说,金融业是一个靠天吃饭的行当。忽而行情好得一两年的提成就够在北京买房付首付了,忽而一路看跌三个月发不出工资。今天某个国家的某个人打喷嚏了,明天某个寡头公司的某位大人感冒了,对他们来说都是毛毛雨,可对我们来说,那就是八十年一遇的洪涝灾害了,咱这一辈子,有几个八十岁呢?谁又能说得准,自己赶上的就是涨潮那一拨,而不是退潮那一拨呢?
然后我们再来对比一下IT行业与其他行业。其实IT行业,就是在互联网上对应的各行各业。国家现在提倡“互联网+”,提倡传统行业向互联网转型,还给了许许多多的扶持政策优惠政策,这都是因为实体经济不景气,向互联网转型,降低成本,优化资源,创造更多的利润实现方式。
我们个人就业,跟着国家的政策走是最保险的,政策基本上就是大环境经济状况的晴雨表。政策向互联网行业倾斜,就代表着会有无数传统行业向互联网靠近,新兴产业也会在互联网上诞生,我们个人找工作的空间就会成倍地扩大。
第三,我们不说大行业,来说说程序员本身。程序员可以说是适应行业最广泛的一个专业,甚至说打破了行业间壁垒的一个专业。因为无论是种地的,炼铁的,卖蛋糕的,开旅行社的,哪怕是政府部门,都需要有人写代码,编程序,虽然内容不同,但功能是相通的,核心技术大同小异。因此程序员无论要找工作还是跳槽,除非特别热爱某一个行业,否则没有任何壁垒,各行各业都是程序员大显身手的舞台。
第四,互联网的飞速发展,给我们个人的生活带来了极大的便利。可以说我们现在已经完全离不开网络,未来网络上还会带来什么技术,进一步优化我们的生活,已经有许许多多的人给予了猜测。而所有的猜测都有一项共识,那就是我们的生活会越来越离不开互联网。而对网络的使用程度和掌握的熟练度,能轻轻松松地将普通老百姓分为不同的阶层。或许在将来,入门级的代码和计算机常识命令会是每个人都掌握的最基础的知识,就像今天的唐诗三百首和九九乘法表,但基础知识越普及,人们对精尖技术的需求就越大,程序员未来的社会地位和收入水平,将会毫不费力地超越中产。现在在美国,IT界的精英,已经与传统社会推崇的律师、医生等行业地位持平,甚至是有了超越。这一切都是因为,互联网人才,将与律师、医生等行业的人才一样,成为我们日常生活必不可少的保障者。
这几年来,每个行业都在说寒冬,互联网也说过,互联网的寒冬使不少小企业没能坚持下去,但有更多的中小企业,靠着政策,靠着融资,又红红火火地运营了下来。程序员们兜兜转转,都还在这个行业中把持着收入榜的前列。而其他行业的寒冬,则是真真切切地让无数人改行,甚至有不少人,也投入到了互联网的从业大军中来。
多了不敢说,从现在起起码二十年内,互联网行业的发展只会越来越快,拓宽并覆盖越来越多的行业。而程序员则是从中受益最大的一批人。他们在互联网的浪潮中舞动多年,积累了丰富的经验,并培养了极具创造性的眼光。在这个技术资本最受重视、最易于变现的行业,程序员练就的技能,就将是他们最大的资本。毫不夸张地说,20年后,中国经济将有大跨步地发展,中国的互联网行业也将像过去许许多多国内重点扶持的产业一样,走在世界的前列。而程序员,也将成为国内最为富有的精英群体。
③ 全民编程时代到来后,软件程序员会加入“低薪劳动者”行列吗
虽然说现在电子全民编程时代已经到来了,但是不代表软件的程序员就会变成低薪劳动者,因为我觉得有能力的人在哪里都是会发光的,如果你真的非常的有能力的话,你在哪里都能够拿到很高的工资。虽然现在有很多的电子产品,现在的人工智能能够取代很多的东西,但是它毕竟是人工的,那么就是需要人来去操作。既然需要人去操作的话,那肯定是需要一些角角者的,肯定不可能需要一些比较一般的人。在任何一个行业都是有优胜劣汰的,并不是说只要你学习这个你就能够出头。
④ 程序员被纳入“新生代农民工”,码农为何会被官方定义为“新生代农民工”
01 什么是新生代农民工“码农”就是我们常说的程序员,因为靠写代码卫生,而且收入低,要长时间面对电脑,所以就自嘲为“码农”。
我们先来看看“新生代农民工”的定义:
出生于20世纪80年代以后,年龄在16岁以上,在异地以非农就业为主的农业户籍人口。
具体点来说,他们是“集中于劳动密集型行业,从事信息传输、软件和信息技术服务业的打工人”。
所以如果单从这个描述来说的话,从事软件和信息服务的程序员们很显然就是“新生代农民工”中的一员。
但如果你看仔细点的话,你就会发现要满足“新生代农民工”,条件有两个:
1.在外地从事非农业行业;
2.农村户口。
因此严格来说,标准的“码农”前提要有“农村户籍”,“城镇户口的码农”是不属于“新生代农民工”范畴的。
就光看这几点,哪个跟农民工兄弟不是一样的?
⑤ 百万年薪的程序员是种怎样的体验年薪百万的程序员有多厉害
程序员根据自己的能力会被分为三六九等,这些人之中主要体现在代码的实现能力、代码工整度以及功能的完善程度上。
其实每个人只要认真的工作,努力的奋斗,实现了自身的价值,也将收获到和你付出一样的多,只要是凭自己的努力换来的,不管多少都应该是很开心的,不要羡慕高年薪的人群,也没必要鄙视低薪人群,多与少都是告双手而获,只是因各种原因造成。总之自己开心幸福才是最重要的,幸福不是分收入的高低来评判哟!
⑥ 程序员未来前景如何大龄程序员出路在哪里
其实程序员什么35岁就不行了的说法是个伪命题,是人为的强加的致幻剂。虽然软件行业有其特殊性,但是也有其普遍性。其他行业35岁那才真正进入事业快车道,软件行业我认为也差不多。
软件行业不光是写代码,积累到35岁,如果还能写代码那一定是经验丰富,代码水平高,即便继续写代码那也比一般的人好,当然排除那些不思进取不学习的人。
最差带几个人做个项目经理做项目就比年轻仔强很多。不但可以利用自己的经验还可以写关键代码。年龄其实不是问题。
那问题是什么给大家的印象是35岁程序员就没得混了?其实现在很多程序员其实是码农,大家说IT行业是一个知识更新非常快的行业,其实也不尽然 ,更新的是表面,其本质一直没变,一个码农一般都学的是皮毛,就懂一点什么框架 的编程,缺乏学习能力,不懂软件最基本的原理,学校学的那点一旦过时就什么也不剩了,那面临的就是淘汰。
如果是一个了解软件本质,学习能力强的人,语言只是形式,对于一个项目,觉得什么语言合适就用什么语言,你懂一门语言,另外一门语言要不了一个星期就可以编程了,关键还是基础,是原理,是思想和经验。
所以程序员们,不要被别人的致幻剂迷糊了,只要你肯学能进步,喜欢软件开发,年龄一定不是问题,只能越来越吃香。
个人观点,不喜勿喷!也希望大家能够说明自己的观点,大家一起学习,一起进步,营造良好的学习气氛!
大家都知道程序员也分为做什么开发的程序员,比如市面上最流行的Java、C语言、C++、python、PHP等等开发程序员,未来的发展是不一样的。
其实,我觉得未来发展前景的话,要找天花板较高的语言来作为基础学习,慢慢的把自己的架构思维给建立起来。
等你拥有自己的架构思维之后,其实语言就是一种工具而已,所以一定要清晰规划自己该学习什么语言,该怎么样来学,我在这里推荐Java语言,因为Java语言的学习就能够帮你初期建立这种思维方式,还有Java语言的独特性,证明了它的优越性!也证明了它的天花板比其它语言要高,当然上手难度也比较高,自己要有一个清晰的认识,
关于大龄程序员出路,我这里得多说一嘴!
一提到大龄程序员,大家第一时间就会想到,35岁中年危机。
不可否定,35岁这个词确实很扎心,也是许多程序员的恐惧所在,但是,请大家不要惊慌,要给自己打一针强心剂。
30而立相信大家都听说过吧?但是也不然,也看个人的机遇和努力!程序员也是一样!
这里就说到了职业规划的重要性,从22岁毕业实习再到30岁这八年时间,处于一段技术磨合和提升期,也就是技术的沉淀,沉淀到了一定的时间之后,就要考虑管理经验的提升,随着年龄的增长,身体上、思想上、精神上都会出现惰性,当然也跟自己的运动有关系,要加强自己对身体的锻炼,每年做体检!
30岁之后,有的人考虑单飞,自己找合伙人创业,自己开公司求发展;有的人继续按部就班,沉浸在996的世界之中;有的人不断地提升自己的技术能力和架构思维,在大厂中继续深造,让自己变得更有价值!
不知道你们是属于哪种,但是,最重要的还是个人的思维!希望自己能够好好考虑一下,从自己下手,彻底的改变自己,不然淘汰是迟早的事儿。
三点:改变自己的思维;加强自己锻炼;做好职业规划!
以上个人观点,不喜勿喷!欢迎大家一起讨论。
本人作为程序员,曾经也为这个问题困扰着。程序员在35岁就会面临各种问题,身边也有这样的例子,上一家公司有一个同事,40岁了还在写代码,他的工资不高。后来项目预算超标了,他也就成为了被裁员的对象。那是我第一次感觉到了年龄越大而带来的危机。
但是话有说回来了,40岁了还在写代码。只能说明了他对自己没有明确的职业规划或者个人的不思进取造成的。IT行业有他的特殊性,第一个特殊性就是知识更新很快,第二个就是很注重职业规划。
所以要想不被淘汰,要么积极学习没拥有很厉害的技术,成为一个领域的技术专家。要么走管理路线,在平时上班的时候就要注重这方面的培养,首先要在工作中锻炼,还有考取一些专业的证书来给自己增加竞争力。
当然也有的选择自己创业,这是最好的结果。所以,在当下最重要的是怎么给自己规划。多考虑这方面的问题,要是想通了也就没有那么的纠结了。
我是个IT新人,程序员的未来前景毫无疑问是不可小看的。世界逐步进入5G时代,对于程序员来说即是挑战也是机遇,5G时代到来必将会带了新的技术升级,也必将淘汰旧的技术,所以说对于程序员即是挑战也是机遇,只有不断地学习你才能把我好这一机遇,雷军说:“站在风口上,猪都能飞”。但首先你得是有准备的猪 。
对于大龄程序员,我是这样子想的,等我年龄大了,不可能一直处在代码一线,要么转管理岗位,如:技术主管,产品经理,项目经理,有能力的做个技术总监。
要么转行,我朋友常常给我开玩笑说,等年龄大了,我们去送外卖吧!自由自在,月入过万
要么拿出积累多年资金、人脉开始创业
30+程序员一枚,刚好可以回答这个问题。
先简要说下我对这两个问题的答案:
下面,我们就来一一解释。
程序员是有前(钱)途的职业
首先是 金钱 方面。在所有行业里面,it行业是比较有前(钱)途的职业,我想这句话可能极少有人反驳。当程序员相对来说能挣钱,即使这些钱是需要加班加点挣来的,但是总归来说提供了普通人一个挣相对高薪的途径。即使在北上广深,当程序员也相对其它行业更容易买车买房,站稳脚跟。另外,每年无数的大专本科生上培训班,当程序员也很能说明情况。
其次是 行业发展 方面。程序员从事的是it行业的工作,是一门用技术改变生活的行业,it技术已经应用于方方面面,这也无形中给程序员提供了更广阔的用武之地。
关于大龄程序员的问题,其实我觉得更应该说是 一个普通人中年危机的问题 。因为年龄大了,薪资相对新人更高,加班能力更差是大部分行业都会遇到的问题,只是这个问题在it行业放的更大了。网络当中很多所谓的35岁问题,一部分是来自于程序员的自嘲,一部分情况其实是因为部分大龄程序员拿惯了高工资,没有做人生规划,技术没有提升,然后又遇到了中年危机后无所适从罢了。可能有人会说老师,医生等行业会随着年龄增加而成长什么的,这个确实有其相关性。但是程序员毕业就拿高薪,其它行业可能要积累很多年(这里说的是平均,个例不探讨)。
至于出路,我认为出路有很多:
当然,我这里说的大龄程序员指的是正常的程序员,不是那种天天混混日子,突然一裁员发现自己啥也不会的人,我觉得这种人基本上是很难有出路的。
关注令狐一冲,关注区块链和IT技术!
在民企,大龄程序员确实不好混了。华为裁掉35岁以上的普通员工,就说明这些大公司只需要年轻人,加班苦干。年纪大了,拖家带口的,加不动班了,就劝退。这种情况说明这种工作都是些按部就班的,没什么创造性的工作,不需要很多经验。
外企的情况会好一些,50多岁的头发花白的程序员依然在工作,他们看重的是工作的积累,经验。公司也把这些人当做公司的财富。国内因为抄袭太严重,不太注重知识产权,导致程序员的地位并不高。
大龄程序员要在工作之余,发展一些副业,多学些技能,考一些证书,做一些理财投资等等。保证自己万一被裁员,不至于没有收入陷入焦虑。
这问题问的,大龄农民工出路在哪儿?
所以了,人口总量下滑,人力资源不足,大龄程序员总是有人要的,只不过不同水平的去向、待遇不同罢了,这跟年龄、行业没关系,哪个年龄哪个行业都一样有分化。
首先,程序员这个职业不再是个香饽饽,这一点各位程序员必须要摆正心态!随着人工智能在编程方面的运用以及程序员数量的大规模上涨,未来大多数程序员的待遇会跟 社会 平均工资看齐,短时间依然会有优势,但随着时间推移,这种优势必然转为劣势。为何?供需决定价格,以前供不应求当然价格高,未来供大于求甚至每个人都会编程,自然没啥议价空间。而那些没人愿意干的脏活累活自然成为高收入岗位。
其次,许多程序员会成为领导或者老板,毕竟 社会 需求在,有大需求也有小需求,对用户需求敏感的人自然能够抓住机会自己创业。
再有,某些高收入程序员会跨界进入别的行业,毕竟有了资本有了 社会 经验,很多事情都是相通的。
最后,大多数冲不上去也没钱或没想跨界的,继续待在公司里搬砖,虽然加班比不上年轻人,但毕竟经验丰富,码代码的速度和质量是有的,只不过工资持平奖金下降不忍也得忍啊,毕竟为了生活,别的很多职业人家的工资本就是好多年没变化,程序员也不会例外,之前例外是因为供不应求。
有人说程序员是脑力活,跟农民工不能比,六十岁农民工还能干活,六十岁程序员脑子怎么跟得上?作为过来人,笔者可以向各位保证:越大的团队,里边需要动脑子的人越少,大多数大厂的程序员混到最后都是干的力气活,根本不需要脑子,这就是熟练度。至于这是好是坏,仁者见仁智者见智。
看到这个问题,作为一个资深的程序员和管理者,我认为我有资格来回答这些问题。无论你是因为爱好编程走上程序员这条路,还是因为看见程序员的高薪加入这个行业。既然有这个疑问,就说明你已经有了职业焦虑:程序员真的能一直做下去吗?是不是35岁就面临着中年危机?单靠写代码能走向管理者岗位吗?大龄程序员的出路在哪里?我结合我自己做10多年程序员的经验(担任过高级工程师、数据架构师、数据负责人和数据总监等岗位),讲讲大家都十分感情去的问题。
一 程序员能干到退休为止吗? 1.1 从初级程序员开始,不要错过的发展路径首先,程序员们关心的都是自己在这个行业能干多久,而不是在某个公司待多久。尤其是现在行业内卷非常严重,几乎不可能让你在一个公司工作一辈子;因为,行业变数很大,说不定哪天就裁员了,而且你正好在裁员名单中。针对这种情况,我的建议是:
在自己30岁之前,一定要不断地丰富自己的知识库,让自己的能力保持在行业的头部。
① 初级->中级
这个阶段主要是学习,在很少依赖其他人帮助的前提下,能够保质保量的完成手上的工作。在这个时期,自己多找几个师父,由资深的程序员对你做技术路线的指导。这样即可以少走弯路,又可以快速地学习和掌握前沿知识。
② 中级->高级
这个阶段主要是从公司现有的技术架构中,提炼出高难度、有价值的内容。并能够用批判的眼光看待这些事,总结出哪些做得好,哪些做得差。如果是你来做,你会怎么做?
可以从领导对你的信任角度上,看出来你在这个阶段成长的好坏,如果让领导和团队成员对你非常信任,说明你这个阶段是成功的,可以方向的走向第三个阶段。
③ 高级->资深
这个阶段至关重要,涉及到你是走专家路线还是走管理路线,这是一个转折期。如果自己擅长沟通和乐意交流,在这个阶段多观察你的直属领导是怎么安排工作的,他的工作方式有哪些缺陷,如果是你你会怎么做,需要不断地总结归纳管理方式方法;除此之外,在技术方面,必须要学会复盘,并且愿意复盘,而且是愿意看别人复盘。复盘是对程序员帮助最大的环节,一定不要认为复盘是浪费时间。
如果你想走专家路线,那么就要保持头脑的清醒:你做的内容是纯技术还是业务+技术。如果是纯技术,那么走专家路线是没有问题的。否则,千万不要走专家路线。
1.2 消除常见的误解,包括【只能吃青春饭】一定要消除青春饭的这种不良的意识,为什么呢?因为管理岗也是技术出身。从程序员编程管理人员,也能够年薪百万。如果你不是科班出身,怎么能做好一个管理者呢?一个管理者需要的技能很多,需求分析、目标设定、资源协调、团队协调和赋能培训。管理者不是想想就能做到的,需要既懂技术又懂业务,同时还要懂管理,更要会报告,会表功,甚至会做客户的公关,智商情商双双在线。
如果你练就了这一身本事,还能是青春饭吗?是不是感觉到自己有很多内容要学习,要修炼。
二 我适合做管理还是技术 2.1 并不是说管理者一定会脱离技术作为程序员,其实人到中年,就要面临着转型的挑战。如果一直写代码,你和20岁出头的小伙子去竞争,就会累得头破血流。人无远虑必有近忧,就职业发展规划来说,应该转型为架构专家、算法专家,研发主管或者项目经理。
管理者不是必须要懂技术,管理本身就是一门学问,职业经理人就是依靠管理吃饭的。管理的真正核心是利用资源,知人善任,自己不懂技术可以找一个懂技术的人。经常看见公司的高管在变动,他们在技术、专业方面不一定有多精通,但是具备了经营管理的能力,一样可以在新的领域取得成绩。
2.2 不要做自己不擅长的事,不盲目追求高薪追求高工资,带来的是钱,也是一种成就感。但是一味想通过跳槽来升职加薪,是最不可取的。可以负责任地讲,在你的职业生涯的头5年,这种做法影响不大。但是在5年以后,你会发现自己没有沉淀和积累,因为换工作也是非常耗精力的。
不要看见别人做了管理者,自己就认为可以做。自己一定要认清楚自己的能力范围,在能力达到时,并且自己愿意转型时,值得一搏。
三 除了写代码,你还有很多事情要做 3.1 学会互联网思维,多渠道发展,多种经营有人会说,我现在已经35+岁了,我还是普普通通的程序员,没有一技之长,也不懂管理。我该怎么办呢?互联网时代给了我们很多创业的机会,比如可以做自媒体,直播带货,自己开一个小型的培训公司。
最好是在自己年轻的时候,就考虑过有一天会被IT行业淘汰,那我应该去做什么呢?要着手准备什么呢?
3.2 掌握跨界知识,成为跨界人才我还是那句话,自己行业内的东西对于自己来说,是最简单的。平时多和其他行业的人交往,多听、多学,有可能他的领域就是你发光发热的地方。程序员有着执着、冷静、聪明的头脑,做任何事情都不会比其他人差,主要是选好方向。
优秀的程序员不论年龄大小,前景都非常好!巨大的市场需求决定了优秀程序员的紧缺性,在数字化时代,已经没有哪个行业会离开软件的支撑,这个趋势在可预见的未来不会改变。
一般来说,人会随着年龄的增长,工作的时候精力会跟不上,但从另一个角度讲,年龄大了,经验就会更丰富,尤其对于像程序员这种知识型工种,只要他肯学习,跟上技术的进步和变化,他就不会落后,就会继续有用武之地。
软件技术的变化也是非常大的,新的框架、新的开发环境、新的编程语言不断出现,程序员也要注重自身的学习和修养,为断适应互联网+时代的技术发展,只有这样,程序员才会永葆青春。
当然如果已经功成名就,账务自由,选择别的职业也挺好,人各有志,看个人发展和兴趣爱好!
⑦ 做程序员的话 ,能达到中产阶级吗
当然可以了,程序员可以说是是典型中产阶级职业。
首先,他们收入高,是城镇就业人口中行业平均薪资最高的群体;
其次,他们的平均教育程度在本科以上;
最后,他们还很讲究生活品质。
,程序员群体在轻奢品(比如欧米茄等名表),以及像沃尔沃、奔驰这种舒适、安全、高品质汽车品牌的消费比例更高,这些都是典型的“中产LOGO”。
其实,程序员就是典型的有大城市特权的职业。为什么这么说?接下来我们从工作机会、薪酬和流动性这三个角度来分析。
工作机会
对于中国的程序员们来说,现在活跃在全球各大交易所的278家IT服务上市公司就是这个行业招聘最大的蓄水池。那么这些公司都在哪呢?
我们将这些公司在地理上的分布作了个分析:
我们看到,中国仅仅有13个城市拥有3家以上的IT服务上市公司,一个北京就占据了行业的半壁江山。
北京的IT服务上市公司多达101家,包括网络、网易、爱奇艺、微博、58同城、汽车之家、陌陌、新浪、搜狗、新氧、易车、世纪互联,等等。
第二梯队是上海、深圳和杭州,这三个城市的IT服务上市公司的数目分别是37、26、20。注意,上海虽然数量稍微比深圳和杭州多一些,但一旦考虑到企业质量,杭州和深圳就马上反超了,所以依然属于第二梯队。
再接下来是成都、广州、南京等5个城市组成的第三梯队,每个城市有大约5~10家IT服务上市公司。
换句话说,一线和次一线,有着程序员难以割舍的巨大的工作机会。其实全球来看都是这样:美国活跃的318家IT服务公司,35%(113家)集中在加州的圣荷西和旧金山,英国113家IT服务公司,几乎一半(49家)都在伦敦。
薪酬
2019年上半年程序员薪资的完整城市图谱——一个清晰的趋势就是,人口集聚程度越高的城市,程序员的学历和工作经验的溢价越高。
比如说,北京本科学历程序员的月工资平均为1.8万元,而中专学历就下降到8000元,而在潍坊、济宁这些城市,本科与中专学历程序员的月平均工资的差异仅为1000元。
再比如说,北京和杭州,5~7年工作经验的程序员与有1年工作经验的程序员相比,月平均工资差异最少1万元,而在绵阳、哈尔滨和海口这些城市,这个差距只有1000元。
再比如说,一个本科刚毕业的最普通的程序员,在人口规模1000万以上的大城市工作,跟在500万以下的小城市工作,起薪能差6000元;10年之后,在大城市工作的平均年薪能达到45万,而在小城市只有13万。而且大城市机会多,稍微冒尖点就能达到百万级。
流动性
市场大,工作机会多,自然意味着流动性大。而且,一个深圳或北京的程序员,要回长沙、成都,是很好找工作的,但反过来就没有那么容易了。更何况,大城市IT服务公司多,其中还有很多都是全球化的公司,跨国流动也多。像印度IT服务业的兴起就是因为美国大量IT从业者的回流。
换句话说,像程序员这样的职业,以北京为代表的大城市就是“特权城市”。
当然,程序员并不是特例,还有一些行业(职业)适合待在大城市。
⑧ 程序员未来前景如何大龄程序员出路在哪里
其实程序员什么35岁就不行了的说法是个伪命题,是人为的强加的致幻剂。虽然软件行业有其特殊性,但是也有其普遍性。其他行业35岁那才真正进入事业快车道,软件行业我认为也差不多。
软件行业不光是写代码,积累到35岁,如果还能写代码那一定是经验丰富,代码水平高,即便继续写代码那也比一般的人好,当然排除那些不思进取不学习的人。
最差带几个人做个项目经理做项目就比年轻仔强很多。不但可以利用自己的经验还可以写关键代码。年龄其实不是问题。
那问题是什么给大家的印象是35岁程序员就没得混了?其实现在很多程序员其实是码农,大家说IT行业是一个知识更新非常快的行业,其实也不尽然 ,更新的是表面,其本质一直没变,一个码农一般都学的是皮毛,就懂一点什么框架 的编程,缺乏学习能力,不懂软件最基本的原理,学校学的那点一旦过时就什么也不剩了,那面临的就是淘汰。
如果是一个了解软件本质,学习能力强的人,语言只是形式,对于一个项目,觉得什么语言合适就用什么语言,你懂一门语言,另外一门语言要不了一个星期就可以编程了,关键还是基础,是原理,是思想和经验。
所以程序员们,不要被别人的致幻剂迷糊了,只要你肯学能进步,喜欢软件开发,年龄一定不是问题,只能越来越吃香。
本人作为程序员,曾经也为这个问题困扰着。程序员在35岁就会面临各种问题,身边也有这样的例子,上一家公司有一个同事,40岁了还在写代码,他的工资不高。后来项目预算超标了,他也就成为了被裁员的对象。那是我第一次感觉到了年龄越大而带来的危机。
但是话有说回来了,40岁了还在写代码。只能说明了他对自己没有明确的职业规划或者个人的不思进取造成的。IT行业有他的特殊性,第一个特殊性就是知识更新很快,第二个就是很注重职业规划。
所以要想不被淘汰,要么积极学习没拥有很厉害的技术,成为一个领域的技术专家。要么走管理路线,在平时上班的时候就要注重这方面的培养,首先要在工作中锻炼,还有考取一些专业的证书来给自己增加竞争力。
当然也有的选择自己创业,这是最好的结果。所以,在当下最重要的是怎么给自己规划。多考虑这方面的问题,要是想通了也就没有那么的纠结了。
个人观点,不喜勿喷!也希望大家能够说明自己的观点,大家一起学习,一起进步,营造良好的学习气氛!
大家都知道程序员也分为做什么开发的程序员,比如市面上最流行的Java、C语言、C++、python、PHP等等开发程序员,未来的发展是不一样的。
其实,我觉得未来发展前景的话,要找天花板较高的语言来作为基础学习,慢慢的把自己的架构思维给建立起来。
等你拥有自己的架构思维之后,其实语言就是一种工具而已,所以一定要清晰规划自己该学习什么语言,该怎么样来学,我在这里推荐Java语言,因为Java语言的学习就能够帮你初期建立这种思维方式,还有Java语言的独特性,证明了它的优越性!也证明了它的天花板比其它语言要高,当然上手难度也比较高,自己要有一个清晰的认识,
关于大龄程序员出路,我这里得多说一嘴!
一提到大龄程序员,大家第一时间就会想到,35岁中年危机。
不可否定,35岁这个词确实很扎心,也是许多程序员的恐惧所在,但是,请大家不要惊慌,要给自己打一针强心剂。
30而立相信大家都听说过吧?但是也不然,也看个人的机遇和努力!程序员也是一样!
这里就说到了职业规划的重要性,从22岁毕业实习再到30岁这八年时间,处于一段技术磨合和提升期,也就是技术的沉淀,沉淀到了一定的时间之后,就要考虑管理经验的提升,随着年龄的增长,身体上、思想上、精神上都会出现惰性,当然也跟自己的运动有关系,要加强自己对身体的锻炼,每年做体检!
30岁之后,有的人考虑单飞,自己找合伙人创业,自己开公司求发展;有的人继续按部就班,沉浸在996的世界之中;有的人不断地提升自己的技术能力和架构思维,在大厂中继续深造,让自己变得更有价值!
不知道你们是属于哪种,但是,最重要的还是个人的思维!希望自己能够好好考虑一下,从自己下手,彻底的改变自己,不然淘汰是迟早的事儿。
三点:改变自己的思维;加强自己锻炼;做好职业规划!
以上个人观点,不喜勿喷!欢迎大家一起讨论。
我是个IT新人,程序员的未来前景毫无疑问是不可小看的。世界逐步进入5G时代,对于程序员来说即是挑战也是机遇,5G时代到来必将会带了新的技术升级,也必将淘汰旧的技术,所以说对于程序员即是挑战也是机遇,只有不断地学习你才能把我好这一机遇,雷军说:“站在风口上,猪都能飞”。但首先你得是有准备的猪 。
对于大龄程序员,我是这样子想的,等我年龄大了,不可能一直处在代码一线,要么转管理岗位,如:技术主管,产品经理,项目经理,有能力的做个技术总监。
要么转行,我朋友常常给我开玩笑说,等年龄大了,我们去送外卖吧!自由自在,月入过万
要么拿出积累多年资金、人脉开始创业
在民企,大龄程序员确实不好混了。华为裁掉35岁以上的普通员工,就说明这些大公司只需要年轻人,加班苦干。年纪大了,拖家带口的,加不动班了,就劝退。这种情况说明这种工作都是些按部就班的,没什么创造性的工作,不需要很多经验。
外企的情况会好一些,50多岁的头发花白的程序员依然在工作,他们看重的是工作的积累,经验。公司也把这些人当做公司的财富。国内因为抄袭太严重,不太注重知识产权,导致程序员的地位并不高。
大龄程序员要在工作之余,发展一些副业,多学些技能,考一些证书,做一些理财投资等等。保证自己万一被裁员,不至于没有收入陷入焦虑。
这问题问的,大龄农民工出路在哪儿?
所以了,人口总量下滑,人力资源不足,大龄程序员总是有人要的,只不过不同水平的去向、待遇不同罢了,这跟年龄、行业没关系,哪个年龄哪个行业都一样有分化。
首先,程序员这个职业不再是个香饽饽,这一点各位程序员必须要摆正心态!随着人工智能在编程方面的运用以及程序员数量的大规模上涨,未来大多数程序员的待遇会跟 社会 平均工资看齐,短时间依然会有优势,但随着时间推移,这种优势必然转为劣势。为何?供需决定价格,以前供不应求当然价格高,未来供大于求甚至每个人都会编程,自然没啥议价空间。而那些没人愿意干的脏活累活自然成为高收入岗位。
其次,许多程序员会成为领导或者老板,毕竟 社会 需求在,有大需求也有小需求,对用户需求敏感的人自然能够抓住机会自己创业。
再有,某些高收入程序员会跨界进入别的行业,毕竟有了资本有了 社会 经验,很多事情都是相通的。
最后,大多数冲不上去也没钱或没想跨界的,继续待在公司里搬砖,虽然加班比不上年轻人,但毕竟经验丰富,码代码的速度和质量是有的,只不过工资持平奖金下降不忍也得忍啊,毕竟为了生活,别的很多职业人家的工资本就是好多年没变化,程序员也不会例外,之前例外是因为供不应求。
有人说程序员是脑力活,跟农民工不能比,六十岁农民工还能干活,六十岁程序员脑子怎么跟得上?作为过来人,笔者可以向各位保证:越大的团队,里边需要动脑子的人越少,大多数大厂的程序员混到最后都是干的力气活,根本不需要脑子,这就是熟练度。至于这是好是坏,仁者见仁智者见智。
优秀的程序员不论年龄大小,前景都非常好!巨大的市场需求决定了优秀程序员的紧缺性,在数字化时代,已经没有哪个行业会离开软件的支撑,这个趋势在可预见的未来不会改变。
一般来说,人会随着年龄的增长,工作的时候精力会跟不上,但从另一个角度讲,年龄大了,经验就会更丰富,尤其对于像程序员这种知识型工种,只要他肯学习,跟上技术的进步和变化,他就不会落后,就会继续有用武之地。
软件技术的变化也是非常大的,新的框架、新的开发环境、新的编程语言不断出现,程序员也要注重自身的学习和修养,为断适应互联网+时代的技术发展,只有这样,程序员才会永葆青春。
当然如果已经功成名就,账务自由,选择别的职业也挺好,人各有志,看个人发展和兴趣爱好!
30+程序员一枚,刚好可以回答这个问题。
先简要说下我对这两个问题的答案:
下面,我们就来一一解释。
程序员是有前(钱)途的职业
首先是 金钱 方面。在所有行业里面,it行业是比较有前(钱)途的职业,我想这句话可能极少有人反驳。当程序员相对来说能挣钱,即使这些钱是需要加班加点挣来的,但是总归来说提供了普通人一个挣相对高薪的途径。即使在北上广深,当程序员也相对其它行业更容易买车买房,站稳脚跟。另外,每年无数的大专本科生上培训班,当程序员也很能说明情况。
其次是 行业发展 方面。程序员从事的是it行业的工作,是一门用技术改变生活的行业,it技术已经应用于方方面面,这也无形中给程序员提供了更广阔的用武之地。
关于大龄程序员的问题,其实我觉得更应该说是 一个普通人中年危机的问题 。因为年龄大了,薪资相对新人更高,加班能力更差是大部分行业都会遇到的问题,只是这个问题在it行业放的更大了。网络当中很多所谓的35岁问题,一部分是来自于程序员的自嘲,一部分情况其实是因为部分大龄程序员拿惯了高工资,没有做人生规划,技术没有提升,然后又遇到了中年危机后无所适从罢了。可能有人会说老师,医生等行业会随着年龄增加而成长什么的,这个确实有其相关性。但是程序员毕业就拿高薪,其它行业可能要积累很多年(这里说的是平均,个例不探讨)。
至于出路,我认为出路有很多:
当然,我这里说的大龄程序员指的是正常的程序员,不是那种天天混混日子,突然一裁员发现自己啥也不会的人,我觉得这种人基本上是很难有出路的。
关注令狐一冲,关注区块链和IT技术!
计算机是未来人类的一个发展方向,是生产力提高的方向,而且是长期发展的,所以程序员不会过剩,也不会淘汰。至少在50年内,还看不到能够代替计算机发展的新工具,可以看到的是,计算机本身的发展。而程序员在出路方向上有很多选择:
1,软件方向:软件是计算机与人类交换的媒介,很多大型软件公司已经存在几十年了,还将继续发展下去。
2,硬件方向:计算机本身的发展,需要 科技 进步,在新材料研究,制造工艺提升,架构设计运用方面,都需要不断提升。
3,物联网方向:这个不用多说,物联网是在在互联网基础上,通过射频识别(RFID)、 红外感应器、全球定位系统、激光扫描器等信息传感设备等方面,给我们带来便利,在我们生活的方方面面已经离不开了。
4,人工智能:简单举个例子,小爱同学能和你进行简单交流,阿尔法狗,打败了全世界所有顶尖围棋高手。
5,数字媒体技术:数字媒体技术是一个结合了数字技术、媒体与艺术设计的多学科交叉专业。它注重创意,利用媒体技术,在 游戏 、移动互联网、互动 娱乐 、影视动画等领域展开研究和创作,重在培养能够熟练地应用现代计算机技术,从事数字媒体制作、图形图像处理、动画设计等。
6,以上是主要方向,还有很多,这里用四
个字概括:等等,等等。
⑨ 程序员的十层楼
自西方文艺复兴以来,中国在自然科学方面落后西方很多,软件领域也不例外。当然现在中国的许多程序员们对此可能有许多不同的意见,有些人认为中国的程序员水平远落后于西方,有些则认为中国的程序员个人能力并不比西方的程序员差,只是整个软件产业落后而已。
那么,到底中国的程序员水平比西方程序员水平差,还是中国有许多优秀的程序员达到或超过了西方程序员同等水平呢?要解决这个问题,必须先知道程序员 有多少种技术层级,每个层级需要什么样的技术水平,然后再比较中国和西方在各个技术层级的人数,就可以知道到底有没有差距,差距有多大。
当然,对于如何划分程序员的技术层级,不同公司或不同人会有不同的划分标准,下面的划分仅代表个人的观点,如有不当之处,还请砸板砖予以纠正。
第1层楼属于地板层,迈进这层楼的门槛是很低的。基本上懂计算机的基本操作,了解计算机专业的一些基础知识,掌握一门基本的编程语言如C/C++,或者Java,或者JavaScript,...,均可入门迈进这层。
在这层上,中国有着绝对的优势,除了从计算机专业毕业的众多人数外,还有大量的通信、自动化、数学等相关专业的人士进入这一行,此外还有众多的其他专业转行的人士,人数绝对比西方多出甚多。并且还有一个优势就是我们这层人员的平均智商比西方肯定高。
没有多少人愿意一辈子做菜鸟,因为做"菜鸟"的滋味实在是不咋的,整天被老大们吆喝着去装装机器,搭建一下测试环境,或者对照着别人写好的测试用例 做一些黑盒测试,好一点的可以被安排去写一点测试代码。当然如果运气"好"的话,碰到了国内的一些作坊式的公司,也有机会去写一些正式的代码。
所以,菜鸟们总是在努力学习,希望爬更高的一层楼去。
从第1层爬到第2层相对容易一些,以C/C++程序员为例,只要熟练掌握C/C++编程语言,掌握C标准库和常用的各种数据结构算法,掌握STL的 基本实现和使用方法,掌握多线程编程基础知识,掌握一种开发环境,再对各种操作系统的API都去使用一下,搞网络编程的当然对socket编程要好好掌握 一下,然后再学习一些面向对象的设计知识和设计模式等,学习一些测试、软件工程和质量控制的基本知识,大部分人经过2 3年的努力,都可以爬到第2层,晋 升为"大虾"。
中国的"大虾"数量和"菜鸟"数量估计不会少多少,所以这层上仍然远领先于西方。
大虾们通常还是有些自知之明,知道自己只能实现一些简单的功能,做不了大的东西,有时候还会遇到一些疑难问题给卡住,所以他们对那些大牛级的人物通 常是非常崇拜的,国外的如Robert C. Martin、Linus Torvalds,国内的如求伯君、王志东等通常是他们崇拜的对象。其中的有些人希望有一天也能达到这些大牛级人物的水平,所以他们继续往楼上爬去。
由于"大虾"们经常被一些疑难问题给卡住,所以有了"大虾"们只好继续学习,他们需要将原来所学的知识进一步熟练掌握,比如以熟练掌握C++编程语 言为例,除了学一些基础性的C++书籍如《C++ Primer》,《Effective C++》,《Think in C++》,《Exception C++》等之外,更重要的是需要了解C++编译器的原理和实现机制,了解操作系统中的内部机制如内存管理、进程和线程的管理机制,了解处理器的基础知识和 代码优化的方法,此外还需要更深入地学习更多的数据结构与算法,掌握更深入的测试和调试知识以及质量管理和控制方法,对各种设计方法有更好的理解等。
学习上面说的这些知识不是一挥而就的,不看个三五十本书并掌握它是做不到的。以数据结构算法来说,至少要看个5 10本这方面的着作;以软件设计来 说,光懂结构化设计、面向对象设计和一些设计模式是不够的,还要了解软件架构设计、交互设计、面向方面的设计、面向使用的设计、面向数据结构算法的设计、 情感 化设计等,否则是很难进到这个楼层的。
当然除了上面说的知识外,大虾们还需要去学习各种经验和技巧。当然这点难不倒他们,现在出版的书籍众多,网络上的技术文章更是不胜数,然后再去各种 专业论坛里泡一泡,把这些书籍和文章中的各种经验、技能、技巧掌握下来,再去学习一些知名的开源项目如Apache或Linux操作系统的源代码实现等。 此时对付一般的疑难问题通常都不在话下,菜鸟和大虾们会觉得你很"牛",你也就爬到了第3层,晋升为"牛人"了。
看了上面所讲的要求,可能有些大虾要晕过去了,成为牛人要学这么多东西啊!要求是不是太高了?其实要求一点也不高,这么点东西都掌握不了的话,怎么能让别人觉得你"牛"呢?
需要提一下的是,进入多核时代后,从第2层爬到第3层增加了一道多核编程的门槛。当然要迈过这道门槛并不难,已经有很多前辈高人迈进了这道门槛,只 要循着他们的足迹前进就可以了。想迈进这道门槛者不妨去学习一下TBB开源项目的源代码(链 接:http://www.threadingbuildingblocks.org/),然后上Intel的博客(http://softwareblogs-zho.intel.com/)和多核论坛(http://forum.csdn.net/Intel/IntelMulti-core/)去看看相关文章,再买上几本相关的书籍学习一下。
在国内, 一旦成为"牛人",通常可以到许多知名的公司里去,运气好者可以挂上一个架构师的头衔,甚至挂上一个"首席架构师"或者"首席xx学家"的头衔也不足为 奇。有不少爬到这层的人就以为到了楼顶了,可以眼睛往天上看了,开始目空一切起来,以为自己什么都可以做了,什么都懂了,经常在网络上乱砸板砖是这个群体 的最好写照。由此也看出,国内的牛人数量仍然众多,远多于西方的牛人数量,在这层上仍然是领先的。
也有不少谦虚的"牛人",知道自己现在还不到半桶水阶段。他们深知爬楼的 游戏 就像猴子上树一样,往下看是笑脸,往上看是屁股。为了多看笑脸,少看屁股,他们并没有在此停步不前,而是继续寻找到更上一层的楼梯,以便继续往上爬。
从第3层爬到第4层可不像上面说过的那几层一样容易,要成为大牛的话,你必须要能做牛人们做不了的事情,解决牛人们解决不了问题。比如牛人们通常都 不懂写操作系统,不会写编译器,不懂得TCP/IP协议的底层实现,如果你有能力将其中的任何一个实现得象模象样的话,那么你就从牛人升级为"大牛"了。
当然,由于各个专业领域的差别,这里举操作系统、编译器、TCP/IP协议只是作为例子,并不代表成为"大牛"一定需要掌握这些知识,以时下热门的 多核编程来说,如果你能比牛人们更深入地掌握其中的各种思想原理,能更加自如的运用,并有能力去实现一个象开源项目TBB库一样的东西,也可以成为"大 牛",又或者你能写出一个类似Apache一样的服务器,或者写出一个数据库,都可以成为"大牛"。
当"牛人"晋升为"大牛",让"牛人们"发现有比他们更牛的人时,对"牛人"们的心灵的震撼是可想而知的。由于牛人们的数量庞大,并且牛人对大虾和 菜鸟阶层有言传身教的影响,所以大牛们通常能获得非常高的 社会 知名度,几乎可以用"引无数菜鸟、大虾、牛人竞折腰"来形容,看看前面提过的Linus Torvalds等大牛,应该知道此言不虚。
虽然成为"大牛"的条件看起来似乎很高似的,但是这层楼并不是很难爬的一层,只要通过一定的努力,素质不是很差,还是有许多"牛人"可以爬到这一层的。由此可知,"大牛"这个楼层的人数其实并不像想象的那么少,例如比尔·盖茨之类的人好像也是属于这一层的。
由于"大牛"这层的人数不少,所以也很难统计除到底是中国的"大牛"数量多还是西方的大牛数量多?我估计应该是个旗鼓相当的数量,或者中国的"大牛"们会更多一些。
看到这里,可能会有很多人会以为我在这里说瞎话,Linus Torvalds写出了着名的Linux操作系统,我国并没有人写出过类似的东西啊,我国的"大牛"怎么能和西方的比呢? 不知大家注意到没有,Linus Torvalds只是写出了一个"象模象样"的操作系统雏形,Linux后来真正发展成闻名全球的开源操作系统期间,完全是因为许多支持开源的商业公司如 IBM等,派出了许多比Linus Torvalds更高楼层的幕后英雄在里面把它开发出来的。
可能有些菜鸟认为Linus Torvalds是程序员中的上帝,不妨说个小故事:
Linus,Richard Stallman和Don Knuth(高德纳)一同参加一个会议。
Linus 说:"上帝说我创造了世界上最优秀的操作系统。"
Richard Stallman自然不甘示弱地说:"上帝说我创造了世界上最好用的编译器。"
Don Knuth一脸疑惑的说:"等等,等等,我什么时候说过这些话?"
由此可以看出,Linus Torvalds的技术水平并不像想象中那么高,只是"牛人"和"大虾"觉得"大牛"比他们更牛吧了。在我国,有一些当时还处于"大虾"层的人物,也能写 出介绍如何写操作系统的书,并且书写得非常出色,而且写出了一个有那么一点点象模象样的操作系统来。我想中国的"大牛"们是不会比西方差的,之所以没有人 写出类似的商业产品来,完全是 社会 环境的原因,并不是技术能力达不到的原因。
"大牛"们之所以成为大牛,主要的原因是因为把"牛人"给盖了下去,并不是他们自己觉得如何牛。也许有很多菜鸟、大虾甚至牛人觉得"大牛"这层已经 到顶了,但大多数"大牛"估计应该是有自知之明的,他们知道自己现在还没有爬到半山腰,也就勉强能算个半桶水的水平,其中有些爬到这层没有累趴下,仍然能 量充沛,并且又有志者,还是会继续往更上一层楼爬的。
看到这里,也许有些菜鸟、大虾、牛人想不明白了,还有比"大牛"们更高的楼层,那会是什么样的楼层?下面就来看看第5层楼的奥妙。
当大牛们真正动手做一个操作系统或者类似的其他软件时,他们就会发现自己的基本功仍然有很多的不足。以内存管理为例,如果直接抄袭Linux或者其 他开源操作系统的内存管理算法,会被人看不起的,如果自动动手实现一个内存管理算法,他会发现现在有关内存管理方法的算法数量众多,自己并没有全部学过和 实践过,不知道到底该用那种内存管理算法。
看到这里,可能有些人已经明白第5层楼的奥妙了,那就是需要做基础研究,当然在计算机里,最重要的就是"计算"二字,程序员要做基础研究,主要的内容就是研究非数值"计算"。
非数值计算可是一个非常庞大的领域,不仅时下热门的"多核计算"与"云计算"属于非数值计算范畴,就是软件需求、设计、测试、调试、评估、质量控 制、软件工程等本质上也属于非数值计算的范畴,甚至芯片硬件设计也同样牵涉到非数值计算。如果你还没有真正领悟"计算"二字的含义,那么你就没有机会进到 这层楼来。
可能有人仍然没有明白为什么比尔·盖茨被划在了大牛层,没有进到这层来。虽然比尔·盖茨大学未毕业,学历不够,但是家有藏书2万余册,进入软件这个 行业比绝大部分人都早,撇开他的商业才能不谈,即使只看他的技术水平,也可以算得上是学富五车,顶上几个普通的计算机软件博士之和是没有问题的,比起 Linus Torvalds之类的"大牛"们应该技高一筹才对,怎么还进不了这层楼呢?
非常遗憾的是,从Windows操作系统的实现来看,其对计算的理解是很肤浅的,如果把Google对计算方面的理解比做大学生,比尔·盖茨只能算做一个初中生,所以比尔·盖茨永远只能做个大牛人,成不了"专家"。
当你象我上面说的那样去做了以后,随着时间的推移,总会有某天,你发现,在很多小的领域里,你已经学不到什么新东西了,所有最新出来的研究成果你几 乎都知道。此时你会发现你比在做"牛人"和"大牛"时的水平不知高出了多少,但是你一点也"牛"不起来,因为你学的知识和思想都是别人提出来的,你自己并 没有多少自己的知识和思想分享给别人,所以你还得继续往楼上爬才行。
我不知道国内的"专家"到底有多少,不过有一点可以肯定的是,如果把那些专门蒙大家的"砖家"也算上的话,我们的砖家比西方的要多得多。
当"专家"们想继续往上一层楼爬时,他们几乎一眼就可以看到楼梯的入口,不过令他们吃惊的是,楼梯入口处竖了一道高高的门槛,上面写着"创新"二字。不幸的是,大多数人在爬到第5层楼时已经体能消耗过度,无力翻过这道门槛。
有少数体能充足者,可以轻易翻越这道门槛,但是并不意味着体力消耗过度者就无法翻越,因为你只是暂时还没有掌握恢复体能的方法而已,当掌握了恢复体能的方法,将体能恢复后,你就可以轻易地翻越这道门槛了。
怎么才能将体能恢复呢?我们的老祖宗"孔子"早就教导过我们"温故而知新",在英文里,研究的单词是"research",其前缀"re" 和"search"分别是什么意思不用我解释吧。或许有些人觉得"温故而知新"和"research"有些抽象,不好理解,我再给打个简单的比方,比如你 在爬一座高山,爬了半天,中途体力不支,怎么恢复体力呢?自然是休息一下,重新进食一些食物,体力很快就可以得到恢复。
由此可知,对体能消耗过度者,休息 重新进食通常是恢复体能的最佳选择。可惜的是,国内的老板们并不懂得这点,他们的公司里不仅连正常国家规定的休 息时间都不给足,有些公司甚至有员工"过劳死"出现。所以国内能翻越"创新"这道门槛的人是"少之又少",和西方比起来估计是数量级的差别。
再说说重新进食的问题,这个重新进食是有讲究的,需要进食一些基础性易消化的简单食物,不能进食山珍海味级的复杂食物,否则很难快速吸收。以查找为 例,并不是去天天盯着那些复杂的查找结构和算法进行研究,你需要做的是将二分查找、哈希查找、普通二叉树查找等基础性的知识好好地复习几遍。
以哈希查找为例,首先你需要去将各种冲突解决方法如链式结构、二次哈希等编写一遍,再试试不同种类的哈希函数,然后还需要试试在硬盘中如何实现哈希 查找,并考虑数据从硬盘读到内存后,如何组织硬盘中的数据才能快速地在内存中构建出哈希表来,...,这样你可能需要将一个哈希表写上十几个不同的版本, 并比较各个版本的性能、功能方面的区别和适用范围。
总之,对任何一种简单的东西,你需要考虑各种各样的需求,以需求来驱动研究。最后你将各种最基础性的查找结构和算法都了然于胸后,或许某天你再看其他更复杂的查找算法,或者你在散步时,脑袋里灵光一现,突然间就发现了更好的方法,也就从专家晋升为"学者"了。
学者所做的事情,通常都是在前人的基础上,进行一些小的优化和改进,例如别人发明了链式基数排序的方法,你第1个发现使用一定的方法,可以用数组替代链表进行基数排序,性能还能得到进一步提高。
由于学者需要的只是一些小的优化改进,因此中国还是有一定数量的学者。不过和国外的数量比起来,估计少了一个数量级而已。
也许有人会觉得现在中国许多公司申请专利的数量达到甚至超过西方发达国家了,我们的学者数量应该不会比他们少多少。因此,有必要把专利和这里说的创新的区别解释一下。
所谓专利者,只要是以前没有的,新的东西,都可以申请专利;甚至是以前有的东西,你把他用到了一个新的领域的产品里去,也可以申请专利。比如你在房 子里造一个水泥柱子,只要以前没有人就这件事申请专利,那么你就可以申请专利,并且下次你把水泥柱子挪一个位置,又可以申请一个新的专利;或者你在一个柜 子上打上几个孔,下次又把孔的位置改一改,...,均可申请专利。
这层楼里所说的创新,是指学术层面的创新,是基础研究方面的创新,和专利的概念是完全不同的,难度也是完全不同的。你即使申请了一万个象那种打孔一类的专利,加起来也够不到这层楼里的一个创新。
当你爬到第6层楼时,你也许会有一种突破极限的快感,因为你终于把那道高高的写着"创新"二字的门槛给翻过去了,实现了"0"的突破。这时,你也许 有一种"独上高楼,欲望尽天涯路"的感觉,但是很快你会发现看到的都是比较近的路,远处的路根本看不清楚。如果你还有足够的体力的话,你会想爬到更高一层 的楼层去。
从第6层楼爬到第7层楼,并没有多少捷径可走,主要看你有没有足够的能量。你如果能象Hoare一样设计出一个快速排序的算法;或者象Eugene W. Myers一样设计出了一个用编辑图的最短路径模型来解决diff问题的算法;或者象M.J.D. Powell一样提出了一个能够处理非线性规划问题的SQP方法;或者你发现基于比较的排序算法,它的复杂度下界为O(NLogN);或者你发现用栈可以 将递归的算法变成非递归的;或者你设计出一个红黑树或者AVL树之类的查找结构;或者你设计出一个象C++或Java一样的语言;或者你发明了 UML;...,你就爬到了第7层,晋升为"大师"了。
上面举的这些例子中,其中有些人站的楼层比这层高,这里只是为了形象说明而举例他们的某个成就。从上面列出的一些大师的贡献可以看出,成为大师必须 要有较大的贡献。首先解决问题必须是比较重要的,其次你要比前辈们在某方面有一个较大的提高,或者你解决的是一个全新的以前没有解决过的问题;最重要的 是,主要的思路和方法必须是你自己提供的,不再是在别人的思路基础上进行的优化和改进。
看了上面这些要求,如果能量不够的话,你也许会觉得有些困难,所以不是每个人都能成为"大师"的。中国软件业里能称得上是"大师"的人,用屈指可数来形容,估计是绰绰有余。值得一提得是,国外的"大师"就象我们的"大牛"一样满天飞的多。
陈景润虽然没有彻底解决哥德巴赫猜想,但他在解决问题时所用的方法是创新的,因此也可以进到这层楼来。当然,如果能彻底解决哥德巴赫猜想,那么可以算到更高的楼层去。
鉴于"大师"这个称号的光环效应,相信有不少人梦想着成为"大师"。或许你看了前面举的一些大师的例子,你会觉得要成为大师非常困难。不妨说一下,现在有一条通往"大师"之路的捷径打开了,那就是多核计算领域,有大量的处女地等待大家去挖掘。
以前在单核时代开发的各种算法,现在都需要改写成并行的。数据结构与算法、图像处理、数值计算、操作系统、编译器、测试调试等各个领域,都存在大量的机会,可以让你进到这层楼来,甚至有可能让你进到更高一层楼去。
多个方面有着重大的贡献,可以创建一两个流派,影响着计算机软件的发展方向,比如冯 诺依曼
将计算机科学发展到深刻影响每个人的生活,比如创立互联网
将计算机科学变成哲学,可以控制人的灵魂。