プログラミングを始める小さなきっかけ

こんにちは、プログラマの三浦です。

今日はプログラミングを始めたきっかけを話しましょう。

私は秋田県の横手市というところで生まれ、大曲市、秋田市と引っ越しました。生まれてから30年、秋田で暮らしていました。

父親は教師でしたが、かなり本気の趣味としてアマチュア無線の免許を持っていました。私も小中学の頃は傍でよく聴いていましたので、「門前の小僧習わぬ経を読む」状態でした。母も免許を持っていましたので、両親は今でいう「ギーク」ですね。

狭いアパートにNEC PC-8801がおもむろに鎮座するようになったのは、小学3年生ぐらいだったと思います。まだパーソナルコンピュータというものが身近な存在ではなかったので、興味を持つはずもなく、田んぼの稲刈り後にサッカーをしたり、野球をする毎日でした。

打ち合わせなどでかれこれ週3で通っているTanjong Pagar。再開発が進み、駅直結のビルやサービスアパートメント、オフィスなどが増えてきました。

打ち合わせなどでかれこれ週3で通っているTanjong Pagar。再開発が進み、駅直結のビルやサービスアパートメント、オフィスなどが増えてきました。

詳細はよく覚えていないのですが、N88-BASICのマニュアルをなぜか読み始めたことだけは覚えています。読書はそんなに好きではなかったはずなのに、引き込まれたのかどうなのか、とにかく読み進めていました。読み進めていくと、パソコンを触って試してみたいという気持ちになり、父親に電源の入れ方、簡単なBasicの入力方法、プログラムの走らせ方を教えてもらいました。

初めは、キーの位置を探すのさえ時間がかかり、大変な思いだったのが記憶に残っているのですが、その頃の独学で編み出したホームポジションではない独自のブラインドタッチがいまだに指に馴染んでいます。もうこのキータイプの変な癖は治りそうにありません。

キーボードの入力に馴染んだ頃には、locate文、print文を駆使したキャラクターコードで描く「絵」を描くことにハマっていました。絵といっても、今でいうグラフィックスではなく、グラフモードでのアスキーアートのようなものでした。制御、ロジックなどと呼べるものはなく、単純に上から順に所定位置に何かを表示させる、といった原始的なプログラムを書いていました。

そんなある日に、父親がline文を使って、現在の表示を消して、次の移動先に描画し、それを繰り返すことで、所謂アニメーションを実演して見せてくれました。これは、今でもはっきり覚えていますが、子供心に深く感動しました。消して、次の位置に表示して、それを消して、次の位置に表示するだけで動いて見えるというアニメーションの基本原理を自分なりに理解した瞬間です。今思うと5frame per sec.も出ていなかったはずなのに、チカチカ点滅しているが動いて見えることが小学生の私にとって、それはそれは大きな発見だったのです。

父親はその後私が作ったプログラムを褒めてくれました。褒められると子供は有頂天になるわけです。

そうなったら、子供は手がつけられないですよね。毎日プログラミングをし続けて、次第にBasicでは飽き足らず、マシン語を使うようになっていました。

最近プログラミングに必要なロジカルな思考を子供にも教える風潮が高まっています。

プログラミングの楽しさは別にして、将来の職業として親が子供に勉強させたがっていたりする場合は、「手に職を」という思いで、(現時点で)仕事の多いJavaScriptを覚えさせようとか、A.I.を見越してPythonを覚えさせよう、と言語を指定する場合が多いです。正しく理解している親の場合は、言語は関係なく思考のプロセスを重視、アルゴリズムとは?ロジックをスマートに構築するプロセスは?といった本質に目を向けます。

大人の目線から見てとても大切ですが、子供にとっては、興味をキープしてなおかつ、プロセスの習得までこなすカリキュラムは難しいのが実情です。少なくとも私の経験上はそう思います。もちろん、多くの方が教材を工夫し、取り組む問題を工夫し、グループでのディスカッションを取り入れて、効率の良い学習方法を模索しています。

頭で考える場合、五感も一緒に駆使して何かをした場合、深く理解できたという経験があるので、コンピュータによるグラフィックス(目で結果を把握する)・音楽演奏(耳で結果を把握する)などが最初のきっかけとしていいんじゃないかと感じています。

近年では「ライブコーディング」が、まだ小さいシーンながらも盛り上がりを見せはじめています。このライブコーディングは、プログラムをリアルタイムに実行しながら、コーディングする行為自体をパフォーマンスし、見せるショーのようなものです。音楽や映像を生成することが多く、プログラミング(のプロセス)を覚える方法として、良い方法の一つだと思います。子供から大人まで楽しめます。

年の瀬はなぜか忙しい。こんな写真を撮っている余裕はないのに撮ってしまった。日本ではあまり馴染みがありませんが、Flat Ericさんというキャラクターです。忙しいというよりも寛いでいるように見えないでもない...

年の瀬はなぜか忙しい。こんな写真を撮っている余裕はないのに撮ってしまった。日本ではあまり馴染みがありませんが、Flat Ericさんというキャラクターです。忙しいというよりも寛いでいるように見えないでもない…

近い将来機会があれば、ライブコーディングの講習会を開きたいと構想を練り始めました。

少しでも興味がある方は、年齢を問わずプログラミングにぜひ挑戦してみてください。

Best Regards,

Nozomu Miura

miura

秋田県生まれ。ベルギー、東京を経て現在シンガポール在住。 様々な業務アプリケーションの開発に関わり、主に低レイヤーの開発を得意とする。 ベルギーへ渡り、照明最大手のR&Dのリードエンジニアとして、メディアサーバや照明制御の開発に6年間従事。 2006年のユーロビジョンソングコンテストやアーティストのステージを支えるエンジニアとしてベルギーを拠点に欧州で活躍。 日本ではライブストリーミングサイトdommuneや、坂本龍一の映像配信などをサポート。 その一方で、vjとしてクラブシーンとも関わり、積極的にvjソフトウェアを開発。 小さくてもニーズのあるツールを提供するのが生き甲斐。次のプロダクト作成のため、メンバーを探している半ばの人生。 エンジニアとしてのメンタルを保つために、アジア大陸最南端でギラギラ葛藤中。 動物とあんことレッドブルが好き。最近お酒に弱くなりました。

0 comments