人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

すごいシンプルな質問です。
優秀なハッカーの方々(技術者全般を指す場合もありますが、今回はプログラマに限定します)って、O'Reilly本を読んだりするなど、書籍による学習をきちんと行っている方って多いのでしょうか?

●質問者: rintaromasuda
●カテゴリ:コンピュータ
✍キーワード:シンプル ハッカー プログラマ 学習 技術者
○ 状態 :終了
└ 回答数 : 12/12件

▽最新の回答へ

[1]何を持ってきちんとした学習か dame_orz

全然レスが付きませんね。

自分の事をハッカーだという方はいろんな意味で希少なのでレスが付きにくいんだと思いますww

自分の周り(自分を含む)にはハッカーと呼べるほどの人はいませんが

技術的に優れた物を持っている人をベースに考えてみます。


UNIXであれプログラミング言語であれコンピュータ以外で有ってもいえることが一つあります。

それはどの学問、研究に置いても基礎は大事ということです。


例えばgoogleなどで利用されているスパイダリング技術

(自動でwebサイトを巡回し情報を集めインデックス化する)等も

HTTP,ライブラリ,言語とすべてにおいて熟知していないと作成するのは難しいでしょう。


またハッキング、クラッキング(ここではコンピュターへの侵入等)にしても

バッファオバーフロー、C言語、OSの脆弱性等の膨大な基礎知識が必要かと思われます。


私の友人でコンピュータに関する勉強はすべてweb上で行う友人が居ます。

彼曰くネットの情報の方が新しいから良いそうです。


ただ僕が思うに時としてネットの情報は間違って居ることが有ったりするので

基礎を学ぶ時にネットを中心とするとつまずく事が多々有ります。


僕の周りには基礎知識を得るのは本という人間が多いです。

出版社や著者にもよりますが安定した情報が載っているので基礎を学ぶにはぴったりだと思います。

ハッカーの方なども信用できる出版社から発行されている書籍で基礎を学ぶ方は多いのでは無いかと思います。


結論から言えば

「きちんとした学習は行っているが、

書籍を利用しているかは解らない。

しかし書籍を利用している可能性は高い」でどうでしょうか?

ネット

メリット

・情報が新しい

・タダ

デメリット

・有っているか自分で判断しないとダメ

・情報が散らばっている

書籍

メリット

・情報がまとまっている

・だいたい信用できる

デメリット

・情報が古いときが有る

・お金がかかる事が多い


[2]>1 どの技術層を狙うかによるかとおもいますが… kuippa

例えば、きちんと業務用のものをつくる技術に特化したければ枯れた技術を習得することに時間を費やしたほうがいいので、書籍などでフィクスされた情報を収集することは非常に重要なことだと思います。


ただ、不安定な部分で何かできないかなーっとハックしたいのであれば、書籍にのるような情報は必要ではなく、OSの隠れAPIをごにょごにょして何ができるのか探ったり、パケットを眺めたりしてた方が有意義かとおもいます。


安定化した技術をつかって何かをつくる人は書籍が有用。

何か面白いことができないかしらんと探る人は書籍は不要というところではないでしょうか。

むしろ後者には整理された情報は必要ではなく整理された環境だけを要するような気がします。


優秀なハッカーというのが何についてアビリティを発揮するのかという属性次第なんじゃないかなっと。


[3]質問を言い替えます。 rintaromasuda

シンプルな質問にしようとし過ぎて、曖昧極まりない質問になってしまいました(^-^;ちょっと言い替えます。

例えば携帯電話を使うことに関して達人級の人を考えます。こういう人達って大体2つに分類されると思っていて、



のような感じに大別されると思います。プログラムで言えば、「Linuxのカーネル読んでたらC言語分かってきちゃった」というのが前者で、「K&RでばっちりC言語マスターしたぜ」というのが後者に属するかな、と。

まだ曖昧な部分はあるのですが、議論の材料になれば幸いです。あとお友達の話でも、どこかで聞いた話でも結構です。よろしくお願いします。


[4]>1 ありがとうございます rintaromasuda

おっしゃるとおりレスが付きません(笑)ちょっと言いたかったことが上手く纏められなかった感があるので、質問を言い替えてみました。よかったらご覧ください。

しかしやっぱり基礎は命ですよね。


[5]>2 仕事では業務系 rintaromasuda

なので、枯れた言語の学習はよくしてました。やはり書籍になっているようなフェーズの技術を扱っているのか、まだまとまりのない混沌とした技術を探っているのか、それによって大分変わってきますよね。

なんとなく後者の方がハックなイメージですね。


[6]>3 結論の落としどころは? ohmix1


主観でしかないのですが、私が優秀だと思う人のデスクは

大量の書籍で覆われています。

※すべて読んでいるかどうかは不明


私の例で恐縮ですが、プログラム言語(C,C++,Perl,Javaなど)についての本はしっかり読みました。

言語を知らないと誰かの書いたソースも読めないですからね。


でも、Javaの場合、1.0は書籍を買ってちゃんと読みましたが、

1.1以降は差分情報をインターネットから収集。

書籍を買ったとしてもリファレンス的にしか利用してません。


インターネットの情報がまともに利用できるようになって

(googleが使えるようになって)10年足らず。

書籍で基礎を学んでいない優秀なプログラマーはいないのでは?


議論しても結論は出そうにありませんね。アンケートのほうが良かったのでは?


以上


[7]>6 そういえば、まだ10年ですよね。 rintaromasuda

回答ありがとうございます。やはりもう少し推敲してから挙げるべきでした(アンケートも迷ったんですが)。

急速に普及したとはいえ、ググれるようになってまだ10年でしたね。多くの知識と経験が必要になる場合が多いプログラミングですから、書籍で固めた基礎を、ネットを利用して「飛躍」させた、というのがパターンとしてありそうですね。

いや、結論が出なくても良いのです。ただ自分が技術本(大抵高価)を買うのが好きなので、それを後押ししてくれる理由が欲しいと言うか何と言うか(笑)


[8]>3 へぼな開発者の意見でよろしければ。。 yuki_n

私の見る限り、優秀といわれている方々に関しては

『書籍で勉強』なのか『ググル』のかでは無く、

両方しているというイメージです。


ネット上のメリット・デメリットに関しては、他の方が書いてくれているので、ここでは省こうと思います。


ただ、その時点(勉強している時点?)においてネットのみでしか手に入らない情報、書籍でしか手に入らない情報もあると思うので、片方だけというわけにはいかないと思います。

(完全に枯れた(FIXした?)技術だけを求めるのであれば、書籍だけでも可能かもしれませんが。。)


更に上を目指す場合は、分解して調べる位の事をする必要があるかもしれませんね。。

(オープンソースの場合は、実際にその中身を見て調べるとか)


ただ、ひとつだけ

『全てを理解してから使い始める人は皆無に等しい』と思います。

辞書を全部覚えてから、日本語(英語)を使い始めるわけでもないでしょう。。

必要な部分を調べつつ、興味のある部分を調べつつ、積み重ねていくものだと思っています。

その情報が書籍にあるのか、ネット上にあるのかで調べる対象が変わるでしょう。


長文・駄文失礼いたしました。 m(_ _)m


[9]>8 いえいえ rintaromasuda

書き込みありがとうございます。

>『全てを理解してから使い始める人は皆無に等しい』と思います。

というのは聞くと当然のことのように思うのですが、日常でも結構心掛けていないと実践できないことですよね。第一歩を踏み出す際の邪魔になったりします。学ぶ、と実践するは切り離せないというか二つで一つみたいなものですもんね。

参考になりました。


[10]現役の頃の経験談 inosisibeyan

書籍を継続して読んでいるハッカーの方も多いと思います。

私は現役のPGだった頃、大量に書籍を読みまくった事がありました。

読んだ書籍の全部を覚えた自信はなかったですが、流れとインデックス的な部分で記憶していて、必要になった場合すぐに取り出せるようになれば仕事上は十分でした。

私のわずかな経験から述べさせて貰うと、

「何でもいいので、ひとつ完璧に覚えている言語、バージョンを持つ。」

後は枝葉をつけるように、知識の幅を広げて体験を増やす事が優秀なPGになる方法でしょうか。ハードとソフト両方の特性も覚えていると、チューニングなどの時に役に立ちます。

何通りものコーディングの中から、最適解を一瞬で見つけるのがハッカーだと思いますが、そういう技を使えるようになるには多くの知識と経験が必要になりますから、当然得られるであろう書籍からの知識も重要になります。ただ、完璧に覚えてしまった後では差分でしか書籍が必要にならないようになるものですが。極端に言えば知識の補充には立ち読みでも十分過ぎるかも知れません。

あまりに、技術を極めてしまっても逆にメンテナンスしにくいシステムやプログラムになるのでバランスが大切です。

今回はプログラマの書籍についてなので、ここからは横道にそれますが、何でもないようなコンピュータの動作にも特徴を見出して異常の早期発見や日頃の作業の参考に出来るまでになれば、管理面では巧く立ち回れるように思います。


[11]>7 私も本を買いまくりです ruminar

本を買っている人は、技術者としての意識が高い人が多いです。

それと、普段から本を買って読んでいると、本を選ぶセンスが身につきますので損にはなりません。

また、インターネットが普及してから結構な時間が経過しましたので、ネット上の情報は玉石混交になってきました。

古い知識がいつまでもgoogleのキャッシュに残っていたりする反面、大事な情報が流行り廃りによって消えていったりもしていますので、大事な情報は書籍の形でも持っておくと良いです。


[12]>3 ハッカーの卵(?)達を見てきた立場から czy00347

縁あって、大学の計算系の研究室をさすらっている者です。3?4学年に1人くらいの割合で、あぁこいつはすごくなるだろうな、というのがいます。昔はやっぱ本読んでるタイプでした。が、最近変わってきたと思います。自分なんか本で確認しないとボロが出そうな気がして落ち着きませんが(その場をなんとか出来ても、知識が自分のものになっていないというか)、彼らはそれでちゃんと吸収していけるんです。非常にうらやましいです。体系立っていないオンデマンドの情報との付き合い方を心得てるんでしょうね。最初からネットが使える環境で育った層が今後どうなるか恐ろしいです。

ところで携帯の喩えで言うと、ボタン押して云々というのは、とりあえず書いて出力見て理解する行為に相当するのでは。ここで鼻が利くかどうか分かれるんですが(出てきたものを解釈する力と、どういうものをインプットしたら知りたいことが分かるかという両方の意味で)、この感覚を養えているかどうかが基礎力なんでしょうね。フットワーク軽くボタンを押しまくることも必要ですよね。優秀な人の作業を見てると、最初から知っていることをやっているようなフットワークで上記の作業をしてます。

以上、周囲は優秀だが本人はナンチャッテな者からの意見です。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ