正文
尽管如此,网络架构知识并未普及。
很多开发人员虽然做过网站建设,却对“幕后”知识并没有很好地领会
,(比如)Web 表单、高速缓存、HTTP 协议、Apache 等。这些(知识)都是次要掌握的。
在线学习对就业市场的影响
大概是受几年前开始兴起的在线学习的影响,自学的 web 开发人员对于底层技术的了解少的惊人。面向编程语言的课程不能全面覆盖 web 的知识,导致学生完全不知道 htaccess 文件是做什么的,或者怎样去重启 Unix 的守护进程,或者不同类型的 POST 编码是如何 工作的。
那么,一个全栈开发人员都应该知道一些什么(知识)呢?在工作描述中提及的通常是前端和后端技术的结合,像是JavaScript 和 Node、PHP 和 jQuery、Angular 和 Spring 等等。其实,在这个范围以外,还有相当多的信息可以提升个人建站的能力。那些固步自封,仅凭单一技术就能做出一番事业的日子已经一去不复返了。
如果只坚守你(所掌握的技术)已经不再能满足需求,那我们要怎么办呢,我们如何才能跟上 web 库以指数形式在增长的速度?如今,已推出的软件实在太多了,导致了技术间组合的可能性也在急速增加。这种组合的爆发将会把软件开发推向一个特别的领域。你所了解的使用技术 Y 和 Z 来解决问题 X 的几率在逐渐减小,而且 Google 可以为你提供的帮助也在以同等速率降低。这些做法很快就要行不通了。
黑客(Hacker):“反脆弱性”的程序员
被誉为“编程界的摇滚明星”的 John Carmack 的文章中介绍了这个非常有趣的概念(反脆弱性)。我节选了《反脆弱性(Antifragile)》这本书中的一段,它是这样描述的:
“就像人的骨头在施以压力时会变得更加强壮,流言和骚乱越是试图掩盖反而越会加剧一样,生活中的很多事会得益于压力,失序,波动和混乱。 塔雷伯所称的“反脆弱性(antifragile)”的意思就是,不但要从混乱中有所收获,而且还需要(依靠)它来生存和繁荣”。(译注:塔雷伯,知名思想家,经验主义者,金融业人士,风险工程学教授、哲学随笔作家,以《黑天鹅效应》一书闻名于世。来源:维基百科)