「エンドユーザー自らシステムを構築する時代」を卓越したJS技術で現実化するマッシュマトリックスのクラウドサービス
価値を生む開発に集中しつづける現場インタビュー【第4回】
JavaScriptのスペシャリストとして、ノンプログラミングでアプリケーションを作成するためのフロントエンドエンジン(2007年度の「IPA 未踏事業」に採択)などを開発してきた冨田慎一氏。「業務に合わせてエンドユーザー自身が構築できる」という理想のシステムを提供するため、2008年マッシュマトリックス社を設立してJavaScriptの腕を振るい続けている。本稿では、冨田氏がその理想に考え至った経緯や現実とのギャップ、クラウドサービスの将来像などを聞いた。
本記事の目次 (→シリーズの特集ページ)
1か月で数万ダウンロードのエンタープライズ向けnpmパッケージを開発
――未踏事業で採択されたのはどんなプロジェクトだったんですか?
冨田:「今後、エンドユーザーが業務アプリケーションを自ら作る時代が来るだろう」という、僕が当時抱いていたイメージを実現するためのソフトウェア開発です。未踏事業の採択前、僕は日本オラクルでアプリケーションサーバーを販売していたのですが、セットアップや運用中の保守作業などとにかく面倒が多い。エンドユーザーがアプリケーションを作るには、もっと簡単ですぐ使える環境が必要だと感じていました。
考えて出た結論は「WebブラウザでJavaScript」という環境。けれども、エンドユーザーがJavaScriptを使ってアプリケーションを書くのはやはり敷居が高い。そこで、「データなどをこういうふうに取得したら、こう動く」という動作をブロックの組み合わせや宣言的な指示で実行できるJavaScript製のエンジンの開発を始めました。それが、未踏事業のPM(プロジェクトマネージャ)をされていたサイボウズ・ラボの畑慎也さんの目にとまり2007年度の未踏事業に採択されました。
――Ajaxが盛り上がっていたころですね。
冨田:ええ。実は、未踏事業でプロジェクトをやっていた時期は日本オラクルを出て、セールスフォース・ドットコム(以下、セールスフォース)に在籍していたのですが、転職した理由の1つは、セールスフォースがAjaxの仕組みを利用した開発ツール「AJAX Toolkit」をリリースしていたからです。そのころ、エンタープライズアプリケーションをJavaScriptのツールキットでカスタマイズできる製品は、他にありませんでした。SalesforceはSOAP APIでアクセスできるようになっていて、JavaScriptでUI(ユーザーインターフェイス)を作れば何でもできてしまう。開発ツールの一部なのですごいと思っている人は少なかったのですが、僕の目には魅力的に映りましたね。
また、Salesforceのことを「SaaSでCRM(顧客関係管理)を行う箱」だと思っていたんですが、実際には「用途はほぼ無限なデータベース」で、しかも、クラウド上にあるからセットアップも不要です。今ではセールスフォースが当然のように言っていることですが、当時はかなり革新的だと感じました。これもセールスフォースに移った理由の1つです。
ただ、セールスフォースは「Visualforce」というもっとリッチな開発ツールに軸足を移していて、AJAX Toolkitは広げていかないようです。それでというわけではありませんが、「JSforce」という、AJAX Toolkitの後継に当たるライブラリをOSS(オープンソースソフトウェア)として開発しています。JavaScriptでSalesforceのAPIを呼び出せる点はAJAX Toolkitと同じですが、Webブラウザ以外でも使える点が異なります。最近はNode.jsなど、JavaScriptをサーバーサイドで動かすシーンが多くなってきたので、Webブラウザとサーバーサイドのどちらでも動くものにしました。
――JSforceの配布はどこで?
冨田:GitHubでやってます。GitHubのページを使って宣伝サイトも作成しました。プルリクエストも結構届きますし、何個もたまっていますが時々イシューにコメントを返しています。GitHubがなければJSforceの公開はできなかったでしょうね。
JSforceは、まあまあ使ってもらえているという認識でいます。「npm」というNode.jsのパッケージ(npm)を配布するサイトの中の人が、セールスフォース・ドットコムの開発者ブログへ2014年に投稿した記事には、JSforceが1か月で3000以上ダウンロードされたとありましたが、現在は1か月に2〜3万ダウンロードに達しています。
――利用者数は海外のほうが多いですか?
冨田:はい。日本国内での採用もありますが、まだ比較的少数です。そもそも、JavaScriptを使ってSalesforceアプリケーションを開発している人、特に製品レベルでやってる人は少ないのではないでしょうか。海外では、JSforceを製品に組み込んで使っているといった話をよく聞きます。一番メジャーなところでは「MavensMate」というプロダクトがあります。Sublime TextやAtomといったテキストエディタのプラグインで、SalesforceのForce.com[1]に接続可能にし、エディタをForce.com向けIDE(統合開発環境)にするんです。Salesforce開発者の間ではMavensMateを使うのが、最近デファクトスタンダードになってきています。
注
[1]: セールスフォースが提供するWebアプリケーションプラットフォーム。開発者がサーバーやミドルウェアなどの環境構築を行う必要がなく、ブラウザ上で画面やデータベース、ワークフローなどを定義(あるいはそのソースコードをアップロード)すればアプリケーションが動作するため、インフラの構築・運用の手間がかからない。
Force.comは「無料」で試せます!
簡単なご登録ですぐにさわってみることができます。ご興味のある方はForce.comの下記ページから。
この記事は参考になりましたか?
- 価値を生む開発に集中しつづける現場インタビュー連載記事一覧
-
- チャットを通じた接客、やさしく丁寧に応対するのは機械学習したコンピュータ! 空色の一歩先行...
- 25名で550社・7万ユーザーの業務アプリを開発・サポートするチームスピリットのCI環境と...
- 「エンドユーザー自らシステムを構築する時代」を卓越したJS技術で現実化するマッシュマトリッ...
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営する開発者のための情報メディアです。日々の開発に取り組むエンジニアやテクノロジーを学びたい方に向けて、プログラミングやAI活用、開発ツール、エンジニアの学びとキャリアに関する記事をお届けしています。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社
この記事は参考になりましたか?
この記事をシェア

本記事の目次
Force.comは「無料」で試せます!