プログラミング入門本の存在価値

※あくまで自分自身の感想です!!!!※
※一生懸命執筆されている著者さんが背景にいて、出版社さんとか編集者とか色々な人が関わっているのはわかっていて、
その人たちを批判したいわけではないです。※

プログラミングをこれから始めようと思っている人に眺めてもらえるとうれしいです。

自分は大学で初めて自分のPCというものを持ちました。

というのも自分の通っていた学部では入学時にPCを組み立ててそれを自宅で利用するということをしていました。

当時自分のPCを持っていなかったし、プラモデルみたいにパーツを組み立てるとPCとして動いて、
その組み立てたPCでネトゲとかやっていたのがやけにうれしかったのを覚えています。

さて、というわけで自分は情報系の学部でした。
といっても理工学部の情報系ではないので浅いですけども、講義でプログラム演習とかあったりする学部でした。

当然C言語とかJavaとかが必修でした。
テキスト処理でPerlもちょっと触ったり、システム演習でRuby on Railsで何か作ろうみたいなこともしたり、、、

それまで自分のPCを持っていなかったのでもちろんプログラミングなんてわかるわけありません。

それまで参考書とか書籍で勉強するということしかやった事が無かった自分はそれまでと同じように書籍を買いあさりました。

「はじめての~~」とか「14日でわかる~~」とか。

動物本なんて怖くて手が出せないので、できるだけライトなモノを選んで買っていました。

さて、今思えばこれは正直失敗でした。

そもそもJavaを14日で出来るようになるわけありません。
そりゃそうなんですけど、初心者はどうしてもこういった「はじめての~~」とか「初心者のための~~」みたいなものを購入しがちです。

こういったものを買う必要は正直ありません。。。

結局書いてあることは「こうすれば動くよ」って断片的な内容だけで、
たとえば電卓は本に書いてあるとおりに書けばできるけど、
その電卓の機能拡張としてルート計算ボタンをつけたくても出来るようにはならないみたいな内容です。

正直たいしたこと書いてありません。
そりゃ書籍の目的が多分「なんかわからなくてもなんとなく動くものが作れるから心理的障壁を下げる」みたいなのが目的だと思うので良いとは思うのですが、1冊読んでも技術的になにかできるようにはなりません。

また、プログラミングの世界は結構すぐ変わります。

たとえばJavaの統合開発環境(英語略でIDEって言ったりします)で超有名なものにEclipseっていうツールがあるのですが、
このバージョンも毎年新しいものがリリースされます。

で、大きくは変わらないですが、地味にボタンとか見た目が変わってたりとか、
ダウンロードできる場所が変わっていたりするんですよね。

便利にしていくためのプラグインもなくなっていたり、バージョンアップが止まっていて違うのが主流になっていたり、、、

さてこれが書籍だとどうなるでしょう。

環境セットアップを始めようとして、記載されているリンクどおりに色々セットアップしていこうとしますが、
そのリンクがなくなっていたりということは普通にあります。

Javaを開発するためにJDKというものを手に入れる必要があるのですが、ちょっと古い本だと
JDK1.6をダウンロードしてくださいといわれたりします。

今現在JDKのサポートが切れているのでライセンス持ってる人とか以外の
普通の人は公式のOracleから手に入れることは出来ません。

でも初めての人は書いてあることができないと結構躓きますよね(自分は躓いた)。

「(情報が古くなったことに拠って)できない事が書いてある書籍」
が世の中にあふれています。

また、プログラミング以外の世界では結構ネット上の記事はあてにならない場合が多いですが、
プログラミングの世界で信用できるソースは公式ドキュメントです。

「はじめての~~」とかも公式ドキュメントから作成している場合が多いとおもうのですが、公式ドキュメントも間違っていたりするので、その間違っている時点の公式ドキュメントをあてにして作成した書籍の内容は誤っています。

ただ、公式ドキュメントは修正されていくわけです。
ここが書籍と違うところですね。

(他にネット上の記事で色々情報が載っているので色々な情報から取捨選択して正しい情報を手に入れていく感じになるかと)

天才は分からないですが、一般人がプログラミングが出来るようになるには、
ソースコードをどれだけ書いたか
ソースコードをどれだけ読んだか
で決まると思います。

なので、多分プログラミングをはじめようと思う人は
「なにか」を作りたくてはじめるんだと思います。

職業プログラマーとか大学の講義はこの辺の動機付けのはじめのいっぽをしてくれるので楽ですね。

で、その
[「なにか」のつくり方 プログラミング]
って調べるといっぱい出てきます。

まずは書籍を読むよりそれで出てきた内容を色々読んで、ひたすら写経していくのが良いと思います。
「こういった事をしたいならこういう風に書くんだ」みたいなものを調べながら突き進めるようになります。
すごく大事な力です。

特定の言語で実装したいって決まっているんだったら
[「なにか」のつくり方 プログラミング プログラミング言語]
でググると良いでしょう。

ちょっとこういった事やってみてプログラミングって何ぞ???ってなった人は
ドットインストールの動画を眺めると良いと思います。
https://dotinstall.com/
本を買うまでもないです。
その上で動画内の内容を写経すると良いでしょう。

「はじめての~~」の本のつかい方は、そのプログラミングについての勉強ではなく、
「なんかプログラミングって言うのをやってみたいけど、なんかよくわからんからちょっと触ってみたい」
人が見るものですかね?

「一週間で分かる~~」とかの本でプログラミングのことは(自分の経験上)学べません。

そもそも初心者がやりたいこと、たとえばノベルゲームを作ってみたい!!見たいなものであれば、
プログラミングが分からなくても実現できるフレームワークがいっぱいあります。
https://b.tyrano.jp/
こんなのとか

で、何かたとえばAndroidアプリケーションを作っていて、
「ちょっとこの言語についてしらないとできないかな・・・?」
ってなったら出来るだけ強そうな書籍を買うと良いと思います。

Javaで言うとEffective JavaとパーフェクトJavaは買って読みました。
オライリーが出している動物本(動物が表紙になっているどこの本屋にいってもまず置いてある鈍器)とかでも良いと思います。

こういった本は「初心者の~~」には書いていない技術的な理論が色々かいてあるので勉強になります。

中古でなくて出来るだけ版数が最新のものにしたほうが良いと思います。
ちょっといい値段はしますけど、一生使える知識が4000円とか3000円で買えるなら安いものだとおもいます。

多分近道なんてないので14日とかで理解しようとしないで色々手を動かしてみると良いと思います。

コメント

タイトルとURLをコピーしました