ASobi/Bar 400|ベンダー・リスク視点から見るIBM i のオープンソース活用(下野皓平)

 

長期的な IBM i 活用をテーマとする本ブログでは、IBM i というプラットフォームについてベンダー・リスクの観点から考えてきました。今回は同じ視点から、IBM i の上で動かすオープンソースについて書いてみます。

私は今、IBM i × オープンソースを得意領域とする会社の一員ですし、前職でもお客様に発信するメッセージが何かとオープンソース推しの会社に在籍していたこともあるので、多少ポジション・トーク気味になるかもしれませんが、できる限り客観的に書いてみたいと思います。

皆様ご存じのとおり、IBM i でPHPを中心にPythonなど多くのオープンソースが稼働し、既存のRPGやCOBOLプログラムとの連携もしやすいことから、ここ10年ほどでIBM i ユーザーではオープンソースは当たり前に使われるようになりました。

IBM i 上でオープンソース言語を活用するメリットとしては、以下の点がよく指摘されています。

(1)情報収集がしやすい・スキルの修得がしやすい
(2)外部のライブラリーを活用しやすく、開発生産性が高い
(3)開発者の採用・開発委託がしやすい

こういった点が主にユーザー・メリットとして評価され、実際に多くの企業がPHPを中心にオープンソースを活用しています。非営利団体としてIBM i のお客様のオープンソース活用を推進してきた、「オープンソース協議会 – IBM i」の取り組みなどもあり、日本では多くのお客様が利用されています。

IBM i の世界では、今はまだまだオンプレミスが主流のため、すべてIBM i で、つまりオールインワンで稼働することが重視される面もあります。しかし、今後IBM i もクラウドが主流になると、他のプラットフォームへの移植容易性といった点も一層評価されるようになるでしょう。

こうしていろいろとオープンソースが評価される理由はあるのですが、今回の投稿では、これ以外に私が最も感じているオープンソースの価値について書いてみたいと思います。

それは、ベンダー間で競争原理が働きやすい、その結果、ユーザー視点でさまざまな代替案を準備しやすい、ということです。

 

IBM i 上のオープンソース稼働環境

オープンソースという言葉は人によって定義もさまざまなので、本稿での定義を一度書いておくと、「言語仕様が特定のベンダーではなく、ユーザー・コミュニティによって主導的に作成されたプログラム言語やツール群」となります。

IBM i でのオープンソース言語活用の歴史を振り返ると、1つ目の大きなタイミングとしては、2000年代にPHPの稼働環境がZend社によって提供されました。

そして最近では、PHP以外のオープンソース言語であるNode.js、Python、Git、Orion、NginxなどがIBM i のライセンス・プログラム(5733-OPS)によって提供されていましたが、2019年にIBM i 7.4が出たタイミングで5733-OPSは廃止され、それまで5733-OPSで提供されていたものはyumで入手する形態となりました。

yumとは導入したソフトウェア・パッケージの管理ツールで、ACSの一機能として使うこともできます。

 

ここでポイントなのは、PHPだけが他のオープンソースとは少し違う形態で提供されてきたということですが、そんなPHPも2020年を境に1つの大きな変化がありました。それは、IBM社Zend社から発表されたZend Server Basicの提供終了に伴う一連の出来事です。

IBM社とZend社の発表は、これまでZend Server Basicを無償で利用することを前提に考えていた企業にとっては、各種検討を迫られるものでした。しかし、しばらくしてからSeiden社や(株)中部システムによって、Community Plus+CS^2という稼働環境がリリースされました。

実はCommunity Plus+やCS^2の前から、すでにCommunity PHPという環境もyumで取得できるようになっていました。IBM i ユーザーの多くが利用していたdb2_connectが利用できないなどの制約がありましたが、これらを解決したものでした。

比較的新しいバージョンのPHPのみである点、稼働環境のインストール作業が発生する点など、当然考慮すべき点はありますが、これまでのアプリケーション構築に比較すると圧倒的に軽微な工数で、既存のアプリケーションが稼働し続ける環境がリリースされたことを意味し、ユーザーにとっての選択肢は増えたわけです。

 

ベンダー・リスクの視点から見るオープンソースの強さ

これが特定のベンダーが提供するプログラム言語の場合だと、どうでしょうか。その稼働環境に対して提供方法が変わった場合、他の選択肢が出てくることはまず考えられないでしょう。

海外のベンダーでは、M&Aなど提供元の経営環境やプロダクト提供ポリシーが変化することは珍しくなくなっています。どのようなテクノロジーも、長期提供のリスクをある程度読み込んだ上で採用する必要があります。

今回の一連の動きは、技術採用時に踏まえるべき「ベンダー・リスク」という観点で、オープンソース言語の強さが結果として現れたのでないかと思っています。

Community Plus+やCS^2によって、PHP稼働環境の選択肢は大きく広がりました。そして、Zend社からあらためて(PHPのバージョンの制約などはありますが)、無償で利用し続けていく環境がリリースされました。

オープンソースは世界中の優れたプログラマーの善意に支えられ、進化し続けている側面と合わせて、特定のベンダーによる独占的ではない、まさに自由競争が可能な環境だからこそ、こうした切磋琢磨が発生するという側面も重要です。

「オープンソースだから何でもいい」というわけではなく、長期利用を考えた際の技術選定のポイントはさまざまあります。ただ大前提として、ユーザーにとって選択肢が多いこと、そして選択肢を提供する企業が切磋琢磨しあうことはとても大事なことです。

2020年代に入り、デジタル化のニーズも一層高まる中、RPGやCOBOLができないこと、不向きなことを実現していくために、オープンソースを含めてどういう言語を使っていくべきかを検討される際は、少しでも参考にしていただけると幸いです。

 


ASobi/Bar 400 管理人ブログ

第1回 2030年のIBM iユーザーのあなたへ
第2回 「IBM iはこれからも大丈夫?」への答え方
第3回 IBMの分社化。IBM i は?