Launchableからこんにちは

f:id:kkawa:20190719011048j:plain

2020年は僕にとって転機の年になります。というのも、今月末でJenkinsプロジェクトからは一歩退き、CloudBeesでは顧問に退き、そして新しい会社Launchableを始めるからです。

思えばJenkinsは色々な人のおかげで言い出しっぺの僕の予想を遥かに超えた大掛かりなプロジェクトに成長しました。本当に子供の成長を見るような思いです。だから、いつからか、僕としては後をどうやって引き継ぐかを考えるようになりました。今日、コミュニティとCloudBeesのおかげで、新しいボードメンバー達であったりJenkins Xであったり、コミュニティに新しいリーダーが育っています。なので、安心して彼らに今後を託す事が出来ます。実際の所、2019年中から徐々にプロジェクトから手を引き始めて色々な事を色々な人に任せてきたので、この発表で何かが突然大きく変わるということはありません。引き続きJenkinsをよろしくお願いします。

同じ事はCloudBeesについても言えます。CTOとして10年近く事業の拡大にそれなりに貢献できたと思いますが、今日、CloudBeesは今だかつてない規模になり、Jenkins以外にも色々な手を広げています。僕がここでこの舟を降りても、後の心配はないと安心できるようになったのが、今回違う事をしようと決めた動機の一つです。今後ともCloudBeesをよろしくお願いします。

 

さて、じゃあ、次に何をするのか。僕は、ソフトウェア開発を職人の勘によらない、もっとデータに基づいた合理的なものにしたいと思っています。Jenkinsの世界への貢献の一つは、自動化をあちこちで推し進めたことだと思います。この自動化によって、様々なデータが日々大量に生成されているのに、このほとんどは開発プロセスの改善に活かされることなく、無駄にうち捨てられています。なんと勿体ない。CloudBeesでの10年で、僕は営業やマーケティングが如何にデータを活用しているかを直接目にしてきました。それに比べると、ソフトウェア開発のやり方は依然として勘と経験則に基づいているのがほとんどです。

その第一弾として、僕はテストに着目しています。ソフトウェアの規模が大型化するにつれ、自動テストは一層大掛かりで時間を食うものになっています。結合テストを想像してみてください。何千何万のテストが書かれ、コンポーネントが変化するたびに結合テストが再実行されます。何時間、何日も掛かるのがザラです。でも、考えてみると、本当にそれらテストの全てが有意義でしょうか?

Launchableでは、過去のテストの実行履歴と機械学習の力で、「今回このような変更が加わったからこのテストが有意義だ」という予測を立てます。一日一度5時間の結合テストを走らせる代わりに、Launchableに80%の信頼度を与える10%のサブセットを選ばせれば、30分毎に結合テストを走らせて、翌日ではなく30分後にリグレッションを検出することができます。この時間の差は開発者に大きな安心と速度をもたらします。

もし、興味を持ってもらえたら、TwitterFacebookLinekdInメーリングリストなどで今後の続報にご期待ください。

 

今回、会社を興し、資金を集め、組織を作り、色々と格闘する中で、今までの20年、シリコンバレーで蓄えた経験やネットワークがフル稼働しています。そして、こういった経験をするにつれ、日本のソフトウェア開発と欧米のソフトウェア開発の間に橋を架けたい、そういう思いも強めています。2019年からはSHIFTさんの技術顧問を務めさせていただいています。今年は何が出来るか。2020年は面白い年になりそうです。