「しくみマニア」からみたコンピュータ関連の良書とは
「しくみマニア」からみたコンピュータ関連の良書とは
IT業界には、ITを専門に学んでこなかった人も多数、入ってくる。
IT業界で必要となるスキルや知識は、IT系に限らない。例えばプロジェクトの中でうまく立ち回るとか、そういった場面には、IT専門知識などよりも、もっと基本的なコミュニケーションスキルが必須である。
なので、ITの素人が入ってくること自体は、むしろ必要なことでもある。
しかし、IT業界で仕事をするうえでは、そうはいってもIT系の基礎的な知識が、本来なら必要である。
基礎の基礎の部分は、いまや会社の新入社員研修では教えてくれない。(まぁ、昔からそうではあったが)
何故か。
当座の仕事をこなすだけであれば、IT系の基礎の基礎、つまり「コンピュータのしくみ」を知らなくてもこなせるからである。
逆に、とにかく何らかの「プログラミング」ができないと、IT業界では仕事に支障が出てしまう。
これはつまり、「コンピュータのしくみ」を全部は知らなくても「プログラミング」はできてしまう、ということである。
仮にもIT業界に数十年もいるというのに、「コンパイラ」や「リンカー」の動作内容を説明できない人。
JavaVM(Java仮想マシン)の動作内容を説明できない人。
こんな人は、実に多い。(エンジニアという職種なのに!)
IT系のそれなりの規模の企業でも、いわゆる文系(※1)の新卒者を、2ヶ月間だけプログラミング研修を受けさせた後に、現場に送り込む。
(※1)私は本来は「文系」「理系」という区分で人を語ることが大嫌いであるが。
2ヶ月間の研修で、「コンピュータのしくみ」がきちんと理解できるだろうか。
答えは、Noである。(人にもよるがほとんどはNo)
学校でしっかり学ぶ場合を想定しても最低6ヶ月は要する内容だからである。それを研修ではたった数日間から数週間しかかけない。これでは「研修の内容だけ」からは絶対に本当の理解はできない。
一方で、
2ヶ月間の研修で、「プログラミング」ができるようになるだろうか。
これも、本当は、Noである。
だが、上述したように、何らかの「プログラミング」ができないと、IT業界では仕事に支障が出てしまう。
だから、とにかく形だけでも「プログラミング」だけはできるという体(てい)にするのである。
「プログラミング」も、本来なら、学校でしっかり学ぶ場合を想定しても最低6ヶ月は要する内容である。しかし、本来ならアルゴリズムなどの基礎から積み上げることが必要であるが、「まずは動かす」ことを主体に学習を進める。統合開発環境(IDE)の使い方から簡単なプログラムを動作させることを優先する。
私は、本来は以下の2点の学習は不可分であるという持論なのだが、賛同してくれる人は少ない。
コンピュータのしくみ(動作原理)の基礎
プログラミング(アルゴリズム含む)の基礎
本当の基礎を学習しないままプロになる業界はIT業界だけではない
本当の基礎を学習しないままプロになる業界はIT業界だけではない。
これは自分自身、電気関係の勉強や国家資格を取得したりした経験から言える。
例えば「電気工事士」が、その基礎分野である「電磁気学」をちゃんと理解しているかというと、必ずしもそうではない。むしろ理解していない人の方が多い。
電気の資格の教本に出てくる「原子のモデル」は、いわゆる「惑星モデル」である。
「惑星モデル」は、既に数十年も前に「量子論」によって否定された古典モデルである。
だが、電気回路を計算する上では、原子のモデルを「惑星モデル」で理解していても何の問題もないのである。
しかし、私は「しくみ」を正しく理解することにこだわる。
「しくみマニア」なのである。
「しくみマニア」が良書と思えるコンピュータのしくみの教科書
オーム社 図解 コンピュータ概論[ハードウェア](改訂4版)
オーム社 図解 コンピュータ概論[ハードウェア](改訂4版)
オーム社 図解 コンピュータ概論[ソフトウェア・通信ネットワーク](改訂4版)
オーム社 図解 コンピュータ概論[ソフトウェア・通信ネットワーク](改訂4版)
この二冊は姉妹本である。
また、「概論」とあるように、内容的にはそんなに高度ではない。
それでも、情報処理の入口の教科書としては、そこそこ網羅性もあり、良書であると思う。
この二冊の内容をきちんと学校の講義形式で学習するなら、6ヶ月はかかるだろう。
もしも、IT基礎をあまり学習しないまま、新入社員研修に放り込まれた自覚がある人や、ちゃんと基礎を理解したいと思う人は、手元においておくのも悪くないと思う。
基礎のふりかえりにも使えると思う。