如何学习层出不穷的新技术?

Hacker News 上面,有人问:“新人进入软件行业,应该学什么?”

很多热心人提供建议。有人说:

“你应该好好学习一门语言。精通一门计算机语言,可以让年轻工程师脱颖而出。这不仅对日常工作很有帮助,也有利于以后学习其他语言。学习的东西包括:设计模式、调试、性能、生态系统、标准库等等。”

立刻有人提出相反的建议。

“我建议学习几种彼此非常不同的语言。例如 Java,Go 和 JavaScript。你要学到精通其中每一种语言,能够独立地从头搭建一个新项目,在该语言的生态系统中完成所有开发工作。”

有人举出几种必须掌握的工具。

学习 SQL,你将能够使用任何与数据库相关的软件。

学习 HTML,你将能够创建一个通用的用户界面。

学习 GIT,你将能够与他人分享您的工作。

学习 Unix shell,你将能够部署所有的东西。

不少人赞同这种说法。

“大多数职业(从医生到电工),多年的经验等同于多年的专业知识。但是在软件开发中,技术变化如此之快,你花费了大量时间学习技术和工具,一旦这些技术被取代,你的知识将变得毫无价值,因为它们大部分都是实施的细节。最终,所有这些年,你确实积累了一些一般性的经验,但与具体实施相关的知识,你都不再掌握了。

唯一留下的是那些基本的东西,你应该专注于软件开发的核心知识和数学知识,您的这些技能会不断增长,而不是随着技术潮流的变化而消失。”

我最喜欢的是下面这个建议。

“不要让自己太忙碌。不过,说起来容易做起来难。

我们雇用新毕业的工程师时,会派给他们很多琐碎的工作,使他们饱和。他们会逐渐忘记大学里学到的课程,全部注意力都集中在手头的工作。很多人倾向于通过忙碌程度来评价自己,我相信这是一个死亡陷阱。”
参考:https://www.yuque.com/ruanyf/share/issue-24

猜你喜欢

转载自blog.csdn.net/fzy629442466/article/details/89503829