koudenpaのブログ

趣味のブログです。株式会社はてなでWebアプリケーションエンジニアをやっています。職業柄IT関連の記事が多いと思います。

CGI = Perl ? 懐かしインターネット上のプログラム言語

なんだか最近CGIという略語をよく見かける気がする。

CGIとは、インターネット上のサーバでプログラムを動かすための仕掛けで、20年くらい前の僕は CGIスクリプトPerl だと思っていた。

もちろん今では、CGIはCommon Gateway Interfaceの略であり、Perlに限らず何でもインタフェースして実行できる仕掛けだと知っている。

PHPスクリプトでも、シェルスクリプトでも、バイナリでも。

世の中には「スクリプトおせぇ(笑」のような感じでC言語CGI向けのプログラムを書いて配布しているような人もいて「サーバでコンパイルして使ってください」と書かれていたりもした。

当時は今のようにクラウドVPSで自由にサーバを使える環境はなかなか用意できなかったのだけれど、レンタルサーバで普通に cc コマンドは実行できて、CのコードをコンパイルしてCGIで実行するようなカオスなことができたりしていた。

今のレンタルサーバでもコンパイラを使えるのだろうか?

そんな状況下で自分が何をしていたかというと、当然のようにC言語CGI動作のソフトを書いていた。

TRPGのオンラインプレイ向けにマップを共有するソフトである。

漁ったらソースコードが出てきたのだけれど、内輪向けだったこともありマップやユニットのチップにSRCのものを使っていたり、使用しているライブラリの権利が謎だったりで .gitignore がなかなか豪華なことになった。

今にしてみると相当な力業だけれど、プログラムにかけるパッションだけは何倍もあったことが分かるコードだ。

github.com

これを作ったころはまだ『どどんとふ』はなく『どどんと』があったかどうか? といったころだった気がする。

どどんとふがFlashの終了と共に動作させられなくなることもあり、その後継を狙ったTRPGのオンラインプレイ用ソフトウェアがどんどん出てきている。なかなか面白い状況だと思う。

大分話題がそれてきたが「そういえば、自分も昔マップ共有ソフトを作ったなぁ」と思い出してしまったので振り返ってみた次第である。