最近はSUPやスケボーばかり乗ってる危ないオッチャンに思われていると思いますが、本業はシステム屋でして、仕事ではデスクに縛りつけられている反動で休日は弾け飛んでいるわけです。w

もちろん、もう仕事でプログラムを作る年ではありませんが、現場を離れてもプログラミング感覚は大切だと思っているので、リハビリとして時々レトロな開発環境で遊んでいます。

日本では2020年度から小学校でプログラミング教育が義務化されますが、今更かもしれません。やらないよりは、やったほうがマシですが「時すでに遅すぎた」感もあります。

40年前、私が学生の頃にパソコンが一般化しだしてハードからソフトへの大きな変革が起こりました。この業界に進んだのもそんな波に乗ったためです。

コンピュータの世界で使われる言語は、日本語や英語、フランス語、ドイツ語といった人が使う言語と同じように色々な言葉があります。それぞれの言葉で使う単語やフレーズも違うので、システム屋になるにはある程度バイリンガルに話せる能力が必要になります。

もちろん全てのプログラムは計算式なので、ベースには数学知識が必須となります。
簡単にはプログラマーとは計算式で小説を書くようなお仕事になります。

こういうと難しく思えるかもしれませんが、使う単語は知れてますので大したことはありません。特に一般事務系のシステムは難しい計算式も必要ないので簡単なものです。
もちろん大規模な金融機関システムやインフラ系の仕組みは別次元のノウハウやスキルが必要になってきます。

単純なショートプログラムで一番厄介なのはゲームプログラムじゃないかと思います。
最近のゲームは3D映像が当たり前で、高性能なグラボをブン回すゲームが多くなっていますが、膨大な量の物理計算を60分の1秒間で済ませなくてはならないので、複雑な計算式を最適化したアルゴリズムに変換する数学力と天才的な発想力が必要な分野になります。四則計算だけの会計処理をするシステムとは雲泥の差で、ゲームプログラマーにはかなり高度なスキルが求められます。


プログラミングの義務教育が始まることもあったので、入門的なプログラム環境を色々とウォッチしてますが、MITのScratchはかなり有望なようです。ただこの環境はプログラムの概念を捉えるだけで、一般的なシステムのプログラムスキルに繋がるか?というと疑問です。もし本気でプログラムを勉強するのなら、パスしたほうが誤解を招かないかも?しれません。

Scratchの記事
https://ameblo.jp/time-tripper-ame/theme-10109530636.html

スマホが当たり前の時代になって、一般の方はどういう仕組みでスマホが動いているか?意識もしていないと思いますが、そんな時代だからこそ次世代にその技術を伝えるためにコンピュータの原理を理解するレトロな環境が必要じゃないかと思います。



前置きがかなり長くなりましたが、オススメしたいのはレトロゲーム開発環境の「TIC-80」です。TIC-80は以前から何度も紹介していすが、最近TIC-80のサイトがにわかに活発化してきたように思います。

 


 

TIC-80 tiny computer
https://tic.computer/

ただ、ビックリしたのはGoogle先生で「TIC-80」を検索すると80件程しかヒットしませんでした。世界中で80件って、誰も知らないんじゃないのか?というレベルです。

最近のGoogle検索は色々と誘導的に味付けがされているので信頼性は薄いですが、それにしてもヒット数が少なすぎます。おそらく私だけでも100件くらいは情報発信してるはずですから何かのワードトラップに引っ掛かっているのかもしれませんね。

まぁーとにかく知名度が低くて人気もないということだけは確かなようです。
でもこれは絶対にオススメします。マルチプラットフォームに対応していますし、何より無料で利用できるので気軽にチャレンジしてみてください。

Create Your Game
https://tic.computer/create


TIC-80では「Lua」という言語を使います。
比較的簡単な言語なので理解もしやすいかと思います。
基礎的な考え方は他の言語にも応用できるのでプログラミングの入門にオススメです。

Lua 5.3 リファレンスマニュアル
http://milkpot.sakura.ne.jp/lua/lua53_manual_ja.html


TIC-80はPICO-8をベースに作られた環境なので共通点も多く移植も比較的簡単にできます。PICO-8は有償ですが、よく出来た開発環境なのでチャレンジする価値はあると思います。

PICO-8にはプロのゲームプログラマーも沢山参加されているのでゲーム作品の質も高くて、実際にPICO-8から市販されたゲームもあります。それらのプログラムは全てオープなので参考になると思います。

PICO-8 Fantasy Console - Lexaloffle
https://www.lexaloffle.com/pico-8.php


まずはゲーム作品を試してみるのがいいかと思います。
TIC-80やPICO-8では自分で作ったゲーム作品等をネットに公開して、誰でも無料で遊ぶとこができるようになっています。スマホ用のフラットフォームアプリもあるのでスマホでもプレーすることができます。

TIC-80 Play
https://tic.computer/play

PICO-8 BBS > PICO-8 > Cartridges
https://www.lexaloffle.com/bbs/?cat=7&carts_tab=1&#sub=2&mode=carts


最近の作品でいくつかオススメのゲームを紹介します。

【TIC-80】

BALMUNG
https://tic.computer/play?cart=636

BARE BONES
https://tic.computer/play?cart=139

WCQ NO.6
https://tic.computer/play?cart=683


【PICO-8】

Rambo - Prison Break
https://www.lexaloffle.com/bbs/?pid=17880

pinballvania!
https://www.lexaloffle.com/bbs/?tid=33832

GA TASU
https://www.lexaloffle.com/bbs/?pid=32504


どれも懐かしい感じのレトロゲームですが、ゲーム性といしう意味では最近の3Dゲームよりゲームらしいかもしれません。今時のリッチな環境じゃなくてレトロでチープな環境だからこそプログラマーのアイデアとテクニックが問われます。また小さな環境だからこそ全てを自分でコントロールできる楽しみもあるかと思います。

ゲーム作りはプログラミングの知識だけではなく、キャラクターをデザインしたり絵を描いたり、効果音や音楽を作ったりと総合芸術のスキルが必要になってきます。奥が深い世界なのでゲームをするよりゲームを作るほうが面白いですよ。
詳しくは過去記事も参考にしてみてください。

TIC-80の記事
https://ameblo.jp/time-tripper-ame/theme-10109530637.html

PICO-8の記事
https://ameblo.jp/time-tripper-ame/theme-10109530633.html

秋の夜長にオススメですよ!