小5がノートに手書きでプログラミング、35年後にAIで動かしたら パソコン購入反対されても叶えた夢

プログラミングをやってみたいと夢見ていた小学校5年生が、手書きでノートに書いていたコードが、35年の時を経て、生成AIによって動き出したーー。そんな夢のある投稿が話題になっています。投稿者に話を聞きました。

懐かしいビープ音!

《5年生の時にパソコン購入を反対され、それでもプログラミングがしたくてこっそり買ったBASIC言語の入門書を見ながらノートにコードを書いてました。奇跡的にそれが残っていたので写真に撮りClaude3でJavascriptにして実行。35年の時を経て生成AIによって動きが知れたことに感動しています。》 投稿には、少し黄ばんだ方眼紙に描かれた手書きのコードと、AIによって生成されたコードの画像が添付されています。 そして動画では、懐かしい昔のコンピューターのビープ音とともに、四角形が色とりどりに変化しながら移動していく様子が映っています。 この投稿には「小学生の時、レポート用紙でまったく同じことをしてました!」「BASIC本を買って勉強してノートに書いて脳内実行してました」など、同じ経験をしていた人からの共感が続々と集まり、拡散されました。

実家で見つかった3枚の紙切れ

投稿をした、エンジニアの阪(さか)和幸さん(47歳)に話を聞きました。 小5の時の自分が書いたコードを見つけたのは、5年前のこと。 実家に帰省した際、母が阪さんの小学生時代のノートなどをしまった段ボール箱を見るように促しました。「本当に捨てちゃうよ?」 「捨てても良いって言ったのに…」とぼやきつつ、阪さんがふとノートの束をめくると、3枚の紙切れが出てきました。 そこには、懐かしい手書きの「コード」が書かれていました。小5の時から、夢中になって取り組んだプログラミングの一部でした。

「ゲームって、自分でも作れるんだ」

阪さんがプログラミングを始めたきっかけは、小2で発売されたファミリーコンピューター(ファミコン)でした。 小5の頃は「ドラゴンクエスト(ワン)」ブーム。クラスでは、友達がノートにドラゴンクエストのすごろくを書いて、鉛筆をサイコロ代わりに、みんなで遊びました。 それは阪さんに、「ゲームって、自分でも作れるんだ」と衝撃を与えました。 「コンピューターを使えば、ゲームが作れるらしい」と誰かから聞いた阪さんは、「どうせ作るなら、コンピューターで、自分でもゲームを作ってみたい」と思うようになりました。 けれど、「コンピューターがほしい」と相談しても、父にはコンピューターはおもちゃの延長線に映っており、「そんなことしても仕方ない。いらない」と一蹴されます。 周りにコンピューターを持っている人はおらず、「田舎」だったため、近くに最新のパソコンを扱う電気屋もありませんでした。

プログラムはあるのに…

それでも、諦めなかった阪さん。「やっぱりゲームを作りたい」 本屋で情報を探していると、あるパソコン雑誌を見つけました。そこには読者が投稿したゲームのプログラムが文字で掲載されるページがあり、そのプログラムさえ打ち込めば、自分のコンピューターでそのゲームができる、というものでした。 「このコードが分かれば、ゲームが作れるんだ!」 阪さんは母に頼み、父に内緒でプログラミング言語「BASIC」の入門書を買ってもらいました。その日から、学校から帰ると、家でプログラミングのルールや仕組みを覚え、ノートにコードを書き込みました。 当時を振り返ると「それしかしてなかった」というぐらい、「プログラミング」に夢中になった阪さん。一方で、どこか寂しい気持ちもありました。 プログラムはあるのに、実際に動かすことができない…。 「コンピューターもないのに、ノートでこんなことやってるの、僕だけだろうな」 あの頃は恥ずかしくて、友達にも、誰にも言えませんでした。

「これって永久保存版じゃない?」

それから35年経って、「奇跡的」に見つかった、あの手書きのコード。 「これって、永久保存版じゃない?」。慌てて紙切れを写真に撮り、実物も「これは残しておいて」と母に託しました。 そのコードを見ただけで、あの頃のように、どんな動きをするのか「脳内再生」できました。しかし、現代ではそのプログラムを実行する環境を整えるのが難しく、そのときはそれだけで終わってしまいました。 時が経ち、今月、阪さんが仕事でAnthropic社の生成AIモデル「Claude3」の性能評価をしていた時、ふと、あのとき撮った手書きコードを思い出しました。 「今ならワンチャン、動かせるかも」

例えるなら「イチゴの香り」

手書きコードの写真をClaude3に読み込ませ、ブラウザでも動かせるようにプログラミング言語「JavaScript」のコードに生成してもらい、実行してみました。 沈黙の漆黒の画面、「スタートボタン」を押します。 1回目は、あっという間に終わってしまいました。「現代のパソコンの速度だと早過ぎる、当時のパソコンはもっと遅かった」。阪さんはAIに「もう少し遅く」と修正を依頼しました。 そして2回目。 ピッと音が鳴り、画面上に鮮やかな「水色」の「四角」が現れました。 手書きのコードに書かれた、当時ではおなじみの「ビープ音」を出す命令。「ちゃんとAIが再現してくれたんだ」と驚きました。 四角は、ピッピッという音に合わせて「赤」「青」「赤」「青」と色を変えながら、右に移動していきます。 色の変化は、小5の時に仕込んだランダムに色を変える命令。サイコロを振るように、不規則に色が変わっていきます。 次は「黄色」。そして「青」。 「灰色」「灰色」「深緑」「青」「青」 「黄色」「ピンク」「黄色」 「白」「黄色」「ピンク」「灰色」 最後に鮮やかな「水色」。 20秒ほどで終わりました。 「当時のコンピューターってこんなだったよな」。懐かしさがこみ上げました。 コンピューターを持っていなかったあの頃、動かしたくてしかたなかったプログラムが、いま、音を鳴らして動いている。 ずっと「脳内再生」してきたけれど、実際に音が鳴って動いているものを見るのは「まったく別の体験」だったそうです。 「例えるなら、想像してきた『イチゴ』の実物を見たら、香りがした、そういう感じです」

「AIってすごい」

実は小5の時に書いたコードをよく見ると、動かしたかったものは「四角」ではなく、「ハート」でした。でも、それ以外は、AIがほぼ完璧によみがえらせてくれました。 驚いたことにAIは、手書きのコードでは書き漏らす「ミス」があったところ、それをきちんと判断して「無視」し、その下段に書き直していた正しいコードのみを選択して生成してくれていました。「AIってすごい」 阪さんの投稿はまたたく間に拡散され、「まったく同じことをしていた」という人が続々とコメントを寄せました。 「パソコンもないのに、ノートにコードを書いているのなんて、自分だけだろうな」と、寂しい気持ちになっていた小5の自分。「こんなにたくさんの人が同じことをしてるんだと知ったら、きっと、喜ぶだろうな」

「間違ってないよ」

大人になった阪さんは、エンジニアになりました。会社で9年間、ソフトウェアの開発に携わった後、独立して起業。「あの頃も、今もずっと、コンピューターをしているんです」 2020年度から小学校でもプログラミング教育が導入され、今では多くの子どもたちがプログラミングを学ぶことができるようになりました。 今は、ブロックを並べ変えるように極力エラーを起こさずにプログラミングを学べます。 子どもたち向けのワークショップも手がける阪さんは、生き生きとプログラミングをする子どもたちに、当時の自分を重ね合わせます。 昔は、一文字でも打ち間違えたらプログラムが動かなくなり、「なんで動かないんだろう」と考え、打ち直すという「今よりも、ずっと骨の折れる」ものだったプログラミング。 それでも阪さんは魅了され、「コンピューターもないのに、一生懸命になって…。不思議ですよね」。 思えば、コードを手書きしていた時間は、今の人生につながる「入り口」でした。 もし、小5の自分に声をかけられるなら? 阪さんはこう話しました。 「大丈夫。間違ってないよ」 「そのまま続けていいよ」 「もうちょっと大人になれば、同じようにがんばっているお友達がいっぱいできるから」

画像引用元:

記事引用元:

ネットの反応

Aさん
Aさん

自分も小5でコンピューターに目覚めました。

ファミコンなどのゲーム機はためにならないからと、一切買ってもらえない家でしたが、
粘り強く親を説得して、当時発売直後のPC−6601を買ってもらうことができました。

子供ながらに単純で、将来はこのメーカーで働こうとか考えてたりしてましたが、
実際にそうなってしまいました。

やはり多感な時期の体験が、人生の方向性に与える影響力は大きいのでしょうね。

Bさん
Bさん

私も小5の時にプログラミングを始めました。
当時はまだファミコン発売前で8ビットパソコンがブームでした(当時はマイコンと呼ばれていました)。

当時、コロコロコミックで人気だった「ゲームセンターあらし」という漫画を題材にした「こんにちはマイコン」というBASICの入門書がきっかけでプログラミングを勉強しました。

私の場合、父が理解のある人で幸運にもパソコンを買って貰う事が出来ました。

あの時、父がパソコンを買ってくれていなかったら、この記事の方と同じようにノートにコードを書いているだけで、今の職業にも就いていなかったかもしれません。

父には感謝しています。

Cさん
Cさん

これ、絵本にしたいな。
絵本にして、5年生の小学校の朝の読み聞かせにつかいたい

プログラミングはすごいって話じゃなくて(それもあるけど)、

「自分の好きを、誰も理解してくれないだろうし、
 こんなことしてるの自分だけだろうな」って
感じた孤独感や無力感が、
大人になって世界が広がってみたら、くつがえされた

当時の「ムリ」を新しい技術が、蹴飛ばしてくれた

それぞれ孤独な思いを抱えてた人が実は存在して、
一生あわなかったかもしれない人が、情報公開したら
思いがけずつながった事、主人公は過去の自分に報告したくなる

という所を、いまの小学校5年生に伝えたいなと。

Dさん
Dさん

これは感動。
自分の場合、コンピュータに興味を持ち始めたのは中学生の頃。
高校生の頃にPCが一般的になって買ってもらったけど、高価だったよな。親には今でも感謝してるよ。
だからBASICを覚えたのは高校生になってからだけど、NECからPCシリーズ出た後は欲しかったなぁ。コレも高価だったから簡単に買える代物ではなかった。
PC-8801シリーズ買えた時は嬉しかったけど、どっちか言うとゲームばかりしてたかな。笑
雑誌に付いてたマシン語をひたすら打ち込んで、ゲームした事も有ったな。

コメント引用元:yahooニュース

プログラミング

プログラミング(英語: Programming)とは、コンピューター上で、ある特定のコンピューティングの結果を得るために、実行可能なコンピュータープログラムを作成することである。

プログラミングが関係するタスクの例として、アルゴリズムの生成、アルゴリズムの正確さとリソースの消費量のプロファイリング、選択したプログラミング言語でのアルゴリズムの実装(これは一般にコーディング(英語:coding)と呼ばれる)などがある。

プログラムのソースコードは、コンピューターのCPUで直接実行される機械語ではなく、プログラマー(ヒト)が理解できるプログラミング言語で書かれる。プログラミングの目的は、あるタスクを自動化する一連の命令をコンピューターに実行させ、与えられた問題を解決することである。

プログラミングを行うには、アプリケーションドメインに関する知識、特定のアルゴリズム、形式論理など、さまざまな主題への専門性が要求されることが多い。

プログラミングに関係する作業には、テスト、デバッグ、ソースコードのメンテナンス、ビルドシステムの構築、コンピュータープログラムの機械コードなどの生成されたアーティファクト(英語版)の管理などがある。これらのプロセスはプログラミングのプロセスの一部と考えられるが、広義のプロセスはよく「ソフトウェア開発」と呼ばれ、実際にコードを書く行為に対しては、「プログラミング」、「実装」、「コーディング」という名前が使われることが多い。ソフトウェア工学 (software engineering) は、エンジニアリングの技術をソフトウェア開発の実践と組み合わせたものである。「リバースエンジニアリング」はこの逆のプロセスを表す。「ハッカー」とは、技術的な知識を使って問題を解決する技術のあるすべてのコンピュータの専門家を表す言葉であるが、一般的な用語では「セキュリティハッカー(英語版)」と同じ意味でも使われている。

出典: フリー百科事典『ウィキペディア(Wikipedia)』

こんな記事も読まれてます


あわせて読みたい記事