約1か月前、私たちはパートナーエコシステムの重要性について短いブログ記事を投稿し、DevExpressのインタビューも受けました。私たちのパートナーは、RAD Studio開発者が必要としている機能を構築してくれるだけでなく、すばらしいイノベーションを提供ももたらしてくれます。こうしたイノベーションの最前線でめざましい活躍をしているパートナーの1つが、TMS Softwareです。
同社は、VCLとFMXの両方に価値のあるコンポーネントスイートを提供しているだけでなく、最近リリースされたDelphiベースのWeb開発を実現するTMS WEB Coreフレームワークや、VCL、FMX、LCL、WEBで単一コードベースのビジュアル/非ビジュアルコンポーネントを提供するTMS FNCテクノロジーなどにより、新しい機能も提供しています。
TMS Softwareの創業者Bruno Fierens氏からは、長年にわたって多くのことを学ばせてもらっています。そして今回、Fierens氏と、このエコシステムの将来展望について語り合う時間を設けることができました。
あなたはDelphi/Pascal言語の最も熱心な支持者のひとりです。私たちのエコシステムについて、今どのように考えていらっしゃいますか?
もちろん、Object PascalとDelphiが大好きです。この言語は、まだ実現されていない可能性を秘めた最も重要な言語のひとつだと思います。長年にわたり、アップダウンを繰り返してきましたが、最近のコミュニティの開発成果やそのエネルギーにエキサイトしています。Delphiほど習得しやすい言語は他にありませんし、RAD Studioのビジュアルツールは他の多くのツールよりも優れているため、私たちのシステムは開発者に膨大な大きな価値をもたらしてくれます。
比類ない生産性を支えるのは次の4つです。
- RADコンポーネントベースの開発
- 強力に型付けされたオブジェクト指向の言語
- 簡単なデータバインディングへのこだわり
- 最後に忘れてはならないのが、極めて高い言語の後方互換性
もちろん、私たちがどれだけ速く新しい技術をキャッチアップし、プログラミング言語の進化を推進していけるかについて疑問を持つこともあるでしょう。私たちDelphiの開発者はそれほど忍耐強くなく、声高に要求することも多いですが、それは私たちが自分たちがDelphiを使った仕事を愛しているからなのです。いくつかのよい開発成果が得られていますが、さらに多くの可能性があると考えており、コミュニティと積極的に協力して、Delphi開発者により多くの機能を提供していく考えです。
私たちが主として取り組むべき課題は何だと思いますか?
そうですね。私が最も心配しているのは、新しい若い開発者にどのようにしてDelphiを学んでもらい、好きになってもらうかということです。状況は改善されつつあるとは思いますが、まだ十分ではありません。以前は、Delphiのミーティングに参加すると、40代以上の人が大半を占めていたこともありました。私たちより若い人たちを見ると、彼らも面白いことをしていますが、使用している言語はPythonやJavaScriptなどで、私たちは、Delphiで何ができるかをもっと知ってもらうために、あらゆる努力を払う必要があります。これを可能にするには、Free PascalとDelphiの両方のコミュニティ全体の力が必要です。
また、昨年開始したアカデミックプログラム(https://www.tmssoftware.com/site/academic.asp)では、Delphiの学生や教師に無償でコンポーネントを提供しており、この分野での支援や貢献を行っています。さらに今年はWebアカデミープラットフォーム(https://www.tmswebacademy.com)を立ち上げ、誰もがDelphiや当社のツールについて学べる無料のウェブセミナーを開催しました。
どうすればもっとDelphiをアピールできるのでしょうか?
これは100万ドルに値する質問ですね。エンバカデロはマイクロソフトではないので、もちろんリソースは限られます。私たちがメッセージを発信できる主な分野はいくつかあると思います。より戦略的なものもあれば、より戦術的なものもあります。
まず、ショーケースはいいですね。Delphiの26thバースデーで行ったこの試みは大変素晴らしいものでした。もっとたくさんの新しいショーケースを集めて、人々がまだまだDelphiでクールなものをたくさん作っているんだということを確信させてくれました。私たちはDelphiの開発例としてSkypeを挙げてきましたが、それは少し古い情報です。ゲームだけではなく、もっとクールなものもあります。Delphiによって構築された重要なインフラシステムが至るところに存在しており、Delphi以外の代替技術ではパフォーマンス要件要を満たすことができないため、置き換えができないのです。またDelphiは、少人数の開発者で高度なシステムを構築でき、それが巨大企業が構築したソリューションに匹敵するような新しいチームに相当します。まさに、これがDelphiの力なのです。
2つ目は、教育リソースをもっと充実させることです。ウェビナーやビデオを数多く提供していますが、さらに充実させる必要があります。また、さまざまな形式を組み合わせる必要があります。5分間のビデオは素晴らしいものですが、複雑な機能を5分間で学ぶことはできませんし、ましてやそれで実際に開発で使えるようにはなりません。また、「こうすればいい」という単純なコードスニペットでさえ、人々はすぐにGoogleでコードを探して支援を求める傾向があるため、JavaScriptやC#、Pythonと同様に、ググればすぐに答えが見つかるようなコードがたくさん必要なのです。
高齢化した開発者の問題点のひとつは、学習する時間が少なくなっていることです。仕事を終えて帰宅した後、プライベートな時間を削って夜中まで仕事に没頭するような生活はできません。どんな言語でも本当に素晴らしいこと成し遂げるには、多くの知識が必要です。Delphiの良い点は、学べば学んだだけ驚くようなことができ、他の開発者の支援を必要としないことです。
最後のポイントですが、私たちはイノベーションを続けなければならないということです。私はDelphiによるWeb開発の可能性に、高い期待を寄せています。この分野は長い間、ウィークポイントだったからです。もちろん、デスクトップ開発はDelphiの柱ですが、新しいテクノロジーを使用すれば、Delphiの開発者はもっと多くのことができるようになります。TMS WEB Coreでは、非常に少ない学習コストでWebクライアントを構築することができます。これはパズルの重要なピースだと思いますし、コミュニティからの評価にも非常に満足しています。
TMS WEB Coreについて押さえておくべきことは何でしょう?
この製品は、Object Pascal/Delphi向けに構築されています。私のビジョンは、Delphi開発者なら誰でも、デスクトップ開発で利用可能なすべてのパワーとコンポーネントを活用した素晴らしい機能的なWebアプリケーションを、Delphiコードだけで構築できるようにすることです。TMS WEB Coreはオープンに作られており、様々なJavaScriptフレームワークを組み込んで、必要とするコンポーネントを作成することもできます。最近ではExtJSと統合しましたが、これはとてもうまく機能しています。非常に柔軟で、進化させるのも簡単です。同時に、平均的なソフトウェア開発者よりもグラフィックスキルの高いクリエイターによって作られた既存のHTML/CSSテンプレートを使用することもでき、このコンビネーションによって見事な外観のユーザーインターフェイスを実現しています。RAD Studio内でTMS WEB Coreを使用するには、多少の学習は必要ですが、VCLやFMXプロジェクトでアプリケーション開発を経験されている方であれば、それほど違和感なく利用できると思います。
留意すべき重要な点は、Webアーキテクチャの理解が必要なことです。多くのDelphi開発者が、多層アプリケーションの構造や仕組みについてあまり詳しくないことには、しばしば驚かされます。率直に言って、これはFMXに由来する問題でもあります。FMXであっても、開発者は複数のOSやSDK、ネイティブと非ネイティブの動作などについて知る必要があるのです。Windowsと大差はありませんが、十分に違うと思います。Webアプリケーションでは、直感的に理解できない別の考慮事項があります。私たちは、どうすればこの問題を改善できるかを常に考えています。先ほどの教育の話の中でも、このことについて触れています。私たちはもっと教育に力を入れる必要があります。
この話を聞いていると、私たちが共同で行っているもうひとつの取り組み「ローコードウィザード」を想起します。このアイデアは、RAD Studioがビジュアル開発のパイオニアであり、現在爆発的なブームとなっているローコードの中核技術であるという考えからスタートしています。私たちには、開発者がアプリやコンポーネントの開発を始めたり、より速く作成できるようにサポートする「ウィザード」を用意することで、今日の活動をさらに発展させる機会が得られます。それについてはどうお考えですか?
これは興味深く、面白いアイデアですね。もちろん、RAD Studio自体にも多くのドラッグ&ドロップ機能があります。コンポーネントベースのアーキテクチャが、ローコードで提供すべきことの多くを実現していることを忘れてはいけません。洗練されたコンポーネントは、目的の機能を実現するためにアプリケーションレベルのコードをほとんど追加することなく、視覚的な構成を提供することができます。個人的には、スタートアップ・ウィザードは便利だと思いますが、もっと便利なのは、アドオン機能を構築するためのウィザードで、新規ユーザーだけでなく、経験豊富な開発者にも役立つものです。
例えば、グリッド機能を開発者が数回クリックするだけで設定し、「正しい方法」でデプロイできるような機能を開発しています。こういったアイデアは、より多くの新規開発者を獲得するのにも役立つはずなので、期待しています。
最後にメッセージをお願いします。
私の唯一の望みは、私たちが共にObject PascalとDelphiを将来に向けて前進させ、より成功させることです。Pythonへのブリッジ、新しいWeb開発、より多くのオープンソースコラボレーションなど、多くの選択肢があります。私たち全員が正しい判断を下し、お客様を成功に導くことを願っています。多くの人々が私たちの仕事に信頼を寄せ、頼りにしています。私たちは日々、その信頼に応え続けなければなりません。