Liam Allan氏、Code For IBM i のこれからを語る
Code for IBM i の隆盛は、おそらく、IBM i テクノロジーに関する、ここ数年間で最高の物語と言えるでしょう。VS Code開発環境は、突然頭角を現し、このプラットフォーム随一の開発者ツールとしてのRational Developer for i の地位に挑みました。そして、そもそもの始まりとなったLiam Allan氏によれば、Code for i は、今後ますます良くなる一方だということです。
VS Codeと Code for IBM i (Liam Allan氏が Seiden Group社で仕事をしていた 2021年に開発した VS Codeプラグイン)には、明白で疑う余地のない勢いがあります。Allan氏が COMMON NAViGATEカンファレンスでプロジェクトのアップデートを報告した2022年11月には、プロジェクトが管理されている GitHubリポジトリ からのCode for i のインストール数は10,000回でした。プロジェクトのスター数は147個で、コントリビューターは25名でした。現在、このプロジェクトは、インストール数は53,000回、322個のスター、そして50名を超えるコントリビューターを誇ります。
Fortra社による市場調査、「2025 IBM i Marketplace Survey」を参考にできるとすれば、このプロジェクトは、このプラットフォームにおけるナンバーワンの統合開発環境(IDE)として、すでにIBMのRational Developer for i(RDi)を凌駕している可能性があります。2024年末に実施されたこの調査では、調査回答者の54%がRDiを使用していると回答し、これに対してVS Codeは53%で、ほぼ同数であることが見て取れます。56%がRDiを使用し、VS Codeの使用は37%のみだった前年からは大きな変化です。ただし、インストール ベースの約80%は、今なお、SEUのようなグリーンスクリーン開発ツールを使用しています。
2022年にソフトウェア開発者としてIBMの一員に加わったAllan氏は、Code for IBM i の成功には、IBMからの支援が絶対不可欠だったと述べています。
「有難いことに、IBMも、この製品に投資してくれています。今ではもう、私だけではありません。オープンソース コミュニティだけでもありません。この製品に目を配り、評価し、面倒を見続けようと本当にIBMも言ってくれているのです」とAllan氏は『 IT Jungle』に述べています。「それは、私自身にとって非常に有難いことでしたが、コミュニティも本当に有難いと思っているはずです。」
技術的な面で言えば、IBMの支援や御加護がないまま取り組んでいたとしたら、Allan氏やCode for IBM i コミュニティでは「決して修正できなかった」バグもあるということです。「まずはそこからお話ししましょう」とAllan氏は述べます。「私たちが見つけたバグには、IBM社内で出会えた人がいなかったら、決して見つけられなかったものもあります。なので、とても感謝しています。言うまでもありません。」
Code for i がバグだらけというわけではありません。実際はその逆です。Allan氏によれば、このオープンソース ソフトウェアは、非常に安定していてバグ フリーだということです。だからと言って、バグがまったくないわけではありません(どのソフトウェアにもバグはあります)が、Allan氏はプロジェクトの現状に十分満足しているようです。
「4年が経って、そこそこ安定しています」と彼は述べます。「それ以上、何を望むことがあるでしょうか。頻繁に使用され、かなり安定しているオープンソース プロジェクトです。すごいことではないでしょうか。最高です。実際のところ、夜眠れないなどということはありません。心配することなく、安眠できています。素晴らしいことです。」
デバッガーも、Code for i とうまく連携しています。これは、IBMによるかなり大きなアーキテクチャー上の変更を伴う大きな取り組みでした。公式のIBM i デバッガー製品は、JARファイルとしてIBM Toolbox for Javaにバンドルされていましたが、現在は、それ自身がオープンソースのEclipseプラットフォーム統合開発環境をベースにして構築され、Javaで書かれたRDiに直接統合されています。
「デバッガーが公開されたときも、問題なく動作しました。しかし、それを構成するのは、うんざりする作業でした。楽しいものではありません。問題があったのです。最悪でした」とAllan氏は述べます。「しかし、今では、セットアップはNavigator for i で行われます。以前と比べれば、作業は大幅に簡素化されています。そのため、全体として問題は少なくなりました。ユーザー エクスペリエンスは大幅に改善し、非常にうまく行っています。そうなってくれて本当に嬉しいです。」
Allan氏と、彼がCode for i で緊密に協働しているIBMの開発者(Sanjula Ganepola氏、Julia Yan氏、およびAdam Shevivy氏など)にとっての、もうひとつの大きな焦点はデータベース拡張機能です(彼らについては、IBMの若手開発者の新しい顔触れを紹介した 先週の記事で取り上げています)。VS CodeにSQL機能を提供するデータベース拡張機能は、 2023年末に 発表され、現在、プレビュー段階にあります。こちらも GitHubで管理されています。
「データベース拡張機能は、大きくなり続けています」とAllan氏は述べています。「Db2 for i アーキテクトのScott Forstie氏からのプレッシャーはありませんが、Forstie氏からは、私たちが取り組むべきことや、顧客から寄せられる機能改善の要望に対して迅速に対応するよう言われています。Forstie氏と私は、非常に緊密に連携を取っています。」
Allan氏および他のCode for IBM i 開発者は、今年に入って、プロジェクト内部の「大きな変更」に乗り出したとAllan氏は述べています。途方もない労力を要しましたが、おかげで、さらなるCode for IBM i 拡張機能の開発に関して、チームはより迅速に動き、より良い仕事を行える態勢を整えることができました。
「拡張機能の開発は、時として、多少、テストにうんざりさせられることがあります。かなり大規模な大掃除を行って、たとえば、テスト自動化機能を加えることができると考えました」とAllan氏は述べます。「私たちが変更を行うか、誰かがプル リクエストを作成すると、それらは自動的に実行されます。開発作業が楽になり、早く終わらせられるようになります。大事なことです。」
そうした開発の苦労は、Code for IBM i テスト拡張機能が登場する年内には、IBM i コミュニティで実を結ぶことになります。このテスト拡張機能により、開発者は、Code for IBM i 内で開発する新たなRPG、COBOL、CL、またはSQLコードをテストするためのテスト スクリプトをより簡単に書けるようになります。
「開発者は、自分で何もコンパイルする必要はありません。テストを書いてボタンをクリックするだけで、開発者に代ってすべての作業を行います。まさに夢のようではないでしょうか」と彼は述べます。
そこに到達するのには多少時間が掛かりましたが、Allan氏は、この拡張機能が、コーディング界隈への初めてのリリースに近づいていることを喜んでいます。
「それは、私が何年も前から行いたかった取り組みでした」と彼は述べます。「数年前に、私はコード カバレッジから始めました。そして、Sanjulaが時間を掛けて完成させてくれて本当に嬉しく思います。もうすぐリリースされるのが本当に楽しみです。」

IBMが 昨年9月にリリースした 新たなMapepireデータベース コネクタや、 間もなくパブリック プレビューが利用可能になる Watsonx Code Assistant(WCA) for IBM i 製品など、時折、IBMの他のプロジェクトにも関わっているAllan氏は、もうひとつの大きなCode for IBM i のアップデートを提供しています。すなわち、表示装置ファイル エディターです。
Allan氏によれば、この取り組みは、SDA(画面設計機能)がADTS(適用業務開発ツール セット)内で動作するようになっているのと同じように、ユーザーがVS Code内で5250画面を作成、保守できるようにする表示装置ファイル エディターを作成することから始まったということです。
IBMは、VS CodeやCode for IBM i が間違いなくその代表であるモダンなツーリングで、モダンなアプリケーションを開発してもらいたいと思っているのは明らかです。しかし、現実には、すべてのIBM i のショップが、開発のやり方や開発する対象を一新する準備ができているわけではありません。そこでIBMは、少しずつ前進するように、VS Code内でグリーンスクリーン アプリケーションを開発する機会を提供しています。
「結局のところ、グリーンスクリーンを保守する必要があるというのが実情です」とAllan氏は述べています。「大企業は全般的に、グリーンスクリーン アプリケーションを稼働しています。そして、彼らの一部は、それらをWebアプリケーションへ移行し、Reactなどで構築するプロセスを進めていますが、私たちは今でもまだそうするよう勧めています。」
「結局のところ、これが限界なのかもしれません」と彼は続けます。「私たちは、彼らが彼らの作業を行えるように必要最小限のことを行うグリーンスクリーン デザイナーを構築するのかもしれませんが、彼らが新しいものを作るよう促すわけではありません。」
最後に重要なこととして、IBMは、Code for IBM i 向けのテクニカル サポート プログラムの開発にも取り組んでいます。オープンソース コミュニティからのサポートだけでは不安なため、ツールの採用に先立って、プロフェッショナルによるサポート プログラムが用意されることを要望するIBM i のショップもあります。この新たなプログラムは、先日、カリフォルニア州アナハイムで開催されたCOMMON POWERUpカンファレンスで発表され、年内には利用できるようになる予定です。
このサポート プログラムは、Allan氏が中心になって取り組んでいるわけではありませんが、この製品の開発全体を主導しているため、Allan氏も関わらないわけではありません。Allan氏も、Code for i に関する最も難しい問題に対応する、レベル3担当のサポート技術者としてサポート対応に当たることになります。しかし、Allan氏がサポート対応の電話に出るのではと期待しても無駄のようです。「レベル3のバグはありませんので」と彼は述べます。