2011年9月17日,星期六

你必须砍

势在必行 运行Linux,这是使用Linux计算机操作系统的经典手册。在上下文中,这意味着要充分利用OS的全部功能,您不仅要成为被动用户,还必须运用一些创造力,并以程序员的思维方式积极,创造性地使用它。当我注意到在练习和教学时,只有很少的材料用于预定目的,而我应用的信息却不在页面上,这让我想起了这一点。我回顾了一些旧文献-在2000年至2005年间,我每天都是Linux用户时,我读了很多这些东西,并且很惊讶地记得它对我的思维过程和写作风格产生了多大影响,以及它适用于学习音乐和一般作为演奏者。实际上,您可以用“玩家”代替黑客,并在随后的许多事情中使用等效的音乐/音乐社区术语。

首先,什么是黑客入侵,什么不是:
术语“破解”和“ 骇客”在流行用法中经常被混淆。虽然破解涉及不道德或非法行为(例如损害系统的安全性), 骇客是一个通用词,意指对某些东西进行编程,修补或引起浓厚兴趣。 流行媒体经常使用“黑客”一词来指代破解。 的Linux社区正试图将黑客行为与积极含义重新联系起来。

尊贵的定义 术语文件,这是黑客演讲/写作约定,术语和语的集合:

黑客
1.与大多数用户相反,他喜欢探索可编程系统的详细信息以及如何扩展其功能,而不喜欢学习最低限度的知识。 2.热情地(甚至是强迫性地)编程的人,或者喜欢编程而不只是对编程理论化的人。 3.能够欣赏黑客价值的人。 4.善于快速编程的人。 5.特定程序的专家,或经常使用该程序或在该程序上工作的专家;就像“ Unix黑客”中一样。 (定义1至5是相关的,适合它们的人会聚在一起。) 6.任何形式的专家或爱好者。例如,一个可能是天文学黑客。 7.乐于创造性克服或克服局限性的人。 8. [不推荐使用]恶意的人,试图通过四处寻找来发现敏感信息。因此是“密码黑客”,“网络黑客”。正确的说法是饼干。

休息后还有更多有趣的东西:


[...]
最好是被别人形容为黑客,而不是那样形容自己。黑客认为自己是一种精英(一种基于能力的精英统治),尽管新成员很乐意(在音乐方面很不受欢迎)受到欢迎。因此,在将自己标识为黑客时要有一定的自我满足感(但是如果您声称自己是一个黑客而不是黑客,那么很快就会被标记为伪造)。也可以看看 旺比.

玩家一直都自称为玩家,因此在最后一段中,您可以将“猫”一词换成黑客/玩家-您想让其他人说您是猫,但称自己为猫则很糟糕。


埃里克·史蒂文·雷蒙德(Eric Steven Raymond)的一些指南 如何成为黑客,适用于较宽松的演奏;解决问题并不是播放音乐的主要部分,尽管我在教学中做了大量工作:

这个世界充满了令人着迷的难题,亟待解决。
成为一名黑客很有趣,但这是一种需要大量努力的乐趣。努力需要动力。成功的运动员会从某种身体愉悦中获得动力,使自己的身体表现出色,超越自我极限。同样,要成为一名黑客,您必须从解决问题,提高技能和锻炼智力方面获得基本的刺激。
如果您不是那种自然地感觉到这种感觉的人,则需要成为一个人才能使其成为黑客。否则,您会发现自己的黑客精力被性,金钱和社会认可等干扰所消耗。
(您还必须对自己的学习能力形成一种信念,即即使您可能不知道解决问题的全部知识,但只要解决一部分问题并从中学习,您就会相信:学习足够的知识来解决下一部分,依此类推,直到完成。)


态度不能替代能力。

仅仅保持一种态度并不能使您成为黑客,甚至可以使您成为冠军运动员或摇滚明星。成为一名黑客将需要智力,实践,奉献和辛勤工作。

因此,您必须学会不信任态度和尊重各种能力。黑客不会让装腔作势者浪费时间,但他们会崇拜能力,尤其是黑客能力,但任何事物的能力都很重要。很少有人能够掌握的苛刻技能的能力尤其出色,而涉及精神敏锐度,工艺和专注力的苛刻技能的能力则最佳。

如果您喜欢自己的能力,那么您会喜欢自己发展自己的能力,而艰苦的工作和奉献精神将成为一种激烈的游戏,而不是繁琐的工作。这种态度对于成为黑客至关重要。

 彼得·诺维格(Peter Norvig)的成功黑客秘诀,来自 十年自学编程,与成为音乐家的过程非常相似:

- 对编程感兴趣,并做一些有趣的事情。 确保它保持足够的乐趣,以便您愿意在十年内投入使用。
 - 与其他程序员交谈;阅读其他程序。 这比任何书籍或培训课程都重要。
 - 程序。最好的学习方法就是边做边学。 从技术上来说,“在一定范围内,个人的最高绩效不会根据扩展经验而自动获得,但是即使是经验丰富的个人,由于有意改进也可以提高绩效水平。 。” (p。366)和“最有效的学习需要对特定个体具有适当难度级别的明确定义的任务,信息反馈以及重复和纠正错误的机会。” (第20-21页)《实践中的认知:日常生活中的思维,数学和文化》是对此观点的有趣参考。
如果你想,在大学(或研究生院)学习四年。这将使您能够访问一些需要证书的工作,并且可以使您对该领域有更深入的了解,但是,如果您不喜欢学校,则可以(在一定的奉献精神下)获得类似的工作经验。无论如何,仅靠书籍学习是不够的。 《新黑客字典》的作者埃里克·雷蒙德(Eric Raymond)表示:“计算机科学教育不能像学习画笔和颜料那样使任何人成为专家程序员。”我曾经雇用过的最好的程序员之一只有高中学位。他开发了许多出色的软件,拥有自己的新闻组,并拥有足够的股票期权来购买自己的夜总会。
与其他程序员一起从事项目。 在某些项目中成为最好的程序员;在其他人身上最糟糕。当您处于最佳状态时,就可以测试自己领导项目的能力,并用自己的远见激发他人的才能。在最坏的情况下,您将学习大师的所作所为,并了解他们不喜欢做的事情(因为他们让您为他们做)。
学习至少六种编程语言。 包括一种支持类抽象的语言(如Java或C ++),一种支持功能抽象的语言(如Lisp或ML),一种支持语法抽象的语言(如Lisp),一种支持声明性规范的语言(如Prolog或C ++模板),一种支持协程(如Icon或Scheme),以及支持并行性(如Sisal)。


最后,从 如何成为黑客:
要成为一名黑客,您需要动力和主动性以及自我教育的能力。现在开始...

没意见: