オープンソースのビルドシステムGradleが商用部門の拡大のために$4.2Mを調達

shutterstock_172084607

今や誰もが知っているように、どの企業もソフトウェア企業だ。どんな会社も一部(ときにはすべて)のソフトウェアを内製せざるをえないから、それをビルドし実行ファイルを作るまでの面倒な過程と、その管理という課題を抱え込む。それを助けてくれるのが、オープンソースのツールGradleだ。同社は今日(米国時間12/10)、その商用サービスを拡張するための資金として420万ドルを調達した。

このラウンドは、True VenturesとData Collective(DCVC)両社が共同でリードした。CEOのHans Dockterによると、これは同社の初めての外部資金調達で、これまではほそぼそと自己資金だけでやってきた。

Gradleは今では数百万のデベロッパが使っているし、Netflix, LinkedIn, Siemens, Google Androidなどなどの有名大企業も採用している。オープンソースのプロジェクトとしては、大成功の部類だ。

このツールの魅力は、ソフトウェアのビルドという複雑な工程の管理、というリアルな問題を解決してくれるところにある。たとえば、あるデベロッパチームがあるプロジェクトを手がけているが、それのビルドのためにはほかの複数のグループとの調整(コーディネーション)が必要だ。しかしそういうコーディネーションを手作業でやることは不可能。たとえばある一人のプログラマがあるライブラリの最新アップデートをダウンロードしてプロジェクトのソースコードを更新した。そんな小さな変化が、コードベース全体に対して負のドミノ効果を雪崩(なだれ)のように及ぼすことがありえる。事前事後の正しいコーディネーションがなかったなら…。

Gradleはこの種の調整過程を自動化し、依存性のチェックや、プログラマがコードを壊しそうなことをしたときの警告などを行う。いわばそれは、ビルド過程全体を通じて継続的に行われる品質管理チェックだ。それをツールがなくて人間の目と手だけでやるのは、ほぼ不可能である。

ChefやPuppetに似ていなくもないが、でも彼らがやるのは仮想マシンを正しいリソースで立ち上げること、の自動化だ。Gradleはハードウェアとは無縁で、もっぱらビルドの整合性を最初から最後までチェックし管理する。実行ファイルが完成したとき、どこにも依存性のほころびが残っていないように。

こういう自動化ツールがあれば言うまでもなく納期は早まり、また、ビルドをもっと頻繁に行える。最近のユーザは最新アップデートを、数日後ではなく‘大至急’欲しいと思っているから、ビルドのコンスタントな継続性はきわめて重要だ。

その好例が、Androidだ。Androidには、ビルドのタイプがさまざまに異なる、という問題(プラットホームの分裂)がある。しかし機種ごとの細かい違いにデベロッパが手作業で正しく対応しようとすると、混乱と不安を招くのみだ。

この状況をDockterは次のように説明する: “機種ごとの細かい違いにデベロッパが正しく対応することがあまりにも困難であるだけでなく、そもそも各機種やSDK等の…アプリのビルドに影響する…違いを漏れなく網羅的に知っていること自体が、もはや人間技(わざ)ではない。そこで、うちのような次世代型のビルドツールが、その複雑な仕事を引き受けるのだ”。

今もっぱらオンプレミスで使われているGradleは、いずれSaaSになり、今のGradleの依存性チェック機能をデベロッパに提供するだけでなく、オンプレミスでで動いているGradleのインスタンスに対するチェックも行う。そこから得られた情報により、デベロッパにより具体的なフィードバックを提供できる。

Gradleは昨年、ドイツのベルリンからベイエリアに移転し、同社の商用部門を作り上げた。今の社員数は35名だが、来年は少なくともその倍にしたい、と考えている。これまでにGradleをダウンロードしたデベロッパは累計で約1000万、有料のサポートやサービスに登録しているユーザは約100社ある。来年は、この有料ユーザを増やすことに注力していく。

また、SaaSのGradle.comも、いずれは商用バージョンを提供する。もちろん、FOSS/FLOSSバージョンも残しつつだ。

[原文へ]。
(翻訳:iwatani(a.k.a. hiwa)。