黑客必学语言(黑客入门学什么语言)

访客4年前关于黑客接单1033

  这个问题是矛盾的,要学黑客是看你想要成为哪种级别的黑客了,如果你只想成为脚本小子,你不用学任何一门编程,你只要熟悉各种黑客工具的使用就可以了。如果你想成为高级点的黑客,肯定是会要编程的,初学者建议从c语言学起,现在大学课程差不多都是这个安排的。如果你在c上花了很多精力,我相信你就可以成为一个高级黑客了。如果你觉得c语言入门太难,建议从python开始,我相信你也会爱上python的。但是c语言你必须要学习,因为我们的操作系统都是c写出来的。其他的编程语言,如果你不想成为一个程序员你大可不必那么认真的去钻研。web方面了解一下JavaScript,php,java ,c#能看得懂漏洞源码。如果你想更深层次学习点软件安全,x86汇编,32位汇编这是必须的。学习哪种语言不重要,重要的是它能帮你解决问题就可以。当然编程语言还有很多,我只是列举几种供你参考。你只要明白一招鲜吃遍天,当然我说的是精通其中一门。------------------------------------------------------------------------------------------------------------------------------望采纳,非常感谢!

  新手朋友们,请你们记住我这句话:

  所谓的高手决不是什么都懂的人,而是知道怎么样自己去寻找答案,解决问题的人

  你们知道吗,你们问的问题我很多也不知道,但是我还是回答了,所以很多朋友信任我,但是我怎么回答的呢,很简单,去一搜索,什么问题都解决了。

  但是,我跟你们很多新手不一样,你们问了问题,我找了个答案给你,而我自己找答案的时候把搜索出来的相关资料都读了一遍,我比你们学到更多东西啊,我每天都这么干,我当然每天都学到很多东西啦

  而你们很多人呢,有问题只知道来问一下,找个答案就走了。

  还有,网上有很多好的计算机网站,比如我们不是专业人士的话,这些网站已经很好了,我是每天都去看,去学习的,你们是不是也是呢?

  中国有句古话“授人以鱼,不如授人以渔“,意思是给你鱼不如教你捕鱼,我很乐意帮朋友们解决问题,但是我更愿意跟大家探讨问题。

  只有自己动手,活到老学到老的人,才是真正的高手。

  希望大家都能成为真正的高手。

  下面就讲黑客,由Eric Steven Raymond写的一篇文章

  如何成为一名黑客

  作者:Eric Steven Raymond

  译者:Ionwing

  怎么样才算是一名Hacker

  在 Jargon File 中有一堆关于“hacker”这个名词的定义,大部份意见认同黑客必须是技术上的行家及热衷于解决难题、突破限制的人,如果你想知道如何成为一名 hacker,这是真正重要的两个方面。(技能和态度)

  历史可以追溯到数十年前之一台分时小型机诞生及ARPAnet实验刚刚开展的那个年代,那时有一个由程序专家和 *** 天才所组成的具有共享特质的文化群体,这一群体的成员是 “hacker”一词的起源。这些Hacker 构建了Internet,创作出我们现今广泛使用的 UNIX 操作系统, 他们使 Usenet 运转,而且还使 World Wide Web 工作起来,如果你是这个文化的一份子,如果你对其有所贡献,并且他人对此表示认同并称你为黑客,那么你就是一位黑客。

  从精神的角度上来讲,“hacker”并不单单局限于软件黑客的范畴。人们也将黑客的处事态度应用于其它领域,如电子学领域或音乐领域 -- 事实上,你会发现在任何一种科学或艺术的更高境界都有这种精神的存在;软件黑客们也认为这些其他领域的类似精神可以称之为“hacker” -- 有些人还主张黑客的通性是独立于其所从事的工作的。但是,在这篇文章中,我们将集中注意力于软件黑客们所需的技能和态度,以及创造了“hacker”一词的共享文化传统。

  两者的根本差别在于:黑客创造新东西,而骇客破坏它们。

  如果你想要成为一位黑客,请继续读下去。如果你只是想要成为一位骇客,那么就请去读 alt.2600新闻组,并做好准备在进了十次五次监狱之后才发现自己并不是那么的棒。那就是我想说的关于骇客的全部。

  黑客的态度

  黑客们解决问题并创造出新的东西,他们信奉自由并乐于互相帮助。想被承认为一名黑客,你必须表现出你具有这种态度,并且必须是发自内心地相信它。

  但是,如果你想通过表现黑客的态度来获取这个文化的认同,你可能忽略了事情的关键。成为相信这种精神的人对你来说非常的重要 -- 因为这有助于你更好的学习并且维持你的动力。象所有的创造性艺术一样,成为一位大师的更好途径是学习大师的精神 -- 并不只从理性,更从感性。

  或者就象下面这些现代禅教一样:

  追求之路:

  注意大师,

  追随大师,

  与大师同行,

  彻底了解大师,

  成为大师。

  所以,如果你想要成为一位黑客,请重复下面的事情,直至坚信不疑:

  1. 这个世界充满等待解决的迷人问题

  做一个黑客可以得到很多乐趣,但那需要你付出与之相当的努力。努力需要动力,成功运动员的动力来自于不断突破自己身体上的极限所带来的快乐,同样地,作为一名黑客,你也必须能从解决难题、磨练技能和训练你的智力的过程中感受到那种悸动。

  如果你不是天生就能感受到这种悸动的人,为了达成目标你必须设法使自己如此。否则,你会发现你的黑客精神很快会被诸如性、金钱和社交活动之类的事所消磨。

  (你也必须对自己的学习能力建立信心 -- 相信你尽管对所要解决的问题所知不多,但只要针对它不断的学习,最终一定可以做到)。

  2.不应该重复解决同一问题

  富有创造力的头脑是珍贵而有限的资源。在还有那么多迷人的新问题等待解决的时候,他们不应该被浪费于重新发明轮子。

  身为一名黑客,你必须意识到时间对于其他黑客是非常宝贵的 -- 所以,共享信息、解决问题并且始终提供解决 *** 给其他黑客几乎可以说是一种道德上的责任,这样其他的黑客就可以抽身解决新的问题了。

  (你无须认为奉献你的全部创造是一种必须的义务,尽管那样做是得到其他黑客尊重的主要途径。黑客的价值观允许你出售足够的产品以满足食物和设备租金的需要。你可以运用你杰出的黑客技能支撑你的家庭或正当地获取财富,只要你在做这一切的时候没有背弃忠诚于你的技艺和黑客同道们)。

  3. 无聊而单调的工作是有害的

  黑客们(以及其他从事创造的人们)绝对不该从事那些无聊或者单调的乏味的重复性工作,因为那意味着他们没有做那些只有他们才能做的事 -- 解决新的问题。这种浪费对于任何人而言都是一种伤害。所以乏味而无聊的工作不仅使人生厌而且非常有害。

  作为一位黑客应该自觉地远离那些可能使人厌烦的比特,不只为你自己, 也为其他所有的人(特别是其他黑客)。

  (这里还存在一些例外,有时黑客们会做一些看起来似乎是重复性或者无聊的工作以作为一种脑力的训练,或是为了学到某种特殊的技能以及某种无法使用其他 *** 获得的特殊经验。这仅是一种选择 -- 没有人应该被强迫面对那些无聊的工作)。

  4. 自由才好

  黑客们天生反对权威。任何一个可以命令你的人都可能妨害你解决令自己着迷的问题 -- 并且权威的工作 *** 通常会给你一个愚蠢的可以的理由。所以应该对遇到的任何权威主义报挑战态度,以免它危害到你和其它的黑客。

  (这并非意味着应该反对所有的权威,正如小孩子需要被指导以阻止他们犯错,黑客也可能会服从某些权威,如果这样做可以更快更好地完成想做的工作,不过那是一种受限并且理性的协定,并非绝对的个人服从)。

  权威擅长监察和保密,并且不信任自觉式的合作和信息共享 -- 他们只相信在他们控制之下的“合作”。所以,身为一名黑客,必须对监察制度、保密和使用强制或欺骗的手段强加责任的行为具有本能的反抗态度,你必须以信任作为你行为的基础。

  5. 态度不能替代能力

  要成为一名黑客,你必须发展这些态度。但单纯地模仿某种态度并不能使你成为一位真正的黑客,也不能使你成为一位冠军选手或摇滚明星。成为一名黑客需要智慧、实践、奉献和努力工作。

  因此,你必须学会怀疑态度并且尊敬每一种能力。黑客们不会为装腔作势的人浪费时间,但是他们尊敬能力 -- 尤其是黑客能力,当然所有的能力都很好。拥有很少有人精通的特殊技能是特别棒的,最棒的能力包括敏锐的洞察、特别的技艺和专注的精神。

  如果你尊敬能力,你将享受到发展自己能力的乐趣 -- 这会使努力工作和奉献成为一种充满 *** 的游戏而非一件苦差事。这对于想要成为黑客的人而言,是非常重要的。

  基本的黑客技能

  黑客的态度是非常重要的,而技术则更为重要。黑客的态度固然无可取代,但是在梦想着得到其他黑客承认之前,至少应该掌握一些基本的技能。

  随著新技术不断地取代旧技术,这些工具也随着时间的变化慢慢地改变。例如,以前我们用机器码编写程序,直到现在广泛使用的HTML。明显需要的技能包括如下所列:

  1. 学习如何编写程序

  当然,这是黑客的基本技能。如果你不了解任何计算机语言,我推荐从Python开始。这种语言设计简洁,文档完整,非常适合初学者。作为优秀的之一语言,它不止是一件玩具;它强大的力量和可扩展性使其同样适用于大型项目。我在evaluation of Python一文中描述了更多的细节,在Python的Web站点有可用的指南。

  Java也是很好的入门语言,虽然要比Python难,但是可以生成更加快速的代码,我想它是极好的第二语言。

  但是要知道,如果你只懂得一两种语言,是无法达到黑客所应具有的技术水平的,而充其量只是一名程序员而已 -- 你需要学习如何以通用的 *** 考虑程序设计问题,而不依赖于任何一种程序语言。要成为一名黑客,你必须做到能结合手册和你已经知道的知识快速地学会一门编程语言。就是说,你应该学习几种完全不同的语言。

  如果你想进行真正的程序设计,必须要学习C,UNIX系统的核心程序语言。C++与C非常的类似,如果你已经熟悉了其中之一,学会另一个将十分容易。然而,这两者都不适合作为你最初学习的语言。

  其它对黑客来说特别重要的语言还包括Perl和LISP。Perl非常有学习的价值;因为它在动态Web页和系统管理方面有非常广泛的应用,所以即使你不编写Perl程序也应该去学习阅读它。LISP值得学习是因为一旦你最终掌握了它,它将带给你深刻的经验和启迪,这种经验可以使你成为更加优秀的程序员,即使你从没有单独用LISP去实现程序。

  实际上,更好去学习所有这五种语言(Python、Java、C/C++、Perl、和LISP)。除了作为最重要的黑客语言之外,它们还代表了完全不同的程序设计途径,将各自教授你极具价值的 *** 。

  我无法在这里全面地指导如何进行程序设计 -- 那是非常复杂的技能。但是我可以告诉你的是这些无法从书本和课程中学到(大多数更好的黑客都是自修而成的)。你可以从书本学到语言的特征,但要使大脑把知识转化为实际的技能,只能通过实践和历练。做法是(a)读代码和(b)写代码。

  学习编程就好象学习书写优美的自然语言。更好的 *** 就是阅读一些专家的作品,然后写一点自己的东西,读一点,写一点,再读一点,再写一些……不断地重复这个过程直到发展出自己的一套经济有效的模式。

  找好的代码读是很困难的,因为可供菜鸟级黑客阅读和更改的大型程序源码是非常少的。这种情况正在改变;Open-Source的软件、编程工具和操作系统(全部都是黑客创作的)正广泛地使用。这引出了我们的下一个主题……

  2. 取得一份Open-Source的UNIX并学习去使用和运行它

  我首先假定你拥有一部个人电脑或是能够获得一部(现在的小孩可以如此容易的拥有:-))。对于任何一个渴望增长黑客技能的 *** 新手来说,一个最重要的步骤就是取得一份Linux或者一种BSD-Unix,将它安装在自己的机器上,并运行起来。

  不错,UNIX并不是这个世界上唯一的操作系统,但是其它操作系统只以二进制形式提供,你无法阅读它的代码,也无法修改它们。想要在DOS或Windows亦或MacOS下开始 学习黑客技能无异于绑著枷锁学习跳舞。

  另外,UNIX是Internet上的操作系统。你可以在不懂UNIX的情况下学习使用Internet,但你无法在不懂UNIX的情况下成为一个Internet黑客。基于这个原因,UNIX仍然是今天黑客文化的坚强核心。(这并不是绝对正确的,并且有一些旧时代的黑客并不以这种情况为乐,但是UNIX和Internet之间的共生关系是如此的牢固以至Microsoft的强壮肌肉也没能给其造成伤痕)。

  因些,让你的UNIX运行起来吧! -- 我自己则比较喜欢Linux(你可以在一台机器上同时运行Linux和DOS/Windows操作系统)。学习它,让它运行起来,给它做修补。通过它与Internet交谈。阅读和修改程序代码,你将获得更多比Microsoft操作系统下所梦想的还要好的编程工具(包括C,LISP,Python,和Perl),当有一天你作为一位专家级的黑客回忆时,你会发现这是如此的有趣,并且让你学到了比想像的还要多的知识。

  关于更多学习UNIX的信息,请看The Loginataka。

  可以在Where can I get Linux获得Linux支持。

  可以在搜寻BSD UNIX的帮助和资源。

  我写了一个初级读本 -- basics of Unix and the Internet。

  3. 学习使用WWW和书写HTML

  大多数由黑客文化创造出来的东西都在我们看不见的地方发挥着作用,维持着工厂、办公室和大学的运转,很难发现其对非黑客人群的生活造成了什么显著的影响。但Web是一个很大的例外,即使政客们也不得不承认这个巨大耀目的黑客玩具正在改变着世界。仅此一个理由(当然还有许多很好的理由),你需要学习如何使Web工作。

  这并不意味着学习如何驾御浏览器(任何人都可以做得到),而是学习如何书写HTML,Web的标记语言。如果你还不知道如何设计程序,书写HTML可以帮助你养成一些习惯。建立起你的主页吧(这里是一个在Web上的初学者指南; here's one)。

  不过拥有一个主页并不能帮助你成为黑客,Web上到处都是主页,大多数没有意义,内容空洞,象泥巴一样 -- 很时髦的泥巴,看起来千篇一律(可以在The HTML Hell Page中得到更多信息)。

  为了让你的主页有价值,它必须富含内容 -- 必须有趣而且(或者)对其它黑客有用。让我们进入下一个主题……

  黑客文化的状况

  像大多数不涉及货币经济的文化一样,黑客文化通过名誉运作。当你尝试去解决一个有趣的问题时,它有多么有趣,你的解决 *** 好不好,正常情况下只有通过与你具有相同或更高技术的人作出评价。

  因此,当你开始玩黑客游戏时,你应该认识到你的分数的保持主要来自于其他黑客对你技术的看法(这就是为什么只有得到了其他黑客的一致承认,你才真正算是一名黑客)。这个事实为黑客单独工作这一印象所蒙蔽;也被黑客文化的禁忌(现在逐渐衰退但依然有效)即利己主义和被外部承认所不容。

  确切地说,黑客文化就是人类学家所说的“天才文化”。你的地位和名誉的增长并不来自于对他人的支配,不因为你长得漂亮,不因为你有一些别人想要的东西,而是因为你的奉献。明确的说,你奉献出了你的时间,你的创造和你的技能。

  这里是你为了获得其他黑客的尊敬可以做的五类事情:

  1. 写Open-Source软件

  首先(最重要的也是大多数情况下)是写其他黑客认为有趣或有用的程序,并把源代码公开给所有黑客文化中的人使用。

  (我们称这项工作为“free software”,但关于free一词的真正含义带给人们许多的困扰,现在我们通常更愿意使用术语“open-source”软件)。

  黑客最尊崇的是那些写出功能强大,为大家所需要,并且大家都在使用的程序的人。

  2. 帮助Open-Source软件做测试和除错

  黑客们也尊敬为Open-Source软件除错的人。在这个并不完善的世界里,我们将不可避免的花费大部分的软件开发时间在除错阶段。这就是为什么所有Open-Source的作者都会告诉你好的beta测试者(他们能够清楚的描述状况,准确的使问题局部化,可以容忍测试版本的 bug,并且能使用一些简单的诊断程序)和红宝石一样贵重。甚至他们之中有些人还可以分辨出哪些除错过程会造成拖延,哪些是令人疲惫的噩梦,哪些不过是些有益的麻烦。

  如果你是一个 *** 新手,试着去找一个你有兴趣的正在发展中的程序,并且成为一个好的beta测试者。从帮忙测试到帮忙除错进而到开始帮忙修改程序,就象自然级数一样,你将学到一些 *** ,并且和今后可以帮助你的人产生有益的联系。

  3. 发布有用的信息

  另一件好事是收集和过滤有用且有趣的信息,整理成Web页或FAQ列表之类的文档,并使其可以使用。

  维护主要技术的FAQ通常可以获得和Open-Source软件作者几乎一样多的尊敬。

  4. 帮忙维护基础设施

  黑客文化(和Internet的发展)由一群志愿者运作。这种运转需要做一些非常乏味但又必须的工作 -- 管理邮件列表,维护新闻组,维护大型的软件存档站点,开发RFC和其它技术的标准。

  做这类事的人将得到很多的尊敬,因为人人都知道这些工作需要耗费很多的时间,又不像摆弄代码那样有趣。这样做显示了奉献精神。

  5. 服务于黑客文化本身

  最后一项,你可以为黑客文化本身服务和做宣传(例如,写一份正确的关于如何成为一名黑客的初级读本 :-))。这不是在你因做上面的四件事情而变得众所周知之前所应该做的。

  准确来说,黑客文化并没有领导者,但是黑客文化存在着文化英雄、部落长老、史学家和代言人。当你在其中混得足够久时,你也许也会成为这其中的一员。千万小心:黑客们并不信任傲慢自大的长者,这种名声是非常危险的。与其去争论这种东西,倒不如坚定自己的立场,并体现出谦虚而高尚的情操。

  Hacker和Nerd(怪人)的联系

  与传说恰恰相反,你无须为了成为黑客而将自己变得异于常人(Nerd)。然而,这可能会有所帮助,并且确实有许多黑客是不折不扣的怪人。背离社会可以帮助你将精力集中于真正重要的事情,象思考和Hacking。

  因此,许多黑客被贴上了‘怪人’的标签甚至以使用‘杂耍者’这样的字眼标示自己为傲 --他们以这种方式表明他们独立于世俗之外。可以在The Geek Page找到更多相关的讨论。

  如果你能对Hacking保有足够的专注,并且还能正常地生活,那么非常好。现在想做到这样比在1970年我还是个 *** 新手的时候要容易得多了。techno-nerd(技术怪才)现在也为主流文化所接受。甚至有越来越多的人认识倒黑客通常也是很好的情侣和配偶。 在 Girl's Guide to Geek Guys 可找到更多相关的讯息。

  ()

  如果你是因为没有生计而关注Hacking,那也不错 -- 至少你不会为不能专心而烦恼了,也许过不了多久你就可以拥有你自己的生活了。

  风范要点

  再次强调,作为一个黑客就要以黑客的头脑思考。即使你的身边没有电脑,你仍有一些事情可做。这些事情不能成为Hacking的替代品(也没有东西可以),不过仍有不少黑客经常这样去做,并认为这些事与黑客的本质有着某种基本的联系。

  * 学习用你的母语写作,有惊人数量的黑客(包括我所知道的所有最出色的黑客)都是很好的作家。

  * 阅读科幻小说,参加科幻小说协会(这是一个遇到黑客和主流黑客们的好办法)。

  * 学习禅教,并(或者)吸收战争艺术(重要的智力训练)。

  * 训练你耳朵的辩音能力,学习鉴赏某种奇特的音乐,学玩一些乐器或如何唱歌。

  * 增强俏皮话和文字游戏的能力。

  你做了越多这样的事,那么你就越可能成为天生的黑客材料。这些事情虽然可能在细节上不是十分的清晰,但对打造你的左右脑能力来说是至关重要的(黑客需要在瞬间对问题的内部机制和次序逻辑做出判断)。

  最后,有一些事千万别做:

  * 不要使用愚蠢而夸张的User ID或化名。

  * 不要加入Usenet上的激烈争论的战火(或任何其它地方的)。

  * 不要cyberpunk(计算机朋客)自称,也不要在这些人身上浪费你的时间。

  * 不要张贴和E-Mail充满拼写和语法错误的作品。

  做这些事的唯一结果就是嘲笑。隐藏身份是一种幼稚愚蠢的Crack行为,黑客从不这么做;他们为自己所做的一切自豪,并想方设法地将其与自己的真名联系在一起。如果你隐藏自己的行为,在黑客的文化圈内你只能是个失败者。

  回答者:李大忽悠 - 高级经理 六级 3-20 14:53

  如何成为一名黑客

  什么是黑客

  Jargon File中对“黑客”一词给出了很多个定义,大部分定义都涉及高超的编程技术,强烈的解决问题和克服限制的欲望。如果你想知道如何成为一名黑客,那么好,只有两方面是重要的。(态度和技术)

  长久以来,存在一个专家级程序员和 *** 高手的共享文化社群,其历史可以追溯到几十年前之一台分时共享的小型机和最早的ARPAnet实验时期。 这个文化的参与者们创造了“黑客”这个词。 黑客们建起了Internet。黑客们使Unix操作系统成为今天这个样子。黑客们搭起了Usenet。黑客们让WWW正常运转。如果你是这个文化的一部分,如果你已经为它作了些贡献,而且圈内的其他人也知道你是谁并称你为一个黑客,那么你就是一名黑客。

  黑客精神并不仅仅局限于软件黑客文化圈中。有些人同样以黑客态度对待其它事情如电子和音乐---事实上,你可以在任何较高级别的科学和艺术中发现它。软件黑客们识别出这些在其他领域同类并把他们也称作黑客---有人宣称黑客实际上是独立于他们工作领域的。 但在本文中,我们将注意力集中在软件黑客的技术和态度,以及发明了“黑客”一词的哪个共享文化传统之上。

  根本的区别是:黑客们建设,而骇客们破坏。

  如果你想成为一名黑客,继续读下去。如果你想做一个骇客,去读 alt.2600 新闻组,并在发现你并不像自己想象的那么聪明的时候去坐5到10次监狱。 关于骇客,我只想说这么多。

  ---黑客的态度

  黑客们解决问题,建设事物,信仰自由和双向的帮助,人人为我, 我为人人。

  要想被认为是一名黑客,你的行为必须显示出你已经具备了这种态度。要想做的好象你具备这种态度,你就不得不真的具备这种态度。但是如果你想靠培养黑客态度在黑客文化中得到承认,那就大错特错了。因为成为具备这些特质的这种人对你自己非常重要,有助于你学习,并给你提供源源不断的活力。同所有有创造性的艺术一样,成为大师的最有效 *** 就是模仿大师的精神---不是仅从理智上,更要从感情上进行模仿。

  So,如果你想做一名黑客,请重复以下事情直到你相信它们:

  1 这世界充满待解决的迷人问题

  做一名黑客有很多乐趣,但却是些要费很多气力方能得到的乐趣。 这些努力需要动力。成功的运动员从健壮体魄,挑战自我极限中汲取动力。同样,做黑客,你必须

  要有从解决问题,磨练技术,锻炼智力中得到基本的热望。如果你还不是这类人又想做黑客,你就要设法成为这样的人。否则你会发现,你的黑客热情会被其他诱惑无情地吞噬掉---如金钱、性和社会上的虚名。

  (同样你必须对你自己的学习能力建立信心---相信尽管你对某问题所知不多,但如果你一点一点地学习、试探,你最终会掌握并解决它。)

  2. 一个问题不应该被解决两次

  聪明的脑瓜是宝贵的,有限的资源。当这个世界还充满其他有待解决的有趣问题之时,他们不应该被浪费在重新发明轮子这些事情上。 作为一名黑客,你必须相信其他黑客的思考时间是宝贵的---因此共享信息,解决问题并发布结果给其他黑客几乎是一种道义,这样其他人就可以去解决新问题而不是重复地对付旧问题。

  (你不必认为你一定要把你的发明创造公布出去,但这样做的黑客是赢得大家尊敬最多的人。卖些钱来给自己养家糊口,买房买车买计算机甚至发大财和黑客价值也是相容的,只要你别忘记你还是个黑客。)

  3. 无聊和乏味的工作是罪恶

  黑客们应该从来不会被愚蠢的重复性劳动所困扰,因为当这种事情发生时就意味着他们没有在做只有他们才能做的事情---解决新问题。这样的浪费伤害每一个人。因此,无聊和乏味的工作不仅仅是令人不舒服而已,它们是极大的犯罪。 要想做的象个黑客,你必须完全相信这点并尽可能多地将乏味的工作自动化,不仅为你自己,也为了其他人(尤其是其他黑客们)。

  (对此有一个明显的例外。黑客们有时也做一些重复性的枯燥工作以进行“脑力休息”,或是为练熟了某个技巧,或是获得一些除此无法获得的经验。但这是他自己的选择---有脑子的人不应该被迫做无聊的活儿。)

  4 自由就是好

  黑客们是天生的反权威主义者。任何能向你发命令的人会迫使你停止解决令你着迷的问题,同时,按照权威的一般思路,他通常会给出一些极其愚昧的理由。因此,不论何时何地,任何权威,只要他压迫你或其他黑客,就要和他斗到底。

  (这并非说任何权力都不必要。儿童需要监护,罪犯也要被看管起来。 如果服从命令得到某种东西比起用其他方式得到它更节约时间,黑客会同意接受某种形式的权威。但这是一个有限的、特意的交易;权力想要的那种个人服从不是你的给予,而是无条件的服从。)

  权力喜爱审查和保密。他们不信任自愿的合作和信息共享---他们只喜欢由他们控制的合作。因此,要想做的象个黑客,你得对审查、保密,以及使用武力或欺骗去压迫人们的做法有一种本能的反感和敌意。

  5. 态度不能替代能力

  要做一名黑客,你必须培养起这些态度。但只具备这些态度并不能使你成为一名黑客,就象这并不能使你成为一个运动健将和摇滚明星一样。成为一名黑客需要花费智力,实践,奉献和辛苦。

  因此,你必须学会不相信态度,并尊重各种各样的能力。黑客们不会为那些故意装模做样的人浪费时间,但他们却非常尊重能力---尤其是做黑客的能力,不过任何能力总归是好的。具备很少人才能掌握的技术方面的能力尤其为好,而具备那些涉及脑力、技巧和聚精会神的能力为更好。

  如果你尊敬能力,你会享受提高自己能力的乐趣---辛苦的工作和奉献会变成一种高度娱乐而非贱役。 要想成为一名黑客,这一点非常重要。

  基本黑客技术

  黑客态度是重要的,但技术更加重要。态度无法替代技术,在你被别的黑客称为黑客之前,有一套基本的技术你必须掌握。 这套基本技术随着新技术的出现和老技术的过时也随时间在缓慢改变。例如,过去包括使用机器码编程,而知道最近才包括了HTML语言。但现在明显包括以下技术:

  1 学习如何编程

  这当然是最基本的黑客技术。如果你还不会任何计算机语言,我建议你从Python开始。它设计清晰,文档齐全,对初学者很合适。尽管是一门很好的初级语言,它不仅仅只是个玩具。它非常强大,灵活,也适合做大型项目。

  但是记住,如果你只会一门语言,你将不会达到黑客所要求的技术水平,甚至也不能达到一个普通程序员的水平---你需要学会如何以一个通用的 *** 思考编程问题,独立于任何语言。要做一名真正的黑客,你需要学会如何在几天内通过一些手册,结合你现在所知,迅速掌握一门新语言。这意味着你应该学会几种不同的语言。

  如果要做一些重要的编程,你将不得不学习C语言,Unix的核心语言。其他对黑客而言比较重要的语言包括Perl和LISP。 Perl很实用,值得一学;它被广泛用于活动网页和系统管理,因此即便你从不用Perl写程序,至少也应该能读懂它。 LISP 值得学习是因为当你最终掌握了它你会得到丰富的经验;这些经验使你在以后的日子里成为一个更好的程序员,即使你实际上可能很少使用LISP本身。

  当然,实际上你更好四种都会。 (Python, C, Perl, and LISP). 除了是最重要的四种基本语言,它们还代表了四种非常不同的编程 *** ,每种都会让你受益非浅。

  这里我无法完整地教会你如何编程---这是个复杂的活儿。但我可以告诉你,书本和课程也不能作到。几乎所有更好的黑客都是自学成材的。真正能起作用的就是去亲自读代码和写代码。

  学习如何编程就象学习用自然语言写作一样。更好的做法是读一些大师的名著,试着自己写点东西,再读些,再写点,又读些,又写点....如此往复,直到你达到自己在范文中看到的简洁和力量。

  过去找到好的代码去读是困难的,因为很少有大型程序的可用源代码能让新手练手。这种状况已经得到了很大的改善;现在有很多可用的开放源码软件,编程工具和操作系统(全都有黑客写成)。这使我们自然地来到第二个话题...

  2 得到一个开放源码的Unix并学会使用、运行它

  我假设你已经拥有了一台个人计算机或者有一个可用的( 今天的孩子们真幸福 :-) )。新手们最基本的一步就是得到一份Linux或BSD-Unix,安装在个人计算机上,并运行它。

  当然,这世界上除了Unix还有其他操作系统。但它们都是以二进制形式发送的---你无法读到它的源码,更不可能修改它。尝试在DOS或Windows的机器上学习黑客技术,就象是在腿上绑了铁块去学跳舞。

  除此之外,Unix还是Internet的操作系统。你可以不知道Unix而学会用Internet,但不懂它你就无法成为一名Internet黑客。因为这个原因,今天的黑客文化在很大程度上是以Unix为中心的。(这点并不总是真的,一些很早的黑客对此很不高兴,但Unix和Internet之间的共生关系已是如此之强,甚至连微软也无可奈何)

  So,装一个Unix---我个人喜欢Linux,不过也有其他选择。(你也可以在同一台机器上同时运行DOS,Windows和Linux)学会它。运行它。用它跟Internet对话。读它的代码。试着去修改他。你会得到比微软操作系统上好的多的编程工具(包括C,Lisp, Python, and Perl),你会得到乐趣,并将学到比你想象的更多知识。

  关于学习Unix的更多信息,请看 The Loginataka.

  要得到Linux,请看: 哪里能得到 Linux.

  3 学会如何使用WWW和写HTML

  大多黑客文化建造的东西都在你看不见的地方发挥着作用,帮助工厂、办公室和大学正常运转,表面上很难看到它对他人的生活的影响。Web是一个大大的例外。即便政客也同意,这个巨大而耀眼的黑客玩具正在改变整个世界。单是这个原因(还有许多其它的), 你就需要学习如何掌握Web。

  这并不是仅仅意味着如何使用浏览器(谁都会),而是要学会如何写HTML,Web的标记语言。如果你不会编程,写HTML会教你一些有助于学习的思考习惯。因此,先建起自己的主页。

  但仅仅建一个主页也不能使你成为一名黑客。 Web里充满了各种网页。多数是无意义的,零信息量垃圾。

  要想有价值,你的网页必须有内容---必须有趣或对其它黑客有用。这样,我们来到下一个话题....

  黑客文化中的地位大教堂与集市”,解释了许多Linux和开放源码文化的运做原理。我还在它的续集“大教堂与集市”,解释了许多Linux和开放源码文化的运做原理。我还在它的续集“开拓智域”一文中有更直接的论述。

  FAQ(常问问题解答)

  问:你会教我如何做黑客吗?

  自从之一次发布此页,我每周都会得到一些请求,要我“教会他如何做黑客”;遗憾的是,我没有足够的时间和精力来做这个;我自己的编程项目已经占用了我110%的时间。

  甚至即便我想教你也不可能,黑客基本上是一项需要你自行修炼的的态度和技术。你会发现即使真正的黑客想帮助你,如果你乞求他们填鸭一样教你的话,你不会赢得他们的尊敬。

  首先去学习。显示你在尝试,你能靠自己去学习。然后再去向黑客们请教问题。

  问:你会帮我“黑”掉一个站点吗?或者教我怎么黑它?

  No. 任何在读完FAQ后还问此问题人,都是愚不可及的家伙,即使有时间我也不会理睬。 任何发给我的此类mail都会被忽略或被痛斥。

  问:哪里能找到真正的可以与之交流的黑客?

  更佳办法是就近参加一个Unix或Linux的用户组,参加他们的会议。

  问:我该先学哪种语言?

  HTML, 如果你还不会的话.

  但它不是一个真正的编程语言。当你准备编程时,我建议你从 Python开始. 会有很多人向你推荐Perl,它比Python还受欢迎,但却难学一些。

  C 是非常重要的,但它却是最难学的。不要一开始就尝试学C。

  问:开放源码的自由软件不会使程序员饿肚子吗?

  这似乎不大可能---到目前,开放源码软件产业创造了而不是消灭了大量工作机会。

  如果写一个程序比不写一个程序只是个纯粹经济上的收益的话,无论它是否免费,只要它被完成,程序员都会从中得到回报。而且,无论软件是由多么的free的 *** 开发的,对更新的软件应用的需求总是会有的。

  问:我从何学起?哪里有免费的Unix

  本页的其他地方指向最常用的免费Unix。要做一名黑客,你需要自立自强,以及自我教育的能力。

  现在开始吧......

  参考资料:

  1、黑客的精神态度是很重要的,但技术则更是重要。黑客的态度虽然是无可取代,随著新科技的发明和旧技术的取代,这些工具随时间在慢慢的改变。例如:以往总是会学会用机器码写程序,直到最近我们开始使用HTML。不过,在1996年末,当然,这是基础的hacking技能。在1997年,理所当然的,你必须学会C。 但,如果你只是学一种语言,那么你不能算是一位黑客,了不起只能算是一个programmer。除此,你还必须学会学会以独立于任何程序语言之上的概括性观念来思考一件程序设计上的问题。要成为一位真正的黑客,你必须要能在几天之内将manual内容和你目前己经知道的关连起学会一种新的语言。也就是说,你必会学还了C之外的东西,你至少还要会LISP或Perl(Java也正在努力的挤上这个名单; 译者注: 我很怀疑这份名单)。除了几个重要的hacking常用语言之外,这些语言提供你一些不同的程序设计途径,并且让你在好的 *** 中学习。

  程序设计是一种复杂的技术,我没辨法在这提供完整的学习步骤。但是我能告诉你一些在书本上和课堂上所没有的东西(有很多,几乎全部更好的黑客们都是自习而来的)。(a) 读别人的程序码;(b)写程序,这两项是不错的 *** 。学习写程序就像在学习写一种良好的自然语言,更好的 *** 是去看一些专家们所写的东西,然后写一些你自己的东西,然后读更多,再写更多。然后一直持续,一直到你发展出一种属于自己的风格和特色。要找到好的程序码来看是很一件很困难的事,因为,对菜鸟黑客们而言,适于供他们阅读和努力的大型程序的source数量很少。但这事己有了戏剧性的变化了; 现在免费的供应的软件、程序设计工具和操作系统(大都公开提供 source,而且全都是由黑客们写成的)到处可看。进入下一个主题。

  2、取得一个免费的 UNIX,并学习使用和维护。我先假设你己经有一部个人电脑或者是可以使用任何一部(现在的小孩子真幸福,可如此轻易的拥有 :-))。 取得黑客技巧的之一个步骤是取得一份Linux 或者一份免费的 BSD-Unix,并将它安装在自己的机器,并使之顺利的运作。没错,在这个世界上除了Unix之外,还有其它的操作系统。但是他们只提供bianry,你不能看到他们的程序码,你也不能修改他们。想要在DOS或Windows或MacOS开始hacking,无疑就是要你绑著枷锁跳舞一样。

  除此之外,Unix是Internet上的操作系统。当你在不懂Unix的情况下学习使用Internet时,你没辨法在不懂Unix的情况下成为Internet的黑客。因为这个原故,现在的黑客文化还是很牢固的以Unix为中心。(这并不完全是正确的,而且有些活在旧时代的黑客甚至也不喜欢这种情形,但是Unix和Internet之间的共生共成己经到了牢不可破的地步,即使是Microsoft的大块肌肉也没能在上面留下明显的伤痕。) 因些,把Unix装起来吧! (我自己是喜欢Linux,但是还有其它的东东可用。) 学习它,让它运作起来,让它陪你努力精进。 用他向整个Internet喊话。看程序码,改程序。

  有一天你成为一位高竿的黑客,你回头往后看时会发现,你得到比Microsoft操作系统所能提供的还要好的程序设计工具(包括 C,Lisp和 Perl)。而且得到快乐,并学到比共生共成己经到了牢不可破的地步,即使是Microsoft的大块肌肉也没能在上面留下明显的伤痕。) 因些,把Unix装起来吧! (我自己是喜欢Linux,但是还有其它的东东可用。) 学习它,让它运作起来,让它陪你努力精进。用他向整个Internet喊话。 看程序码,改程序。有一天你成为一位高竿的黑客,你回头往后看时会发现,你得到比Microsoft操作系统所能提供的还要好的程序设计工具(包括 C,Lisp和 Perl)。而且得到快乐,并

  学到比你想像中的还要多的知识。

  看一下Linux distribution的目录或 Linux CD,并把自己交付给它。

  3、学习使用World Wide Web并学会写 HTML。

  在黑客文化创造出来的东西,大多在他们的活动范围外被使用著,如,在工厂和辨公室或大学被漠漠的使用著。但Web是一个很大的例外,这个黑客眼中的大玩具甚至还被政客们接受,并巧巧的在改变这个世界。因此(还有很多好的理由),你必须学习Web。并不只是学习使用browser(这太容易了)而己,还要学会写HTML这个Web的标签语言。如果你不知道如何设计程序,写HTML也可以给一些习惯上的帮助。嗯! 建立home page吧! 不过,有一个home page 并没任何特别之处能让你成为一位黑客。Web上到处都是home page,而且大部份都没什么重点,没什么内容的烂泥 -- 很好看的烂泥巴,但是看起来都一样,差不多。

  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  你该学什么程序语言

  程序语言可分为5类

  1、web page script languages

  就是网页代码,比如Html、javascript、Css、Asp、Php、Xml都应该属于此类(照蔡的意思,Html不应该属于anguages的,可能他觉得太简单了吧,不过我觉得Html也应该算的,大家爱听谁的就听谁的好了,这个不重要)

  2、Interpreted Languages(解释型语言)

  包括Perl、Python、REBOL、Ruby等(后面三个听豆没听过),也常被称作Script语言,通常被用于和底下的操作系统沟通。照蔡的意思,每个人至少应该学会一套这类的语言。这类语言的缺点是效率差、源代码外露——所以不适合用来开发软件产品,一般用于网页服务器。

  3、Hybrid Laguages(混合型语言)

  代表是JAVA和C#。介于解释型和编译型之间。蔡认为C#是.NET最重要的语言,值得期待其后续发展;至于JAVA,蔡叫看他的《Sleepless in Java》——我倒!

  4、COMPILING Languages(编译型语言)

  C/C++,JAVA都是编译型语言。蔡说C++很复杂,要成为高手没三五年是不行的(就凭这句话,我决定向JAVA投降),虽然如此,但真正要成为高手的都应该懂C/C++。

  关于Delphi,蔡说如果想要跨Linux和Windows平台的语言,则Delphi似乎是更好的选择。

  5、Assembly Languages(汇编语言)

  汇编语言是最接近于硬件的语言,不过现在几乎没多少人用了。

  程序语言学习顺序建议

  如果完全没有程序经验,可照这个顺序:javascript——解释型语言——混合型语言——编译型语言——汇编(如果需要的话)

  用业界流行一句话做结尾“真正的程序员用C++,聪明的程序员用Delphi”,那么,什么样的程序员用JAVA呢?

  虚怀若谷题外话

  看在我这么晚了还这么辛苦的敲字的面子上,看到这篇帖子的朋友给点掌声吧,虽然没什么自己的思想。

  另外,本文完全据蔡学镛先生同名文章精简,所以如果这篇文章给你的程序员生涯有什么不好的作用,那我不介意你去扁他。当然如果这篇文章对你有什么积极影响,我很高兴你能请我吃大餐。

  如果您想学习编程,却又不知从何入手,那么您不妨看看下面的几种学习方案,可能会给您一些启示吧!

  方案一 Basic语言 & Visual Basic

  优点

  (1)Basic 简单易学,很容易上手。

  (2)Visual Basic 提供了强大的可视化编程能力,可以让你轻松地做出漂亮的程序。

  (3)众多的控件让编程变得象垒积木一样简单。

  (4)Visual Basic 的全部汉化让我们这些见了English就头大的人喜不自禁。

  缺点

  (1)Visual Basic 不是真正的面向对象的开发文具。

  (2)Visual Basic 的数据类型太少,而且不支持指针,这使得它的表达能力很有限。

  (3)Visual Basic 不是真正的编译型语言,它产生的最终代码不是可执行的,是一种伪代码。它需要一个动态链接库去解释执行,这使得Visual Basic 的编译速度大大变慢。

  综述:方案一适合初涉编程的朋友,它对学习者的要求不高,几乎每个人都可以在一个比较短的时间里学会vB编程,并用VB 做出自己的作品。对于那些把编程当做游戏的朋友来说,VB 是您更佳的选择。

  方案二 Pascal语言 & Delphi

  优点

  (1)Pascal语言结构严谨,可以很好地培养一个人的编程思想。

  (2)Delphi是一门真正的面向对象的开发工具,并且是完全的可视化。

  (3)Delphi使用了真编译,可以让你的代码编译成为可执行的文件,而且编译速度非常快。

  (4)Delphi具有强大的数据库开发能力,可以让你轻松地开发数据库。

  缺点

  Delphi几乎可以说是完美的,只是Pascal语言的过于严谨让人感觉有点烦。

  综述: 方案二比较适合那些具有一定编程基础并且学过Pascal语言的朋友。

  方案三 C语言 & Visual C++

  优点

  (1)C语言灵活性好,效率高,可以接触到软件开发比较底层的东西。

  (2)微软的MFC库博大精深,学会它可以让随心所欲地进行编程。

  (3)VC是微软 *** 的产品,与操作系统的结合更加紧密。

  缺点

  对使用者的要求比较高,既要具备丰富的C语言编程经验,又要具有一定的WINDOWS编程基础,它的过于专业使得一般的编程爱好者学习起来会有不小的困难。

  综述: VC是程序员用的东西。如果你是一个永不满足的人,而且可以在编程上投入很大的精力和时间,那么学习VC你一定不会后悔的。

  方案四 C++语言 & C++ Builder

  优点

  (1)C++语言的优点全部得以继承。

  (2)完全的可是化。

  (3)极强的兼容性,支持OWL、VCL和MFC三大类库。

  (4)编译速度非常快。

  缺点

  由于推出的时间太短,关于它的各种资料还不太多。

  综述:我认为C++ Builder 是更好的编程工具。它既保持了C++语言编程的优点,又做到了完全的可视化。

  方案五 SQL语言 & Power Builder

  对于一些传统的数据开发人员来说,Foxpro系列也许让他们感到更加熟悉。但是对于初学者来说,PowerBuilder也许是更好的数据库开发工具。各种各样的控件,功能强大的PowerBuilder语言都会帮助你开发出自己的数据库应用程序。

  补充:关于网页后台语言和其他语言的关系,一般认为:

  C语言学的好,那么学习PHP会有事半功倍的效果

  VC学的好,那么学习ASP会有事半功倍的效果

  JAVA学的好,那么学习 *** P、JAVASCRIPT会有事半功倍的效果

  关于网页后台语言和数据库,通常来说:

  PHP与MYSQL是黄金搭档

  ASP小型网站用ACCESS,大型用SQL

   *** P我就不知道了

  关于电子商务流行的语言,目前

  当当、卓越、6688、igo5、雅宝使用的是asp语言

  易趣、 *** 使用的是php语言

  贝塔斯曼使用的是jsp语言

  4、至少学会以下的其中两种:

  一、网站服务器程序ASP、PHP、CGI、 *** P

  我个人认为CGI是最难学的其中一种。

  二、程序语言:C语言、C++、VB、JAVA、PERL、DELPHI、汇编语言

  不过我认为C语言的通用性更好,可以跨平台(操作系统)使用。

  还要试着自己写程序、开发软件等工作。

  三、数据库管理软件:MYSQL、SQL、FOXPRO……等。

  四、几种常用的操作系统:WIN98、WIN2000、WINNT、WINXP、UNIX、LINUX、要是能学到UNIX那是更好不过的了。最最基本的WIN2K、WINNT也要学会吧。

  如果以上的你都会了,那么你已经是个高手了。

相关文章

100%清洁能源供电!北缅甸语翻译京冬奥会场馆是怎么做到的

  “绿色办奥”是北京冬奥会的重要理念之一,全部场馆100%使用清洁能源供电更将会是奥运史上的创举。    低温和潮湿是电器设备正常运转最大的挑战。因此,在往届冬奥会都是采用柴油发电机为电视转播、计...

注册公司需要的流程及费用(注册公司需要什么)

  公司的注册在如今的社会经济上面不在是如以前一样,复杂和繁多。相信每一个高净值人士做到最后都想成立公司来实现更大的一个目标。那么下面我们来全面解读一下注册公司流程和费用。欢迎阅读!   注册公司流程...

路远锦城公司取名大全(97个上档次名字)

蓬勃两个字路远锦城公司取名名字大全打分 碟机路远锦城公司   25.21分   夯歌路远锦城公司   65.82分   汉文路远锦城公司   5.51分   头马路远锦城公司   74.26分...

五种人可以提前退休-2020年提前退休政策出台

大家都知道申请退休是有一定条件的,其中最为重要的一条就是达到退休年龄,但有五种人可以提前退休,不过这五种退休方式的养老金也会有所不同,基本上退休越早,获得的退休养老金也会越少。那么,哪五种人可以提前退...

怎么看老婆全部的微信聊天记录

孩子晚上睡觉的时候喜欢磨牙怎么办,孩子睡觉的时候磨牙是什么原因,怎么帮孩子改过来呢,友谊长存小编就来说说吧。 孩子夜磨牙怎么办? 宝宝夜磨牙的常见病因 夜磨牙不是大人的专利,很多宝宝也会有夜磨牙...

亲爱的你怎么不在我身边简谱(你不在我身边)

这个是简谱~吉他谱如果你能慷慨点就更好了~~ 《亲爱的你怎么不在我身边》演唱:江美琪这里的空气很新鲜这里的小吃很特别这里的latte不像水这里的夜景很有感。 《亲爱的你怎么不在我身边》是江美琪演唱的歌...