微信公众号:路人zhang
扫码关注微信公众号

回复“面试手册”,获取本站PDF版

回复“简历”,获取高质量简历模板

回复“加群”,加入程序员交流群

回复“电子书”,获取程序员类电子书

冬天,裁员,减薪,996,秃头,这些词在最近几年一直徘徊在所有的代码农民。

许多程序员对自己的当前状态感到困惑和焦虑,而这似乎是国内外程序都会遇到的问题。

近日,在Reddit上,一位做了40年程序员的网友对这个问题发表了自己的看法。他还总结了自己40年的从业经验,整理成13条建议,希望能给码农们提供一些建议或帮助。

1、软件开发职业还很年轻

计算机语言Fortran的历史可以追溯到1957年。1958年,LISP和Algol出现,1959年,COBOL出现,一些更古老的Plankalk出现在1942年左右。

假设有程序员1957年,那只有65年。艾伦·凯,Smalltalk编程语言的发明者,开始于1963-59岁。他是我找到的工作时间最长的人之一。

悠悠球马今年66岁,从4.5岁开始演奏大提琴。他远不是世界上演奏时间最长的音乐大师。相比之下,程序员真的很年轻。

2、只要喜欢,几岁开始都不晚

大约一年前,当我45岁的时候,我开始学习弹钢琴。今年我觉得我一直在进步。我相信,如果我坚持下去,到60岁我会很好。学习编程也是如此。当您已经在其他领域拥有一些经验和知识时,您将快速学习编程。

我遇到过很多优秀的程序员,20岁、30岁甚至40岁才进入这个行业,所以我不知道为什么你不能在50岁、60岁开始。这项业务需要时间和工作,但您不必年轻。

如果您认为自己无法成为行业专家或大师,请不要灰心。世界上大多数人都不能成为溜溜球马或艾伦·凯。你必须接受这一点。

3、多尝试不同类型的编程

建议大家多写一些软件,多写各种类型的软件。尝试使用不同类型的编程语言,这样可以开阔视野,提高思维能力。每种语言都可以从中获得一些灵感。40年来,编程语言和方法一直在变化,我们需要适应它。

4、不要怕回报慢

不要认为你所学的是无用的,因为无用是相对的。

我曾经将多年的业余时间投入到一种名为DGD的旧MUD编程语言中。当然不是为了实用价值,因为它几乎所有的东西都是奇怪的,不规范的,很少有真正能够应用的。

但是它教会了我很多东西,它教会了我Ruby on Rails后来应用的东西,它教会了我如何使用数据库编程,它还教会了我一些东西,我可以在以后学的五六种语言中使用。

有趣的是,多年后我在DGD找到了一份咨询工作。世界上没有很多DGD工作,但是我有一个!这比我学过的许多 “实用” 语言更实用。

学习更多有趣或有用的东西,即使现在看起来没用,也许有一天它会派上用场,让你大吃一惊。

5.找到工作中最有趣的部分
一开始,写代码可能是生活的需要,也可能是巧合,但是如果你想工作到退休,你需要找到你的兴趣点。只有这样,才能长期坚持下去。对我来说,编写代码使我感到成就感和愉悦感。

6.不要把计划看得太重。
很多人往往会做很多计划,往往会做很多未完成的事情,其实没必要太在意,因为你不可能通过计算和规划来完成所有的事情。这不是失败,也不是放弃。

你无法预测什么是有价值的,你可以学到一切。你活得越久,工作越好,你就越意识到一切都可以教会你一些有用的东西。

7.不要混淆工作和事业
不要混淆工作和事业,它们不是一回事。区分它们的最好方法是您是否会因为金钱而放弃。

对我来说,编写代码是一项很棒的工作,但这只是一个好的或更好的职业。对于音乐家来说,他们的薪水并不高,但是音乐是他们的整个职业。

8.规范不重要
一开始,您通常会收到有关首先学习哪种语言或技术的不同建议,但这并不重要。

没有必须遵循的规范或惯例。规范被用来打破它们。最重要的是花时间学习,研究和改进。

9.你越优秀,你就会和别人不一样。
不要按照招聘要求的要求去学习和提高自己的能力。这样做只会成为工具人。找到你真正擅长的,比如团队管理、设计营销、写作或创业。与众不同是你最有价值的部分。

10、从实践中学习
对于初学者,首先学习用一些实用语言构建一个可用的软件。不管用什么样的语言,只有犯一些真正的错误,才能在错误中解决问题。然后你可以这样循环: 练习,犯错误,学习理论,纠正错误。

11、学习各种技术和各种非技术技能
如果你想做几十年的程序员,你不仅要学习各种技术,还要学习各种非技术技能。

例如,“学习至少一种函数式编程语言” 就像钢琴家 “学习演奏莫扎特的钢琴音乐” 一样必要,但同时,学习一些参与编程的边缘技巧会培养你额外的洞察力。

12.向其他领域学习
你可以从其他领域学到很多东西。我曾经写过一本关于如何窃取一个艺术家的修行方法的书,正是因为艺术和音乐是古老的学科,几千年来一直引领着计算机的发展。

所以,如果你遇到问题,你可以考虑其他领域的人将如何处理这个问题。例如,阿图尔·加万德 (Atul Gawande) 的《名单声明 (清单宣言) 》讲述了飞行员、摩天大楼建设者和医生处理问题的完全不同的方式。这些都是好方法。

13.不要重复制造轮子
程序员中有一种说法是 “不要重复制造轮子”。我们的工作是为计算机找到一种方法来完成所有重复的工作,以便我们只能做新的工作。

你可以尝试重新发明轮子,你可以故意以 “坏” 的方式编写代码,看看会发生什么。总而言之,您需要真正擅长于不寻常的事情。

14.谨慎对待效率
我们经常提到效率这个词,有时它们会带来巨大的收益。通常他们什么都不给。有时候他们对你的伤害大于帮助。

效率是如何改进已经到位并运作良好的战略。如果您期望每年都有20% 改善,并且每个月都有复合,那就会感觉不好。提高一个零件的效率通常是以降低另一个零件的效率为代价的。

15.坚持去做
如果你真的想成为一名程序员一辈子,最重要的是坚持下去,只写。无论如何,只要您愿意,就可以始终成为程序员。

很多人认为在中国35岁就会失业。他们怎么能退休。考虑到国内外的情况是不同的,这是正确的,但是从另一个角度来看,国内的一些程序员确实已经工作了四五十年,并且他们仍然在做。每个职业都有其局限性和劣势。我个人最赞同第5、7条。最重要的是找到自己的兴趣点并坚持下去。

本站链接:https://www.mianshi.online


声明 | 部分内容来源网络,仅供读者学习交流。文章版权归原作者所有。 如有不妥,请联系删

本文链接:https://www.mianshi.online/1675.html