作为一个IT从业者,经常被人问到如何才能快速当一名程序员,有高考学生的家长,也有年过30甚至40的其他行业从业人员。对于这些社会各个行业的人想当程序员,我的第一反应是:劝你们不要当程序员!
程序员作者按:这里职谈人生想说的是,我们说的都是普通人,是大多数人。如果你非要举例江民杀毒的创始人那样40岁开始学计算机,最终成就一番事业的话,对不起,这篇文章不适合你!
你想当程序员的动机是什么
赚钱:当问及那些想当程序员的人动机是什么,90%以上的人会说薪水高!如果你人到中年,还以此为缘由要想跨行当一名程序员,我是特别不建议你改行的。其实每个人到了中年,都已经知晓天下没有好当的差,没有好赚的钱;一份付出,一份收获。
大学里计算机科学与技术等计算机相关专业,是以高中理科为基础,大学里四年各种基础课、专业课几十门累积起来的编程能力,再加上进入社会后的项目历练。而一个外行人想靠突击培训战胜人家科班毕业的人,我觉得有可能你对自己的能力估计过高了!
赚更多钱当然,我并不觉得你是为了赚钱而想改行当程序员就不高尚,其实,恰恰相反,人到中年,你的艰辛和执着我懂。你想赚钱的心我也懂,而且我对你这样的动机肃然起敬,最起码你想给家人更好的生活。但我还是想劝你:当程序员,请你三思而后行!
兴趣:有人告诉我,之所以想转行当程序员,是因为我对编程很感兴趣,觉得能用代码实现一些功能非常炫酷。这类诉求者,大多是些年轻人,甚至是一些学生。对这样的动机,我能说的依旧是我不太建议你们学计算机专业!
兴趣?任何兴趣都不是一时性起,更不是见色起意。对一个行业的兴趣,不是雾里看花,更不是只见其好不见其苦的水中望月,影影绰绰。代码中也有枯燥和艰辛,更有无助和无奈。一个人干一个工作完全靠兴趣,这是十分难以理解的。工作之于人来说,是责任担当、是坚持和信念,最后才是兴趣。
对于以上动机,我不能否定这些动机的合理性!但我不希望咨询过我的人,在程序员这条路上最终成为《小猫钓鱼》一样的追逐潮流和时髦,追逐眼前利益和所谓的一时兴趣。
程序员的苦你是否能够忍受?
我相信,任何行业都有苦有甜。但程序员这个行业,加班是无法回避的,哪怕加班的时候根本不在写代码。因为项目的组织者和需求方大多是外行,需求时刻改变,很多管理者只管交期,而对付需求改变和交期,很多管理者只有一个办法:加班!
加班作为程序员,开会的时间有时候占到了你工作的一多半,而且很多时候的会议就是扯淡推脱责任和浪费时间。本来你这一刻灵感来了,只需要1分钟即可写出高效美观的代码。对不起,开会,立刻马上!
行业选择不是一辈子,但选择了可能就是一辈子
俗语常常说:女怕嫁错郎,男怕入错行!是的,不同的行业都有兴衰周期律,不同的是不同行业的兴衰周期律时间长短不同。一个人想每个行业的兴期都赶上,那只是痴人说梦。在程序员这个圈子里也是一样,有一些程序员,听说Java很流行,就赶紧去学java;听说Python搞人工智能很赚钱,立马去学python。到最后你会发现,他可能什么都会一点,但什么都没办法深入。道理很简单,因为你对一门技术深入不够,时间不长,经验不多,项目太少。但他自己却以为,程序语言都是相通的,学什么语言都很快!
累而事实上,只有对一门技术足够深入,经验足够丰富,看什么需求都能游刃有余。而语言,只不过是个工具。能用Java实现的,用C++一样可以实现,而且性能更好。能用C#实现的,用java又何尝不能实现。当然,我并不否认有些语言具有一些特定的优势,例如python在人工智能方面有着更多的用户和类库,能够更容易使用C的类库等。但这并不妨碍你用你最熟悉的语言去实现其他语言实现的功能和业务逻辑!
职业抉择职业选择,可能从大学的专业选择就开始了,它可能会影响你一辈子的职业生涯。人总有一个阶段,选择了一个职业可能就是一辈子!
结束语:
对于那些想转行学编程的人,我想说的是,请三思而后行!任何行业都是二八原则,少数人拿最多的报酬,多数人成为普通人。任何行业都是金字塔模型,只有金字塔顶的人才能名利双收。当然,你或许并没有想着自己成为那20%,或者成为金字塔顶,你只需要养家糊口。那么,你改行的必要性在哪里?在你目前的行业里,你只需要继续努力,就能成为一个普通的工作者,养家糊口!