見出し画像

「ハッカーになろう (How To Become A Hacker)」を要約してみた

誰もが新しい道を踏み出すときに必要なのは、地図やコンパスといった、旅のガイド。

ハッカーを目指す人にとって、そんな旅のガイドとなるのがインターネット上に公開されている文書「ハッカーになろう」だ。

「ハッカーになろう」はハッカーを目指す人にとって必読といわれており、アメリカのプログラマーEric S. Raymondによって書かれた。

▼ 英語の原文はこちら

▼ 日本語の翻訳はこちら

ハッカーを目指すための指針となる文章なので、何度も読み返そうと思うが、読み返すには少し文章が長いのが難点だと思っていたので、文章のエッセンスを抽出し、自分なりにまとめてみた。

このまとめがあれば、全体像の見渡しがよくなり、気になった時にすぐに確認することができる。

ちなみに「ハッカー」という言葉はよく「ネットワーク犯罪者」という意味で使用されるが、「ハッカー」はネットワークやコンピュータに精通している人であり、犯罪者ではない。

逆にネットワークやコンピュータを悪用する犯罪者のことは「クラッカー」と呼ぶ。


ハッカーになろう (How To Become A Hacker)

ハッカーとは、以下の3つを全て満たす人

①すらすらとコードが書ける
 ・オープンソース開発プロジェクトにかなりのコードを採用されているなら楽々と合格
②ハッカーコミュニティ(オープンソース開発者)の目的と価値観を共有
 ・ソフトウェアの自由と、世界をより豊かで人道的な場所にするという信念に基づいて行動
③ハッカーコミュニティの立派なメンバーに「ハッカー」と呼ばれる
 ・ハッカー文化には高い地位のある非公式の門番がいて、新メンバーの参加を承認する権限を持っている

ハッカーの心構え

①問題を解決することにゾクゾクするような喜びを感じる
 ・ハッキングへの意欲が、お金や社会的な名声のようなつまらないことに惑わされてはいけない
②同じ問題を2度解くような無駄はしない
 ・他のハッカーたちが考える時間は貴重であると信じ、情報を共有するのはほとんど道徳的な義務
③退屈・単純作業は悪
 ・自分自身のためばかりでなく他のハッカーたちのためにも、退屈な部分は自動化
④自由は善
 ・ハッカーたちは本来的に反権威主義で、権威主義的態度に出会ったら必ず戦う
⑤心構えや態度よりも「技能」のほうが重要
 ・技能がすばらしいものだと思える人なら、技能をみがく大きな努力も強烈な遊びになる

ハッキング技術の基礎

①プログラミング(Python, Go(またはJava), C/C++, Perl, LISPをすべて学ぶ)
②オープンソースUNIX(UbuntuはLinux 新人にとって一番とっつきやすい)
③HTML(他のハッカーの興味をひき、有益な中身を持ったホームページを作成)
④英語(英語はハッカー文化の作業用言語、文章のショボさは思考のショボさと比例)

ハッカー文化での地位(時間、創造性、技術の成果をあげてしまうことで評判を得る)

①オープンソース・ソフトウェアを書く
 ・他のハッカーたちが喜ぶ有益なプログラムを書き、ソースをあげてしまう
②フリーソフトウェアのテストやデバッグを手伝う
 ・面白そうなプログラムの良いベータテスタになり、いずれプログラム自体の改変を援助する段階へと進む
③有益な情報を公開する
 ・役に立つおもしろい情報やFAQを公開
④インフラが機能し続けるように手伝う
 ・アーカイブサイトで大きなソフトウェアを維持したり、技術的な標準を開発するなど
⑤ハッカー文化そのものへの貢献
 ・上記①〜④のどれかで名をあげた後に、ハッカーになる方法について書くなど

ハッカースタイル(多くハッカーがやっており、ハッキングの真髄に通じるもの)

・母語できちんと文が書けるようになる(最高のハッカーは物書きとしても優秀)
・SF を読み、SF 大会に参加する
・ハッカースペースに参加し、何かものを作る
・格闘技を学ぶ(ハッカーたちに最も人気があるのは、アジアの素手による武術)
・瞑想を学ぶ(ハッカーたちの永遠のお気に入りは禅)
・音楽を分析的に聞く耳を鍛え、なにか楽器を上手に演奏したり、歌が歌えるようになる
・だじゃれや言葉あそびへの理解を深める

mondにて匿名の質問・メッセージを募集しています。なんでも送ってね👍 https://mond.how/ja/hovinci_jp