週末にプログラマー脳 ~優れたプログラマーになるための認知科学に基づくアプローチを読みました。 私は長年プログラミング教育を行っていますが、この本が10年前に読めたら良かったなと思いました。教育を行うなかで、感覚的に感じていた事を、認知科学をベースに分析・考察されています。この本にかかれている概念や用語がプログラミング教育を行う人の間で一般化すると、教育に関するノウハウが共有し易くなると思われます。
素晴らしい本なので、プログラミング教育を行う全ての人が読むべきだと思います。
ただしプログラミング初心者には役に立たないかも
プログラミング初心者の方で、早く一人前のプログラマーになりたいと思っている方はかなりいると思いますが、そのような方にはあまり役に立たないかもしれません。
Amazonの、カスタマーレビューに「途中まで読んだけど、プログラミングの役に立たない、面白くない概念の羅列ばかり。脳科学的な話しも少ししかないし、自分には合わなかったです。」という★1つのレビューがあります。この方はプログラミング初心者の方ではないかと思います。
ただし、認知科学等に興味があり、学術的な文章を読むことに抵抗のない方は、この本を読み自分のポジションを確認しながらプログラミングを学んで行くのはおもしろいかもしれません。
「〜のようにすべき」、「〜のようにしてはいけない」というような直接的な学びは少ないかもしれませんが、役に立つアイデアは得られると思います。
ビジネス書ではなく、学術書風かも
さてプログラミング教育を行う方にも注意があります。この本はビジネス書のように即効性のある内容ではありません、どちらかというと学術誌的な読みにくさもあります。しかし、認知科学等の研究成果により自分の教育経験が整理できる良書です。
また各章の始めに、コンパクトな箇条書きの本章の内容、終わりにはやはり箇条書きの本章のまとめがあり理解を助けるような作りになっています。
さらに、たくさんの演習が用意されています。多くの演習内容は実際にプログラミング教育で経験した事をまとめる課題なので、複数の教育者が集まって演習を行うと良さそうですね。
本ブログでは、この本の内容要約的な記事は書きませんが ”プログラマー脳 感想” で検索すると紹介ブログどが出てくるので、内容に興味がある方は読んでみてください。最近書店が減少していますが、もし自宅や会社の近くに大型書店がある方は、書店で手に取って眺めてみてください。
おまけ
最後に、この本で知った教育用の便利ツールPython Tutorに付いて書いておきます。
以下は、1から5の数値の和を計算するプログラムですが、初心者の人には案外とわかりにくいようです。
const n = 5;
let sum = 0;
let i = 1;
while (i <= n) {
sum = sum + i;
i = i + 1;
}
console.log(sum);
新人研修では「ノートに変数 n, sum, i の箱を書き、自分がプログラムになってコードの実行を追いながら箱の中の数値を置き換えてプログラムの流れをトレースしてくだい。」と受講者に試してもらう事がありますが、なかには面倒がってやってくれない人もいます。
そんな時に、このPython Tutorを使ってもらうと良いかもしれませんね。コードを書いてNextボタンを押すだけで、右側に変数の値が表示され、プログラムの流れが理解しやすいと思います。Lastボタンで一つ前のステップに戻ったりもできます、素晴らしい! 😃