プログラミングが楽しかったころ
中学校3年生のとき、選択授業でパソコンを使える授業があって、僕はパソコンとかほとんど触ったことがなかったけど面白そうだなあって思って、それを選択した。(他の選択肢の家庭科とか美術が好きじゃなかったってのもあったかも)
Wordを使うコースやホームページを作るコースなどいくつかコースが用意してあったが、その中一つのプログラミングに惹かれた。
ゲームが好きだったから、ゲームってどうやってできてるんだろう、どうやって作るんだろうということに興味を持っていたからだ。
授業といっても、先生が何か教えてくれたわけではなくて、基本、みんな放置されていた。
プログラミングの人は、FBASICの分厚いマニュアルを渡されただけだった。
僕はそれをワクワクして読みながら、Circleという関数で円が書けるのか、変数に値を代入することができて、それをFor文で増やしていくことができるのか、i=i+1って数学的に変だな(笑)、GOTO文すげえ!これがあればなんでもできるな、とか一つ一つ覚えながら、最初はボールがただ動いていくだけのものを作って、最終的には、2人でボールを打ち合うゲームを作った。
その時のプログラミングがとても楽しくて、「将来はプログラマーになりたい。」と思い、進路を高専の電気情報工学科に決めた。
迷いは無かった。僕は普段は結構優柔不断だけど、大事な場面ではそんな迷ったことがない気がする。
高専に入学すると、全員ポケコンを購入させられた。
ポケコンとはポケットコンピュータの略だが、S○nyのVaio Type-P程度にはポケットに入らない大きさだった。
ポケコンは関数電卓という電卓よりももっと複雑なことができる機能がついていたが、さらに、BASICやC言語でプログラミングすることもできた。
僕はそのときPCを持っていなかったので、すぐにポケコンでのプログラミングに夢中になった。
まずは、中学校のとき作ったボールゲームを思い出して、ポケコンに移植してみた。
その後他のゲームと作りたいと思ったが、BASICの描画関数だけだと、円や四角しか書けない。
ドット絵を表示させたい!と思って、まずはポケコンでドット絵を作成・編集・保存ができるプログラムを作成した。
マリオのドット絵を描いてみたりして、意外と描けるもんだなと思った。
その後マージャンの牌を自分で全部描いて、ツモって捨てるだけの一人マージャンゲームを作った。和了判定なんてなかったし同じ牌が5つ出てきたり(笑)してたがそれなりに楽しめた。
マージャンを作ったときに、手牌をソートする必要があった。そのときはソートアルゴリズムなんて知らなかったけど、自分でバブルソートを考えて実装した。(選択ソートの方が自然に思いつきそうだけど、隣同士の値を交換するほうが自分が普段する動作と合致していたのかもしれない)
パワフルプロ野球というゲームで、ローディング画面の待ち時間にピッチャーがボールを投げてきてそれを打ち返すだけのミニゲームがあり、それが結構好きだったので、ドット絵でパワプロっぽいピッチャーとバッターの絵を描いてミニ野球ゲームも作った。
ピッチャーがちゃんと投げているように、バッターがちゃんと打っているようにドット絵を少しずつ変化させながら一枚一枚描いて、結構出来のいいものになった。ちょっと思い出せないが、フォークボールも実装したし、ストライク・ボールも判定してた気がする。
ポケコンがあれば暇しなかったし、分厚い説明書を読んでるだけで楽しかった。
しかし、毎日ポケコンを使っていたので、高専1年生の夏休みには、ポケコンの電池が切れそうになった。
説明書には、「ポケコンの電池が切れた場合、本体のプログラムデータが消える可能性があります」とあった。
僕は、自分が一生懸命に試行錯誤しながら書いたプログラムたちが消えてしまうのが嫌で、ポケコンの中身をカセットテープに保存する装置が欲しいと思ったが、どこに売っているのか分からなかったし、分からないものを探す方法を知らなくて、あきらめてしまった。
そしてそのうちに、ポケコンの電池がなくなって、データは消えてしまった。
そのころから、前のような情熱を持てなくなってしまった。
今持っているPCよりもずっと小さな画面とキーボードで、ブラインドタッチもできなかったし、BASICしか言語も知らなかったけれど、自分で考えて工夫して作って、今よりもずっと楽しんでいた。
10年前と同じことがしたいわけじゃないけど、10年前と同じくらい興奮できることがしたい。
ワクワクして、暇なときにはそればっかり考えて、それだけで毎日が楽しくなるような。
仕事でそれができたらベストだけど、そうじゃなくても休日の趣味でもテンションMAXになるようなものを見つけたい。
面倒がらずに色々やってみたり、面白そうなことをやっている人を観察して、マネでもいいから自分も何かやってみたりしようかな。