エラーにつまずいた時はどうする? 起き上がり方を教えるということ
加えて喜多教授が大きな問題として挙げたのが、エラーの問題だ。プログラマーはエラーが起きた時に、その原因を突き止め修正する。しかし初心者にとって、プログラムの誤りを発見するデバッグは難しい。
喜多教授によると、エラーに直面した学生は「エラーメッセージを読まない」もしくは「プログラミングの学習そのものを止めてしまう」のいずれかの反応を示すという。学習を止めるのではなく、バグに挑戦してもらうにはどうすればよいのか?
「学生に典型的なエラーを起こしてもらい、それを体験してもらう。その際、エラーメッセージを読んで理解し修正する体験をさせること」が重要だと喜多教授は語る。既知のエラーであれば、コンピュータがどのようなエラーメッセージを出すのかも理解しやすいし、修正も簡単だ。学生には一連のデバッグ体験をわざとしてもらうことによって、バグが発生しそれを修正することが普通のことなのだとわかってもらうのだという。
プログラミングの成功体験が自信につながる、授業で設計まで扱うことの意図とは?
授業のカリキュラムでは、初心者が特につまずきやすい、繰り返しのループを入れ子にすることについても工夫している。このような理解しにくい概念では、京都の地名やトランプのデッキの作成など具体例を示し、理解を促すそうだ。
その他に、授業ではグラフィックスを扱うトピックも取り上げている。「タートルグラフィック」を使ってプログラミングの動きを可視化すると、関数やクラスの利用を体験することができる。また、この経験が、初心者にとってはプログラムを動かせたという自信につながるそうだ。
加えて、プログラムを設計するプロセスも授業で扱われる。どれだけ言語を学習してもプログラムの組み立て方を学ばなければ、自分で新しいプログラムをつくることは難しい。シンプルな三目並べを例に出し、設計から実装、テストまで一連の流れを見せる。このような開発プロセスの学びは、自由課題に挑戦する際のガイドにもなる。
高く評価されたPythonの教科書、今後の課題とは?
これからプログラミングの学習を始める人が無料で学べる、喜多教授の「Pythonの教科書」。しかし、課題もあるという。まずは、Pythonが応用される多様な話題にどうつなげてゆくのかということだ。また生成AIのプログラミングへの活用は注目を集めており、初学者からの関心も高いだろう。加えて、動的プロセスを踏むプログラミングやプログラムの動作を、教科書という静的なメディアのみで説明することの限界もある。現在では、多くのプログラミング初心者がYouTubeに上げられた動画やオンライン授業などを利用している。ダイナミックなプログラミングをより魅力的に伝えるため、動的な媒体も考慮していきたいと喜多教授は話す。
最後に喜多教授は「どんな商品あるいは製品であったとしても、それは製品を作ることのできる提供者から、必要だけど作ることできない消費者に向けた贈り物です。だからこそ、このような気持ちでテキストを作り、プログラミングを学びたい人たちのためにプログラミングを伝えていくのです」と講演を締めくくった。
「Pythonの教科書」ダウンロードについて
喜多教授たちが書かれた「Pythonの教科書」の最新版と、そこで使われている「K2PFE」フォントは京都大学の学術情報リポジトリ「KURENAI」で公開されています。以下の関連リンクより、無料でダウンロードが可能です。