IBMのオープンソースへの取り組みはもっと知られるべき
及川 マイクロソフトも以前は開発者と距離のある会社だったと思います。しかしCEOがスティーブ・バルマーからサティア・ナデラに変わり、オープンソースにコミットするなど、今ではだいぶ様変わりしました。以前にも増してデベロッパーフレンドリーな会社となりました。IBMも同じような道を歩んでいる気がします。
大西 マイクロソフトは変革に10数年かかりましたが、IBMはその期間をもう少し短縮できると考えています。というのも一部のギークにしか知られていませんが、IBMは昔からオープンソースにコミットしているんですよ。
及川 例えばIBM CloudはOpenStackをベースにしているなど、ありとあらゆるところにオープンソースを使っているんですよね。オープンソースを使っていることによるメリットが外にはあまり理解されにくいように思います。
例えば、IBM CloudのPaaSのベースはCloud Foundryですが、Cloud Foundryを使っているという良さが訴求し切れていないじゃないかと。パブリッククラウドを使わず、自社でインフラを構築している大手IT企業は一杯ある。楽天やヤフーなどもその一例です。彼らは社内でCloud Foundryを使っており、そのツールをGitHubで公開しています。例えばそういう企業と共に、Cloud Foundryコミュニティを盛り上げると、IBM Cloudの認知も高まり、IBMがオープンソースにコミットしていることも開発者に伝わると思うんです。やっているかもしれないんですが、あまり聞こえてこないですね。
大西 IBMにはオープンソースにコミットしているチームがあり、彼らも貢献しているのですが、なかなかその情報が届いていないんですよね。そこで私たちのチームが開発者の中に溶け込んで行き、壁を壊していきたい。今はまさにその転換期だと思っています。
働き方の変化によって気づいた開発の知見
及川 Increments時代は今のフリーランスの時と似たように自由な働き方をしていたので、変わらないのですが、その前々職や前職であるマイクロソフトやGoogle時代と比べると、変わりましたね。
マイクロソフトやGoogleは組織が大きいので、自分たちで一からほぼすべてのサービスや仕組みを作っていけます。しかし、そこまで体力のないスタートアップは、自分たちのコアとなるサービスや製品以外はありもののサービスを組み合わせる方が現実的です。つまり、自前主義ではなく、自分が本当にこだわって作るべきところと、すでにあるサービスを見つけてさっさと作る部分の切り分けをすることが求められるんです。そこで、SaaSなど、使えるものはどんどん活用していくということが必要となります。自分のフリーランスとしての活動でも、さまざまなサービスを活用するようになりましたね。
大西 私は1年前に品川区から静岡市に移住して新幹線通勤を始めました。このような働き方をすることで、時間の使い方が大きく変わりましたね。1日の始まりに段取りを考えるのですが、時間という制約ができました。制約があると、今まで見えなかったものが見えてくるんです。山ほどサービスがあって何を使ってよいかわからない人も多いと思うのですが、使う側の人に制約があると、使うべきサービスが見えてくるのと同じだと思います。
及川 Googleの元副社長だったマリッサ・メイヤーも「Creativity loves Constraints(創造性は制約を好む)」と言っていますからね。私はこの言葉が好きです。
大西 何をやりたいのか、そしてそれを実現する方法を見つける方が生産的なのに、多くの日本の開発者はAWS、Microsoft Azure、Google Cloud Platform(GCP)、IBM Cloudを比較することから始めてしまうんです。クラウドはまず使ってみることだと思うんです。使うと結果が出ますからね。
及川 そこは同意ですね。どのインフラを使うかなど、気にしなくてもいいと思います。私がスタートアップのエンジニアに聞かれたときには次のようにアドバイスをしています。「そのアイデアは3か月後にはゴミになっているかもしれない。だから今、技術選定に必要以上にコストをかけるのは意味がない。もしスケールして今の技術ではダメであれば、作り直せば良い」と。
そしてもう一つが自前主義にこだわるなということ。PaaSやBaaSなど、ありもので楽できるところはどんどん使うことを勧めています。最初から当たることを考える必要はないんです。当たるものを育てていけばよいですし、アクセルを踏める段階になったら、改めて自分たちのサービスに適している技術は何かと見直してみればよいのです。技術的負債となってしまわないようにするタイミングは難しいですが、割り切りは必要だと思います。
こだわらなくて良いとは言いましたが、ユーザーからフィードバックをもらえる仕組みを作ることは必要です。現在のパブリッククラウドはそのような仕組みを持っています。