RetroTube のソースコード
RetroTube の中の人が、 RetroTube のソースコードを公開されている。 そういえば Web サービス系のソースコードって、あまり公開されることがない気がする。
- COBOL技術者の憂鬱 - ソースコード公開 … バッチ処理
- COBOL技術者の憂鬱 - ソースコード公開(その2) … オンライン処理
てっきりRailsを使ったDBアプリだと勘違いされていた方もいらっしゃると思いますが、そのような小難しいことは一切やっていないのです。ひたすら移送と分岐と繰り返しの羅列なので、このままCOBOLでリメイクできそうな気がしますね。
と書かれているように、仕組みはとってもシンプル。 バッチ処理で取得したデータをCSV形式で保存しておいて、オンライン側で表示している作りになってる。 ループ処理も独特な感じ(COBOL書いたこと無いけど、こんな感じなのかな)。
loop { begin # 処理は省略 rescue break end i += 1 if i > 3 break end }
Ruby で書いた理由が気になるけど、それは雑誌を参照なんだそうな。 (ちなみに、偶然(?)にも同じ号に僕の記事も載る予定)