どくどく記 〜読書と独学の記録〜

読んだ本の記録と、考えた事のアウトプット。

『日本でいちばんわかりやすいプログラミングのドリル』楽しく解いて学べるクイズ本

 

この記事は、2018年6月17日、プログラミング学習用に作った別のブログで書いたものですが、そちらを閉じたので、「どくどく記」本体で再掲することにしました。

 

プログラミング独学の状況

取り組んでいる本

現在(2018年6月17日のこと)プログラミングの入門書『プログラムはこうして作られる』に取り組んでいます。  *1

プログラムはこうして作られるプログラマの頭の中をのぞいてみよう

プログラムはこうして作られるプログラマの頭の中をのぞいてみよう

 

 

この本は、「初めてプログラミングを学ぶ人」向けに書かれており、1つのプログラムを作り上げる過程が、ゆっくり段階を踏んで解説されています。

大きな特徴の一つとして、初学者の「壁」となる専門用語がほとんど使われていないことが挙げられると思います。とてもわかりやすく、学ぶところの多い本だと感じています。 

 

つまずき、モチベーションの低下

しかし、「プログラミング」という、これまで馴染みのなかった「新しい考え方」を学んでいるわけですから、初心者用とは言え、やはり難しく感じる箇所もあります。僕は、8章で行き詰まってしまいました。*2

もっとも、絶望的な「壁」ではなく、よく考えながら何度かトライすれば、問題なく突破できそうではあります。

それでも、進行が停滞していることには変わりなく、学習に対するモチベーションの低下を感じました。そして、独学者にとって「モチベーションの維持」は死活問題なのです。

 

そこで、気分転換に『ドリル』に取り組むことにしてみました。 

 

『プログラミングのドリル』の紹介 

 気分転換に使ったのは、この本です。

日本でいちばんわかりやすいプログラミングのドリル

日本でいちばんわかりやすいプログラミングのドリル

 

 

こんな本

「プログラミングのクイズ」が掲載されている本です。書店で見かけて以来、気になっていました。

どんな問題が載っているかというと、例えば、

  • 「4行目のcの値を答えてください」

という簡単なものから、

  • 「プログラムを〜〜のように改善するには、どうすればいいですか」

という応用問題まで様々です。このような問題が、全部で110問収録されています。

そして、問題にどんどん答えていくうちに、「分岐」「繰り返し」のようなプログラミングの基本文法を自然と体得できるような作りになっています。

 

解いていて楽しい

「ドリル」や「問題集」を解いていくのって、僕は、結構好きなんです。時間をかけて頑張ったことが目に見える形で残っていくからです。*3

しかし、問題集によっては、簡単な問題の次にいきなり難しい問題が出てきたり、中には、解き方が想像すらできないような問題が混じっていたりします。こんな問題にぶち当たると、むしろ「苦痛」を感じることもあります。

 

その点、この『ドリル』の問題の配置は良好です。

最初は本当にごく簡単な問題からスタート。ページが進むに連れ、少しずつ複雑な問題が出てきますが、「前の問題で覚えた知識」を応用することで、無理なく解いていけるようになっています。

これは楽しい。

少しずつ解いてみるつもりでしたが、僕は一晩かけてあっという間に仕上げてしまいました。おかげで、学習のモチベーションも一気に復活させることができました。

 

本書を買うべきタイミング

ただ、僕はこの『ドリル』を買うのが遅すぎた、と思いました。

理由は「全体的な難易度の低さ」です。

この『ドリル』は「知識ゼロからはじめる」と謳っています。その通りでした。確かに、プログラミングについて何の前提知識もないような完全初心者が、プログラムの構造について理解を深めながら、無理なく問題を解いていくことができるような作りになっています。

裏を返せば、少しでもプログラミングを学んだ後だと、全体的に問題が簡単に感じる、ということでもあるのでした。

実際、プログラミング歴わずか数週間の僕でも、ほとんどの問題に即答できました。2時間以内には全て解き終わったと思います。

「問題が簡単に解ける」ということは、「新しい内容をあまり学んでいない」ということを意味します。ですから、2千円という値段はちょっと高かったなぁ、と感じました。

 

よって、この本は「プログラミング完全初心者」にのみ勧めます。

つまり「プログラミングをやってみよう! でも、何も知らないし、ちゃんと理解できるか不安だ……」という人にだけ、僕は本書をオススメします。

それ以外の人、少しでもプログラミングを学んだことがある人にとっては、おそらく内容が簡単すぎるため、コストパフォーマンスが悪いと思われます。

しかし、「学習のモチベーション」が低下している場合は、本書のような簡単な「ドリル」を解いてみることで、モチベーションを復活させることができるかもしれません。実際、僕はこのような効果が得られました。その点に着目すれば、コストパフォーマンスも良好だった、と言えそうです。

 

誤字がある

注意点として書いておきたいのが、「誤字」の存在です。僕が見つけただけでも、3カ所に誤字がありました。*4

とは言え、本書の根幹となる内容に影響はないので、大した欠点でもありません。

 

まとめ

プログラミングの初学者は、今回紹介した『日本でいちばんわかりやすいプログラミングのドリル』を解いてみることをお勧めします。

何よりもまず楽しいからです。

そして、楽しんでいるうちに、自然とプログラムの基本文法である「分岐」と「繰り返し」の力を体感できるからです。

「分岐」「繰り返し」の考え方は、どんなプログラミング言語でも共通しているようですから、この先どの言語を学んでいくにしても、必ず役立つはずです。

 

日本でいちばんわかりやすいプログラミングのドリル

日本でいちばんわかりやすいプログラミングのドリル

 

 

*1:181819Sn

この本の内容については、記事再掲時点でひと通り学習済み。良い本である。しかし、記事として紹介するにはもう一周くらい勉強し直してからでないと、「良さ」をきちんと紹介できないと思われたので、まだ書かない。

*2:「キー入力で画面上の点を操作する」というプログラムです。計算式が複雑に感じられて、行き詰まっています。(180819Sn追記:理解できなかった原因の一つに「速く読みすぎている」というものがあったように思う。『プログラムはこうして作られる』非常に丁寧な作りになっていて、ゆっくり段階を踏んで少しずつ読んでいけば、必ずわかるように書かれているからだ。)

*3:別の分野の本で言うと、たとえば『論理トレーニング101題』など。その名の通り、論理的な思考力を養うための問題集です。問題を解きながら、「論理的な読み方・考え方」を身につけていくことができます。

*4:①P.73の4行目、「countの値は1です」は「2」だと思います。②P.110とP.112のプログラム中のコメントにある「価格」は「年齢」の誤りではないかと思われます。③P.141の回答『太り気味です』は、『太りぎみです』とひらがな記載のはずです。