自分は今でもソフトウェアエンジニアの端くれだと思った話
今回のブログは、ちょっと長くなりました。
ちょっとマニアックな内容なのですが、出来るだけ平易に書いたつもりなので、どうか最後までお読み下さい。
肘を捻挫した直後は肘が曲がらないだけでなく、指先を少しひねろうとしても痛みが肘まで走る程でした。
なものでほぼほぼ右腕を動かせません。
箸も持てない、日常のことが何も出来ないと言いましたが、ということは大好きなゲームも出来ませんでした。
そんなわけでしばらくはネット動画ばかり見ていました。
だけど不思議なもので、有り余る時間をひたすら動画ばかり見ていると、案外と退屈してきます。
もう少し能動的なことがしたいと思っていた時、見つけてしまいました。
いつぞや麻雀を覚えようと引っ張り出してきた古いゲーム機、Nintendo DSi。これに「プチコン」がインストールされていました。
「プチコン」とは何かというと、要するにBASICプログラミング言語です。
最近ではMicrosoftがVisua BASICというプログラミング言語を販売していますが、これはBASIC言語を現代風に改良したものです。
今となってはBASICを習う人もいないでしょうが、昔は手軽に使える高級言語(*)として、プログラミングへの入口として普及していたものでした。
「プチコン」も、そんな古き良き時代のBASICです。
もともとの開発経緯からして、古いBASICマシンを現在に復活させたいというものだったらしいので、現代らしいスマートさはゼロです。
MSX、N88-BASICなどを知っている層の人であれば、あまりの変わらなさにノスタルジーを覚えると思われます。
まあ細かい仕様については説明しても仕方ないので、それらは割愛します。
当たり前ですがDSiにはキーボードがないので、代わりに下画面にソフトキーボードを表示し、それをタッチしながら命令文を入力していく仕組みになっています。
これが非常に面倒くさくて、当時買ったは良いもののほとんど使わずに放ったらかしてしまっていました。
ところが今やってみると、このポチポチと入力できるのが非常に具合が良い。右手を使わずに左手だけで入力できますから。
当たり前ですが入力は遅くなりますが、まあ時間はいくらでもありますから、その心配はいりません。
おまけに、DSiのボタン操作などは簡単に使用できるように設計されてますし、プログラムで使用出来るグラフィックも予め一通り揃っているため、「まずキャラクターの絵を描くところから始めないと・・・」なんてこともありません。
既存のキャラクタをスプライトで並べて、ゲームっぽい画面を作るくらいなら割と簡単に出来ます。
そんなわけで、毎日少しずつポチポチとプログラムを楽しんでいました。
そして思ったわけです。「私は根っからのエンジニアなんだなぁ」と。
偉そうなことを言ってますが、私は往年のBASICはそれほど知らないし、ましてやゲームプログラムなど組んだことがないので、スプライトだのグラフィックなどはほぼ初めてです。
なので、マニュアル(オフィシャルページが今も存在している)を調べ、仮組みをして動作を確認したら、少しずつ機能を実装していく。
実装に迷うことがあれば、サンプルプログラムで似たようなことをしていないか調べ、それを参考にして組んでみる。
そういう作業を繰り返していくことになるわけですが、この一連の作業がとても楽しい。
そしてダメだったときの熟考。想定通りに動いたときの喜び。
何かに縛られずに自分の気が済むまでプログラムを組んでいくのは、本当に楽しいと感じました。
まあDSiの画面は小さいし、文字も細かいし、慣れない左手での入力なので、あまり長時間続けると肩がバキバキにこるので、少しずつしか出来ませんけども。
そんなわけで、現在進行系で少しずつ続けています。
ただ、さすがに肘が治ったあともずっと続けるかと言われると、ちょっと分かりませんけども(ゲームもやりたい!バイクにも乗りたい!ので)
ちなみに「プチコン」ですが、その後もバージョンアップが続いており、DSi、3DS用に「プチコンmkII」、3DS用に「プチコン3号」、Wii U用に「プチコン BIG」。そして現行機のNintendo Switch用に「プチコン4」が、販売中です。
お値段は結構高くなっちゃいましたけどね(初代プチコンは800円。プチコン4は2,500円)。
プチコン4だと、Switchにキーボードとマウスをつなぎ、テレビ画面に表示させて、ほぼほぼパソコンと変わらないような環境でプログラミング出来るそうです。
言語自体もかなり強力になっていて、ユーザー定義関数も使えるようなので、少しは現代的な書き方が出来るかもしれません。
サブルーチンとグローバル変数しかない初代プチコンは、頭がコンガラガリそうになります・・・
そんなわけで、おおよそ11年前に購入し、放ったらかしにしていたプチコンを今更復活させることが出来たというお話でした。
ほとんどプチコンの紹介のような記事になってしまいましたが、もし詳しく知りたいと思ったら、一度調べてみてください。開発元のSmileBoom他、結構な量の情報が出てきます。
別にプチコンに限ったことではなく、プログラミングの楽しさを知っていただければ幸いです。
* 高級言語とは、より人が使う言葉に近く、理解しやすい構文や概念を持ったプログラム言語のことです。