何かを書き留める何か

数学や読んだ本について書く何かです。最近は社会人として生き残りの術を学ぶ日々です。

『Head First はじめてのプログラミング』の査読を担当しました

初心者向け本の本格派

2019年4月26日にオライリージャパンから『Head First Learn to Code』の邦訳『Head First はじめてのプログラミング』が発売される。 この度、邦訳の査読者として参加させていただいた。 オライリーの方から話があったのは2018年12月中旬であった。 メールなどを見返すと、『PythonによるWebスクレイピング 第2版』と並列して行われていた。

www.oreilly.co.jp

どんな本?

Head Firstシリーズはサブタイトルにある「頭とからだで覚える」の通り、脳の動きに着目して工夫して書かれているオライリーのシリーズである。 オライリーの本の中でも異色の存在であるが、コンピュータ技術書の中でも異色の存在と言えるだろう。 プログラミング言語としてPythonが採用されている。 Head Firstシリーズだと『Head First Python 第2版』が既に刊行されているが、 これは他の言語の経験が少しでもある人向けであり、 『Head First はじめてのプログラミング』は全くのプログラミング初心者に向けて書かれている。 プログラミング初心者向けではあるが、ちゃちな例ではなく面白い題材をベースにプログラミングの諸要素を学ぶことができる。

数多の初心者本と何が違うのか

さて、プログラミング初心者向け、かつPythonが題材の本は現在何冊あるのだろうか。 自分が査読で関わった本では『スラスラわかるPython』(翔泳社)があり、 Python Mini Hack-a-thon経由で目撃したのは『Pythonエンジニア ファーストブック』(技術評論社)や 『いちばんやさしいPythonの教本』(インプレス)、 少し毛並みは異なるが『独学プログラマー』(日経BP)など私の身の回り(著者や訳者を見たことがあるレベル)でも複数冊あり、 Amazonで「Python」と引っ掛けるとちょっと前までは考えられなかった量のPython本が表示される。 大半が初心者向けである。 大量の類書がある中で、『Head First はじめてのプログラミング』は誰にお勧めなのだろうか?

今までの類書は具体的な題材をベースにプログラミングを説明するものが多く、実務を強く意識した本が多い。 例えば、『スラスラわかるPython』のゴールはWebスクレイピングであり、それに必要な知識を説明しつつ最短経路で進む本である。 『Pythonエンジニア ファーストブック』は「レゴ管理サイト」をゴールに、情報を集めるWebスクレイピング、データ分析、Djangoによる管理Webアプリケーションという技術を取り扱う。 『いちばんやさしいPythonの教本』はチャットボットがゴールである。

Head First はじめてのプログラミング』は、実務はもちろんであるが計算機科学の基礎で扱うような題材を広く扱っている。 例えば「再帰と辞書:反復とインデックスを超えて」では再帰という初心者向け本では避けられやすい題材を真正面から取り上げている。 「11章 ウィジェット、イベント、創発的な振る舞い:インタラクティブにする」ではライフゲームを通してGUIプログラミングを行う。 ライフゲームと言えば情報系のプログラミングの講義の定番である。 すぐに役に立つのは実務ベースの本であるが、長く役に立つのは理論ベースの本である。

本格的な入門書を探している人にはぴったりの1冊

Head First はじめてのプログラミング』は636ページあり、類書の倍の厚みがある。 ちょっといい紙を使用しているのでページ数ほどの重みは感じないが、やはり分厚いだろう。 とにかく1冊読み終えて自信をつけるか、重厚な1冊を読んでずっと使える知識を身に着けるか。 私は大学の恩師の影響から後者を選びがちであるが、このあたりの選択は人それぞれだろう。 本格的な入門書を探している人にはぴったりの1冊である。