• デバイス

    デバッグが楽しい

    本日(23日土曜日)は、久しぶりにプログラミングをしました。といっても、教科書を見ながら、ひたすらそのコードを入力するという、いわば「単純作業」です。そこには何も創造性はありませんが、たまにはコードを入力すると、満足できます。プログラマではありませんから、特に詳しくなる必要は感じていませんけれど、その命令の意味くらいは理解しないと、今後の課題に問題が生じます。幸い、教科書には丁寧な説明文が添付されていますから、特に困る事はありません。入力が終わって、デバッグ(ミスを取り除く)作業をせずに、いきなり実行させました。すると、すぐに「ココが違うよ!」という内容の英語の文章が出てきました。この「ミス」の通知が、実はプログラミングをしている時の醍醐味であると考えています。このデバッグ作業をしている時は常に問題と向き合っている状態であり「何故、上手くいかないのか?」とひたすら悩む羽目になります(単なる自分のミスだけでなく、コードの設計に係る問題が難しい)。この悩んでいる時間が、無駄であり、幸せでもあります。全てのデバッグが完了し、プログラムが当初の意図する動きをすると、一安心し、それと同時に「もう終わってしまった」という寂しさもあります。しかし、デバッグが終わらないと、次のステップに進まないので、いつまでも余韻に浸っても仕方がありません。今回は高々120行くらいのボリュームでしたが、次回は、200行くらいに膨らみます。こんな事をしなくとも、コーディング済みのファイルをダウンロードできるように、教科書にダウンロード先のURLが記載されているのですが、それを使う事はプログラムの勉強にならないと考えているので、敢えて自分で見ながら入力します。教科書には「わざわざ入力しなくとも良い」と書かれていますが、やはり「意味」を知ることが、より理解を進めることだと信じての行動です。将来的には、プログラミングという作業は簡潔になり、部品を組み合わせて使うようになります(既にそうなっている部分もありますが)。子供のプログラミング学習はまさにそのプログラム群(モジュール)を、視覚的に組み合わせるようなソフトが使われるでしょう。想像性を育むには、面白いものだと思います。中にはその組み合わせだけでゲームを作ってしまう子供もいるようです。一つ心配なのは、ディスプレイですね。もう少し、眼が疲れないような、空間に描くような方法はできないのでしょうか。ウェアラブル端末のメガネを使えば、そういう空間を共有することが可能であり、ディスプレイも不要になるのでしょうけれど、単価が20万ですから、高級ですね・・・さてどうなることやら。