【CSDN编者按】本文的作者是一名软件开发工程师,在读过《大教堂与市集》的作者、《新黑客词典》的维护人、著名黑客ESR(Eric Steven Raymond)的博客文章《如何成为一名黑客》之后,对计算机程序产生浓厚兴趣,并受此影响走向软件开发的职业道路。来了解下他的故事和对于黑客的见解吧!
作者 | Zach Alberico
译者 | 苏本如,责编 | 夕颜
头图 | CSDN付费下载自视觉中国
出品 | CSDN(ID:CSDNnews)
以下为译文:
为什么要写这篇文章?
当我十三岁开始上高中的时候,我读了ESR写的这篇博客文章:如何成为一名黑客(http://www.catb.org/~esr/faqs/hacker-howto.html)。这篇文章让我了解了程序员们一起在互联网上构建东西的社区,这让我很兴奋。我试着开始着手安装Fedora Core 4,最终安装成功了Ubuntu 6.06,通过这一过程,我自己学到了很多关于故障排除的知识,并且努力尝试着让系统真正工作起来。这个过程对于培养帮助我获得现在这份工作的技能至关重要。我读了关于Python的书,写了一些小程序,然后决定学习计算机科学,了解计算机是如何工作的。在我不确定自己将来想做什么的时候,这对我来说是一个相当有影响力的文章。
在布法罗郊区长大的我,在纽约可能感到相当孤独。虽然我很幸运,我父亲在大学里因为好玩而编写了一个Apple II程序(所以我应该有一些编程背景/黑客精神),但他对更现代的软件开发知之甚少。我喜欢电脑,也喜欢玩电脑,但我不知道什么是计算机可以做到的,甚至不知道在哪里可以了解更多计算机知识。当搜索空间如此之大,并且有许多未知的信息时,你甚至很难找到好的信息来源来学习。有能力选择好的信息来源需要一些现有的知识,如果没有经验丰富的人的指导,这可能会很困难。我认为,现在互联网更发达,情况可能会更好,但在某种程度上说,现在比过去可能更加困难,因为有更多的选择需要筛选。
16年后,我想写我自己的版本的《如何成为一名黑客》,来对ESR的原著进行补充,这一定是件很有趣的事。我想在这篇文章加入那些我在13岁时想读到的一些东西,并且重点关注那些我觉得很有帮助的其他内容。现在很多关于编程及其相关主题的文章都在拼命鼓噪,试图说服你采用特定的编程语言、框架、操作系统、或者特定的编程方法。本文在这些方面着墨不多,尽管我也提出了一些建议,但它们只是一些温和的观点。本文的主要目标是填补那些在ESR的原始文章未曾触及而我非常想了解的空白(所以你应该先读ESR的那篇文章)。
要学习的东西有很多
记得在刚开始的时候,我读过一些文章和书,但对其中的很多行业术语不甚理解 - 这很正常。随着你接触到了更多的事情,并深入到每一件你不理解的事情中去,那些一开始看起来不可理解的事情会慢慢变得可以理解。保持继续阅读并且挺过这段艰难时期是很好的方法,当你不理解的时候就去查找,当你可以提问的时候就去问问题(ESR也有一篇关于如何问好问题的文章)。
每个人都会在某个时候第一次学到一些东西,然后这些东西就会慢慢地积累起来,直到你掌握了那些基本知识为止。我记得一开始我不懂任何细节(比如:我不知道如何在终端中输入命令来运行它们,或者cd代表“change directory”)。你从接触中获得这些知识,你玩得越多,你接触得就越多,你积累的知识和经验也就越多。如果你有幸生活在一个地区有一群对软件感兴趣的人,你就能够更快地学习。