_プログラミング_オセロを1時間で作ってみた_実況解説__-_ニコニコ動画

私がエンジニアになるきっかけとなった動画

 どうも、ざわほげです。本日は私をエンジニアの道に誘うことになった一つの動画を紹介します。この動画について次のようにツイートしました。

 私のプログラミング人生のきっかけともいえる強烈な原体験を作り出したものなので紹介したいと思います。  

「オセロを1時間で作ってみた」

 その動画とは、ニコニコ動画でアップロードされている t-kihira さんの 【プログラミング】オセロを1時間で作ってみた【実況解説】 です。

 動画の内容は、メモ帳しかインストールされていないWindowsマシンから始めて一時間でブラウザで動くオセロを作るというものでした。

 この動画の特徴はなんと言っても、なんとメモ帳とペイント、ブラウザだけを使っている点です。これらを知らない人はいない有名なツールだとしても、使う人が使えば魔法のようにゲームを作れるのだと感動した記憶があります。

・オセロの盤面の画像をペイントで作る
・作った画像をブラウザで表示するHTMLやJavaScriptを書く
・クリックしたときの処理を書く

 などなどの一つ一つ見ればなんてことない処理なのですが、当時の私にとっては衝撃でした。

 なんてったってメモ帳とペイント、ブラウザだけで、オセロが作れてしまうわけですから。

 見慣れたツールだけからゲームが少しずつできていく感覚は、今なお私の原体験ともいえるものです。普段触っているツールにこんなポテンシャルが眠っていたのかと驚きました。

■最近本業の調子が悪いので、気分転換にオセロを作る様子を実況してみました。

 ↑のt-kihiraさんの動画の説明文にもある通り、本業がプログラマーの彼にとっては気分転換レベルの実装ではあったのですが、当時ほとんど初心者だった私には理解すら難しかったです。わからないところは何度も観て、真似しながら自分でも実装していました

 おそらく、一時間の縛りがない実況動画であればここまで感動はしなかったはずです。

 時間が制限されているからこそ、素人の私と彼のスキルの差がはっきりと感じられ、プログラマーに憧れを抱くようになりました。 

 それに加えて、私がこの動画を好きなもう一つの理由が、デバッグの過程を目の前で見られたことです。

 プログラミングをしていくと、タイポやロジックの実装ミスなどあらゆるところでバグが発生します。動画の中でも十回以上は思った通りの挙動をしない場面が出てきます。にも関わらず、淡々とバグの原因を見つけにソースコードに立ち戻り、必ずバグを発見し、解決しながら次に進んでいきます。

 私はこの動画から、どんなに不可解な挙動であっても、必ずソースコードに原因があり、それを直せば正しく動作することを学びました。実況では、バグが発生するたびにひとしきり驚いた後、経験的に怪しいところを探し出し原因を取り除いていきます。

 仮にこの動画がキレイに編集され、デバッグ過程が省略されていたとしたら、この人と私の間に距離を感じていたはずです。

 ありのままの実装過程を見れたからこそ、プログラマーの仕事により親近感を持つことができました。

プログラムを書く楽しさ

 そのような憧れを持ちつつも、大学では理学部に進学し、プログラマーの道からは遠ざかったものの、趣味ではチマチマとプログラミングを続けていました。研究ではプログラムなどの過程ではなく論文や発表といった結果が評価される世界なので、そこまでガッツリ力を入れていたわけではありません。

 ちょうど2年前、大学院博士課程に進むか進まないか決定する時期に、ポートフォリオサイトでも作ってみるかと気軽に書き始めました。この頃には、憧れだった彼のように一時間でオセロを簡単に作れるようになっていました。

 そこまで力を入れる予定ではなかったポートフォリオサイトでしたが、JavaScriptやHTMLを書くだけで思い通りに出来上がっていくのを目の当たりにし(私が書いているので当たり前ですが)、高校生の頃に抱いていたプログラムでアプリケーションができていく楽しさを再び思い出しました。

 プログラムをバリバリ書けるエンジニアになりたい気持ちが再燃し、博士課程進学ではなく、エンジニアとしての就職を決意しました。

現在の私

 現在は、二社目のスタートアップ企業でWebアプリケーションのバックエンドチームに入っています。Go言語でAPIサーバやDB設計などを先輩方に教えていただきながらなんとかやっています。

 振り返ってみると、高校生の頃私が憧れていた、プログラムをバリバリ書いているエンジニアに今の私がなっているのかもしれない。今回動画を書くにあたり、「一時間でオセロを作る」を久しぶりに見返したのですが、当時抱いていた憧れではなく、別の感想を抱きました。次はむしろ私がこの人のように発信する立場になる側だと。

 最近始めたnoteもその一つの手段にできたら良いなと思います。

 たった一つの動画ですが、私の強烈な原体験となったものを紹介しました。本当にこの動画を作ってくれたt-kihiraさんに感謝しかないです。

 ここまで読んでいただきありがとうございました。

 Twitter(@zawawahoge)もフォローしていただけると喜びます!

 (追記)
 なんとこの記事がt-kihiraさん本人(@tkihira)に届いたらしく、本当にネットの力にびっくりです。

 反響についての記事

 色々話題にしていただいたので、反響についての記事を書きました↓


よろしければサポートお願いします!本の購入などに充てます!