London Tech Talkの回とSakaoさんの登場

今回のLondon Tech Talkの回として、素敵なゲスト、Sakaoさんに来ていただきます。
Sakaoさん、よろしくお願いします。

よろしくお願いします。

Sakaoさんと私が出会ったきっかけなんですけど、
7年前、ベルリンに来る直前に私がフリーランスとして働いていた会社で、一緒のチームでエンジニアとしてSakaoさんと働いていて、
本当に7年ぶりに直接話すっていう感じですね。
めっちゃ懐かしいですね。
Sakaoさんと7年ぶりに話したいっていうのもあったんですけど、
Twitterではゆるくつながってて、プラットフォーム関係、インフラっぽいことをやってるんで、
他のKenさんとか、他のもう一人今日はお休みなんですけど、Asaiさんとかはインフラ、SREやってるんで、
結構領域も似てて、2人話が合うのかなっていうのもあったので、お呼びしました。

ありがたいですね。
Sakaoさんの自己紹介

Sakaoさんでは自己紹介軽くお願いしていいですか。

初めまして、ZLabという会社でソフトウェアエンジニアをやっております。
Sakaoと申します。
ZLabという会社では、KaaS、Kubernetes Azure Serviceの略なんですけど、
Kubernetesクラスターを作成管理を行うマネージドシステムですね。
とか、ZLabのアプリケーションプラットフォームっていう、コンテナを簡単にデプロイできるシステムを、

Line Yahoo!社に対して提供しています。
自己紹介ということで、好きなこととかですね。
最近はクラフトビールにハマってて、よく飲んでいるのと、
あとC社が好きで、たまに行ってます。
OSS開発をしてて、いろんなプロジェクトをZLabに公開したりしております。
KaaSさんとは、私が新卒で入った会社で、同じチームで働いていた繋がりになってます。
僕にとって先輩エンジニアでしたので、結構教えていることも多くあったので、
今日またこうやってお話できるのは、すごい感慨深いなというふうに思っています。
どうぞよろしくお願いいたします。
よろしくお願いします。

いやー、めっちゃ久しぶりですね、本当に。

これ、始まる前にも話したんですけど。
もうちょっと話してから、

もうちょっとポッドキャスト代わりに話したりしたいですよね。
そうですね。
話したいことがもう積もり積もってるじゃないですか。
7年ぶりなんでね。

そうですね。

Twitter、今のXですけど、緩くは繋がってるんでて、
あんまりしゃべることもないですよね、Twitter。
本当に緩く繋がってて。
本当にそうですね、全然。

リプとか飛ばし合わないし。
そうですね。
だから、久しぶりですよね。

はい、久しぶりですね。
ビールとOSSの話

あの、Xのリンクを教えてもらって僕見てたら、

なんかめちゃくちゃビール好きなんですね。
なんか美味しそうなビールの写真がたくさん流れてて。
そうなんですよ、はい。

クラフトビール好き、最近ハマってて、
1年前くらいからですね、ちょっとよく飲み始めて。
で、ちょっと体調崩し気味になってきたんで、
最近はジムに通って、プラマイゼロかなって思ってます。
飲むためにね。

飲むためにビールを。
クラフトビールって結構あの、缶のラベルとかも綺麗だったりするし、
香りがいいやつとかもあるんですよね。
そうなんですよね、そうなんですよね。

特にその、まあ僕はそればっか飲んでるんですけど、
ヘイジーアイピエーっていう濁っているやつですね。
なんかそれがすごい味が濃くて、
まあ香りもすごくフルーティーで、
まあ好んで飲んでますね、はい。
これビールと言えばドイツですけど、

ドイツっていうのはクラフトビールあんまり有名じゃないですかね。
王道のあのジャーマンビールみたいな感じですか。

そうですね、クラフトビールもこっち流行ってますよ。

すごいですね。

イギリスだと、なんかブリュードックっていう有名なブランドが至るところにあるんですけど。

そうなんですね。
ブリュードックおいしいですね。

日本でも飲めるんですか?

全然ありますよ。
なんかうちの近所の、もうすぐそこのコンビニにも売ってますね。
コンビニに置いてるところはさすがにちょっと珍しいかもしれないんですけど、
まあよく見かけますね、ブリュードックは。

なるほど。
なんかパンクIPAみたいな感じでこっちでは呼ばれてたりして。
おいしいですよね。

おいしいですね。

結構缶が多いんですか?缶のIPAっていう。

そうですね。

もちろん瓶もあるんですけど、
なんか知らんけど缶多いですよね。
そうなんですね。
全然知識がないんで、なんか多いけどってなってるけど。
なんかね、まあそうですね。
結構その缶もでかい缶で、
なんだろう、ラベルが綺麗というか、結構そのジャケットに合ってるところが多い気がするんで、
まあそういう意味でも缶って使い勝手が良かったりするかもしれないですね。

なるほどですね。

みたいな雰囲気で思いました。

この写真見てるんですけど、ビールグラスも素敵ですね、これ。

そうなんです。

カラフルなやつとシンプルなやつとなんか。

めっちゃ見てくれてるじゃないですか、ありがとう。
カラフルなやつはあれなんですよね、
オランダに行った時に買いまして、
ちょっと思い出にビールグラス買おうと思ってオランダで買いましたね。
ただ日本で楽天で売ってましたね。
買えるじゃんって。

まあね、並行輸入品とかたくさんあるからね。

なるほど。

いやすいません、ちょっと7年ぶりなのに僕がビールの話にすっこんじゃって。
いやいやいや。
たずさん好きな話、いいですよ。

いやいや、これも結構なんか、
坂本さん結構そういうクラフトビールとか好きなんだっていうのなんか、
その、そう、当時は喋らなかった内容とかも結構あるんで、
なんかこれも知っていく感じでめっちゃ良いと思います。
はい。
アムステルダムってあれですよね、クーベコンですよね、去年。

あ、そうですそうです。
去年のクーベコンがアムステルダムであって、
ちょっと会社で行かせてもらったんで、
そこで買ったって感じですね。

なるほどですね。
で、今年も行くと。

そうですね、今年もちょっと機会に恵まれたんで、
来週からですね、ちょっと旅行にも兼ねちゃって行ってきます。

いいですね。

いいな。

日本からヨーロッパ、いいな。
はい、そうですね、なんか、
Kubernetesもなんかプロのような感じで聞いてるような感じなんですけど、
好きですよね、坂本さん。

あ、まあそうですね、プロかどうかで言うと全然プロではないですけど。
依頼じゃこの仕事できなそうですから。

そうですね、はい。

まあ、はい、Kubernetesを触ることは、はい、
もちろんそうですね、毎日Kubernetesを触って、
なんかいろいろ開発したりとか、検証したりとかですね、
いろいろしてますね、はい。

今日、僕めちゃくちゃ楽しみにしてたのが、
坂本さんはカズさんのお知り合いということだったんで、
どんな方か教えてもらったときにGitHubのリンクを教えてもらったんですね。
で、こうつらつらーって見てたら、
なんか僕使ったことあるツール載ってるぞって思って、
これ発音合ってるかどうか、Biddyっていうのがね。
あ、はいはいはい、Biddyですね、合ってます、合ってます。

これ前の会社で使ってたんですよね、普通に。

ま、まじですか、めちゃくちゃ嬉しいです。
作者みたいな感じで、コンティビューターの履歴見たら、
あ、作者だみたいな。
Biddyの作者だったのかみたいな。
めっちゃこう興奮して、今日実は収録臨んでるんですよね。

あ、すごい。

Kubernetes使ってるSREだったら知らない人いないんじゃないですかね。
あ、まじですか、めちゃくちゃ嬉しいっすね。

なんか今の会社はすごい社内ウェブUIツールみたいなのが充実しちゃってて、

CLIから離れちゃったんですけど、
前の会社は割とそのターミナル経由で操作することが多かったんで、
ちょっとOSSの話も聞けるのすごい楽しみにしてます。
あ、そうですね、はい。
そう、なんか坂尾さんというと結構OSSのイメージがあって、

2つピックアップしたんですけど、
TudoistのコマンドラインツールとBiddy、
そうですね、なんか、わあ、めちゃくちゃ嬉しいですね。
TudoistのコマンドラインツールとBiddy、
そうですね、なんか、わあ、めっちゃいいツール作ってるじゃんと思ってですね。
ここら辺、そう、
オープンソースのこのコマンドラインツール作るのにGoもやってて、
で、Goって結構Kubernetesとかと結構絡み合ってて、
なんかそこら辺の、その、前見た時はなんかTwitterかなんかで、
もうRubyのレールに乗るのはやめようかなみたいなツイートを見て、
で、Goにスイッチしてるのを見たんで、
なんかGoの魅力とか聞けたらなと思うんですけど。
はいはいはい。

あ、そうっすね。
やっぱGoは、なんか、自分がもちろん思ってることでは、
やっぱシンプルであるみたいなのがいいかなっていうふうに思ってて、
言語仕様は軽くって、なんか取得がやっぱしやすいなって思うんですよね。
エコシステム、パッケージ管理とか、Goのフォーマターとか、
アーティスト実行とか、揃ってるなっていうのが、
Goがやっぱ一番いいっていうか、いいなって思ってるところですかね。
で、そうっすね。
特に標準ライブラリが充実してるのがすごい好きで、
結構標準ライブラリのみで実用的なものが簡単に作れるっていうのがいいんですよね。
なんかライブラリの選定って結構迷うじゃないですか。
そこがちょっと少ないっていうのが、
自分がやりたいことにちゃんとフォーカスして、
それを達成できるっていうのが好きなところかなっていうふうに思いますね。

めっちゃわかる。

私も少し書いたことあるんですけど、
そうですね、結構簡単。
ペララッと書けるところを軽く書けるのが本当にいいなと思います。

そこはすごい好きですね。
最近はちょっとラストとか勉強したりとか全然してるんですけど、
GoはGoでやっぱいい言語だなって思いますね。
ラストって結構難しいからGoに逃げたくなっちゃうっていうか。
わかります。

ラスト全色で私も少し書いたんですけど、
めっちゃコンパイラーに怒られて、
コンパイル通すのに結構苦労したりとかってしてるんですよね。
だからラストのハマりポイントってわかりますね。

エンジニアは大抵コンパイラーに怒られるか、

リンターに怒られるか、ちゃんとGPTに教えてもらうかなんで。
人間に怒られないだけは。
ライブラリーの選定とかめちゃくちゃわかりますよ。
GitHubのプレディックとかで無用な議論をしたくないので。
そうなんですよね。
めんどくさいんですよね。

よく自転車の置き場論みたいな感じで言われちゃいますけど、
本当そういう無駄な議論じゃなくて、
建設的にどういう機能を作るべきとか、
そういうのをやっぱり考えたいですよね。
めちゃくちゃわかる。
うちの会社でもよく変な議論を始めると、
それバイクシェットだね、

それバイクシェットだね、
自転車置き場理論だね、
自転車置き場理論だね、
みたいなこと言われるんで。
わかりますね。

そのGoにちなんだところなんですけど、
坂尾さんが作っていらっしゃるオープンソース

コマンドラインツール作るの簡単じゃないですか。
そこから、
坂尾さんが作っていらっしゃる2つのオープンソース。
他にも作っていらっしゃるんですけど、

この2つって、

ToDoListをコマンドラインから使えるようにするとか、
めっちゃいいですよね。

結構コマンドラインに、

前から結構こだわってる、
坂尾さんこだわってるところがあったんで、

そこら辺。

エンジニアとしてわかります。
なんでもコマンドラインからやりたいみたいな。
ターミナルからいけたくないみたいな。
そうですよね。
ターミナルからいけたくないみたいな。

マウス使うのかっこ悪いなみたいなところあるじゃないですか。
全てキーボードで完結してみたいな。
そういうのでかっこいいなみたいな理由で、
コマンドラインツールが好きっていうのはありますね。

わかりますよ。
僕もいまだになるべくマウスを使わないようにやってるんですけど、
どうしてもUI絡んでくると、
マウスを使わざるを得ない状況とか結構出てきたりして、
コマンドラインツールの優れた点

みたいに思うんですけど、
コマンドラインで完結したいですよね。

そうなんですよね。
なんかCLI好きな理由は結構いくつかあるんですけど、
やっぱそのマウス使いたくないっていうのと、
最初はやっぱあれなんですよね、
映画のマトリックスとかそういうの見て、
ハッカーが出てくる映画とか見て、
それでコマンドを使ってるのがかっこいいみたいな。

めっちゃかっこいいですよね。

かっこいいっていう理由しかないんですけど、
超大事それ。
もうちょっと真面目な理由だと、
Unix哲学みたいなのがすごい好きで、
Unix哲学って一つのことをうまくやるソフトウェアを書くとか、
小さなソフトウェアを組み合わせて何かを作るみたいな。
あと標準輸出力でテキスト情報を受け渡しして組み合わせるみたいな。
そういうのが言われてることだと思うんですけど、
そういうのが好きでコマンドライン色々作っているっていうのがありますね。
それを体現してるソフトウェアはクールだなと思って。
小さなソフトウェアを組み合わせて、
利用者が新しい価値を生み出せるような汎用的なツールみたいなの。
Grepとかですね、そういうのに憧れますね。
坂田さん代表作のTudoistとかBillyとか見てても、

別にターミナルで作るところがUIを捨てるっていうことは全然なくて、
むしろその逆でシンプルだからこそすごい使い手のことを考えて作らなきゃいけないと思うんですよね。
そのTudoistとか見てすごいクールだなと思ったのが、
ちゃんとフォーマットとかカラーリングにすごい価値を生み出せる。
フォーマットとかカラーリングにすごい妥協してないじゃないですか。
インデンテーションのところのハンドリングとかカラーリングとか、
すごい多分考えて作ってらっしゃるんだろうなっていうのを見てて、
これかっこいいなと思ってましたね。
ありがとうございます。
シンプルだからこそ求められるみたいな。

そうなんですよね。
結構CLIで限られたASCII文字とかでUIを表現する、

いかに見やすいものを作るかって結構難しいなって思ってて、
その辺は結構こだわって作ってたので、
そう言ってもらえるとめちゃくちゃ嬉しいですね。
ありがとうございます。

多分このTudoistの標準出力の出し方とかも、
他のUnixとかあとはオープンソースのツールとかと、
使いやすいようなことをイメージして作られてるのかなとか、
例えばPECOとか僕はよく使いますけど。

はいはいはい。
そうですね。
PECOとかはやっぱ、
PECOとかはそうですね、めちゃくちゃ影響を受けましたね。
やっぱなんかそうですね、
ちょっと話が変わっちゃうかもしれないですけど、
あれを知って感動したっていうのがやっぱ、
結構自分の中で大きかったなっていうふうに思いますね。
なんか、もちろん昔からGrepとか、
そういうUnix哲学を代弁するソフトウェアってあったと思うんですけど、
PECOの前身となってるパーコルとかの開発とかって十数年前とかですよね。
これはなんかまあ、まだ自分でもなんか開発して、
なんか広く利用されるものを作れるなみたいなのに、
なんかすごい勇気づけられて、
それでなんか自分でいろいろ、
どういうソフトウェアあったら便利かなとか、
そういうのを考えるようになりましたね。
なるほどね。
Unix哲学とソフトウェアの作成

そうですね。

PECOはすごい好きですね、僕も。
なんかPECOをいろんなツールと組み合わせて1日中遊べるというか、
なんかGitブランチと組み合わせて、
なんかオレオレGit PECOみたいに作ったりとか。
BIMコンフィグを1日中触るみたいな感じ。

そうですね。
ZSHRCとか、
Shellの設定ファイルとかに書いたりしますよね。

ああいうオープンソースツールが代表作っていうのはかっこいいですね。
そうですね。

代表作みたいなのを作りたいなって思ってます。
Biddyが代表作ですね。

Biddyはそうですね。

十分かっこいいと思います。

そこそこ成功した。
あれは結構やっぱ、
そうですね、Biddyの話になると、
Biddyってそもそも何かって知らない人もいるかもしれないけど、
ちょっと話すとBiddyはボッチコマンドってあると思うんですけど、
ボッチコマンドって定期的にコマンドを実行して、
それを出力していく。
だからコマンドの出力結果がどんどん更新されて、
推移が分かるみたいなのがボッチコマンドがやってることなんですけど、
その課題は、僕がボッチコマンド作ってて課題に感じてたのは、
昔のコマンドの出力結果に戻れないんですよね。
ボッチコマンドって。
現在のコマンド出力結果がずっと表示されるだけで。
それはそれですごい価値なんですけど、
前に戻りたいなみたいな時があって、
それで前に戻れるコマンドを作って、
完全にすべての履歴を保存して、
いつ時点でのコマンドの、
10分前のコマンドの実行結果をまた見たいみたいな時に、
見れるようなコマンドを作りたいって思ったのが、
きっかけで作ったのがBiddyっていうソフトウェアで、
タイムマシン機能って称してますけど、
そういう機能もあるんですけど、
10分前とか20分前とか、
コマンドを実行し続けて、
昔の結果も見れるみたいなのがBiddyっていうソフトウェアですね。
これ多分、かずさん向けにユーザーとして言うと、
これめちゃくちゃいいですよ。

かっこいいですよ、そしてUIが。
あとキーバインディングとかが直感的に使いやすいんですよね。
Vimとか他のペコとか意識してるらっしゃるのかわかんないですけど、
あとやっぱり何ですか、
ここら辺のウォッチコマンドとかを、
リアクトベースのWebUIで作ったり、
こうやってだけじゃないですけど、
いろんなものをWebUIで見せるみたいなのがあるんですけど、
小さいことをすごいめちゃくちゃ上手くするみたいなのを
本当に体験されてるソフトウェアだなっていうのが、
個人的な感動ポイントですね。
ありがとうございます。
BDはそうですね、

アイディアとしてはなんかすごい昔からあったんですけども、
時間があった時にちょっと作ってみるかって言って作って、
で、なんか作ってるうちにネーミングとか、
アイコンとかもですね、
これアイコン妻に書いてもらったんですけど、
かわいいですよね。
めっちゃかわいいですね。
それをいろいろ含めて、
好きなものをすごい詰め込んでいるので、
めちゃくちゃ気に入っているプロダクトですね。
すごい、そうなんだ。
デザイナーさんとかなんですか?
いや、趣味で絵を描いているだけで。
趣味でこのクオリティなのか。

描いてくれましたね。
ちょっとクロックワークオレンジ、
あれです、時計のオレンジ。

時計のオレンジ。
時計のオレンジ。

時計のオレンジ。

時計のオレンジ。
はい。
クロックワークオレンジ、
あれです、時計仕掛けのオレンジっていう映画があって、
それが元ネタになってるんですよね。
そこで目をかっぴらいて、
ずっと映画を見せてるみたいなシーンがあるんですけど、
オープンソースの開発とマーケティング

あれをゴファーがそれをしているみたいなのが、
このアイコンですね。

そこから来てるんだ。

そうなんです。
時計仕掛けのオレンジに出てくるスラングみたいなものなんですよね。
増語、完全に増語なんですけど、
そこでビディっていうのはよく見る、
ウォッチするみたいな意味なんですよね。
なのでビディっていうふうにつけてますね。

すごい、ネーミングもすごいこだわりが感じられますね。

ネーミングはめちゃくちゃ好き。
自画自賛だけど。

めっちゃ大事っすよね。
これ普通のネーミングだったらあんまり使われなそう。
ベタはKubernetesWatcherとか僕つけちゃいそうですけど。
いい、めっちゃいい。

確かにネーミング難しいですよね。
サービスの名前もオープンソースとかも。
そういう意味ではやっぱり他の人が思いつかなそうな名前っていうか、
ベタウォッチとかだと埋もれちゃいそうじゃないですか。
そうですね。
低レイヤーへの憧れ

そういう意味でもめっちゃ秀逸なネーミングですよね。

ありがとうございます。

私はウォッチのコマンドをそんなに使わないですし、
まだプロダクトを坂尾さんのはまだ使ったことはなかったんですけど、
すごさがけんさんから伝えていただきましたね。

多分ツールSREとかプラットフォームエンジニアリング向けが多い気がします。
Kubernetesとか使ってたりとか。
最近のその流れから言うと、

結構坂尾さんってテイレイヤーというか、
新機能を作っている人から見るとどっちかというとテイレイヤーに寄ってって言ってるような気がするんですけど、
例えばTwitterとかでもWasmとかに興味があって聞いた。
Wasmの過去と未来みたいな感じでまとめてみたんですけど、
そのテイレイヤーに寄ってって言ってるような気がするんですけど、
そのテイレイヤーに行ったきっかけとかなんかあるんですか?
それとも前から興味あったんだけど、どんどんどんどんのめり込んでいくうちに、
その周辺のテイレイヤーの方に行こうと思ったのかな、みたいなのがあったんですかね。
そうですね。

自分が完全にテイレイヤーやってるかっていうと全然そんなことはないなって思ってるんですけど、
テイレイヤーっていうのは、
結構ハードウェアとか完全にOS作りますとかそのレベルとかも想像されるんで、
テイレイヤーってどこまでやろうなみたいなのがあるんですけど、
興味としてはやっぱりインフラとかどんどんアプリケーションに徐々に低いレイヤーとかに、
比較的低いレイヤーとかに行ったりとか、
それに興味が持ったきっかけで言うと、
一言で言うと、ハッカーへの憧れみたいなのがあるかなって思いますね。
わかる。
やっぱりこの人ハッカーだなって思うと、
ハッカーに関しては、
なんかそのレイヤーがわかるからこそできる問題解決、
例えばバグを見つけるとか、
そのバグが情報の中に入ってくるとか、
その情報の中に入ってくるとか、
その情報の中に入ってくるとか、
その情報の中に入ってくるとか、
パフォーマンスチューニングとかですよね。
低レイヤーを改善して高速化しますとか、
そういう問題解決ができる人に憧れがあって、
だから自分まだ全然できないですけど、
ハッカーに関してはハッカーに関してはハッカーに関しては、
憧れがあって、
だから自分まだ全然できないですけど、
低レイヤーに対して憧れっていうのがずっとありますね。

めっちゃわかります。
僕もラストを書いてる時に、
Rubyとは書いてる時とは違った、
コンピューターと晴らしてる感っていうか、
メモリとかを意識してるんで、
クラウドデータストアの経験

今コンピューターがこういう風に処理してるんだなみたいなのを、
Rubyの時より断然意識するようになったんですよね。
だからより視野が広がって、
人間相手というよりはコンピューターと話してる感があったんですよね。
確かに。

特にラストとかだとコンパイラーから怒られますしね。
感覚って結構すごい自分にとっては良くて、

Ruby書く時により意識するようにパフォーマントなコードを書くっていうのも、
コンピューターがこういう風に解釈しててっていうのを、
意識するようになった、いいきっかけだったなと思うんですよね。
ちなみにそのキャリアの変遷でいうと、

カズさんと一緒に働かれてた頃はバックエンドエンジニアだったんでしたっけ?

そうですね。
何をメインで書かれてたんですか、当時は。

当時はもうRuby on Railsで、
サーバー側のアプリケーションロジックを書いてましたね。

そうですね。
Ruby on Railsで、
サーバー側のアプリケーションロジックを書いてましたね。

そうですね。
フロントって言うと、モバイルゲームを作っている会社だったんで、
フロントって言うと、C++とかそっちの全然違う。

アンチ的なウェブアプリケーションとはまた毛色も違う。

いわゆるフロントエンドとは違いますよね。

感じですよね。

で、そこから基本的には、
私が辞めた後からどういうことをやってたのかわからないんですけど、
基本的にプラットフォームとか触ってたのかな?
そうですね。

一応その技術基盤チームっていうところにいて、
Goで通貨管理。
モバイルゲームの仮想通貨ってあるじゃないですか。
仮想通貨って言っても、ビットコインとかじゃなくて、
ゲーム内通貨ですね。
それを管理する。
マイクロサービスと言っていいかな?
マイクロサービスみたいなのを作ってましたね。

で、今のKubernetesの方にいたんですか?

そうですね。
別の会社にいたんですけど、
それから今の会社は3社目みたいな感じですね。

仮想通貨というか、
仮想通貨というと本当にクリプトになっちゃいますからね。
ゲーム内通貨の方が楽しみか?
ゲーム内通貨ですね。
サーバーとか結構作る要件とか厳しい印象があるんですよね。
僕、ゲーム業界で働いたことないですけど、
例えばパフォーマンスも求められそうだし、
セキュリティというか、
不正に額を増やすような変なリクエストが来ないようにとか、
気をつけなきゃいけなかったりとか、
すごい技術的にも面白そうな印象がありますけど、
どうですか?当時作っていて、GOで作られてたんですよね。

そうですね。
本当にいい勉強にはなったなというふうに思ってますね。
もちろんそのGOのプロダクションコードを書くっていうのも、
そこで初めて経験させてもらえたし、
そこからGOへの、GOとの繋がりができたんですね。
そこが良かったし、
技術的にもですね、
アプリケーションロジックももちろん、
いろいろ勉強になるところはあったんですけど、
特に自分が面白かったのは、
GCPをそこで初めて使ったんですよね。
Google App Engineと、
クラウドデータストアとかを使いました。
そうですね。
やっぱりおっしゃる通り、
結構トラフィックが多かったりとかするので、
そこでどうやってスケーラブルなアプリケーションを作るのか、
みたいなのは、
そこでいろいろ勉強させてもらえたなというふうには思ってますね。
スケーラブルに作りたいんで、
リレーショナルデータベース、
今だとそのNewSQLとか、
あると思うんですけど、
リレーショナルデータベースじゃなくて、
クラウドデータストアってNoSQLだったんですけど、
それを使って作るっていうのも、
自分にとっては新しい経験でしたし、
それを使ったデータの構造とか、
データ構造の持ち方とか、
そういうのもリレーショナルデータベースとは考え方もちょっと違うところもあって、
その辺は非常に勉強になりましたね。
それめちゃくちゃ楽しそうな、僕大好きなトピックですね。
次お会いしたとき、

クラウドビールを飲みながら3時間ぐらい語りたい。
ぜひぜひ。
僕も勉強させていただきたいですよ。

ちなみにそのクラウドデータストアとか、
カズさんとの思い出エピソードがあると、
事前メモでちょっと伺ったんですけど、

これ聞いてもいいんですか?
はい、もちろんです。
2人はどういう関係だったの?
どういう関係というか、
カズさんがちょっと先輩で、みたいなことは伺ってたんですけど。
そうですね。
先輩エンジニアでしたので、

いろいろ教えてもらったっていうのは結構あって、
エンジニアとしてのスタンスとかですかね。
すごいかっこいいこと言っちゃうな。
かっこいい。
お金もらってんのかなって思われちゃう。

そうですね。

エピソードとしては、
僕新卒だったんで、
新卒時代ですね、
多分実感、
僕が先輩になるときに、
クオリティに妥協したプロリークみたいなのを出したことがあったんですよ。
その時にカズさんから、
クオリティに妥協しちゃうと伸びなくなっちゃうので、
気をつけた方がいいですよ、みたいな。
的なことを言われたことがあるんですよね。
僕はすごい覚えてるんですけど、
その時にカズさんから、
クオリティに妥協したプロリークみたいなのを出したことがあったんですよ。
その時にカズさんから、
クオリティに妥協したプロリークみたいなのを出したことがあるんですよね。
僕はすごい覚えてるんですけど、

カズさん覚えてるかどうかわかんないんですけど。

カズさん覚えてるんですか?

覚えてます。
何でかって言うと、
言われたら確かに言ったような思い出があって、
何でかって言うと、
この時、赤月に入った時、
私フリーランスで外部の人間だったんですよね。
だから、
これを言った後に、
何て言うんでしょう。
外部から入ってきてるエンジニアとして、
何て言うんでしょう。
偉そうなことじゃないですけど、
言っちゃったんじゃないかなみたいな風に、
多分悩みました。
言ってよかったのかな、あんなこと。
偉そうなこと言って。

7年越しに語る裏側みたいな。

でも、非常に言ってもらえてよかったなって思ってますね。

暖かい話。

それが結構心に残ってて、
それから色々気を付けてますね。
クオリティに妥協しないようにしようとか。
すごいな。

クオリティへの情熱をすごい感じたのが、
先ほどカズさんもちらっと触れましたけど、
Webアセンブリーについての勉強

KiitaのWebアセンブリーの記事、
僕も拝見しましたけど、
めちゃくちゃ勉強になりました。
僕、仕事でワズマをガッツリ触ってるわけじゃないので、
Webアセンブリーとは何かについて、
背景とか歴史とかからすごい丁寧に書かれていて、
これ雑誌の記事のワンセクションかなと思って。
プログラミングのアウトプットだけじゃなくて、
こういうところにもクオリティを求める姿勢というのを感じて、
この記事めちゃくちゃ良かったです。
勉強になりました、普通に。

ありがとうございました。
ありがとうございます。

普通に知らないことだらけでした。

はい。
Webアセンブリー、僕のイメージだと、
ちょろっとラストで書いたときは、
ライフゲームか何かをブラウザーで動かすようなコードか何かを書いたことがあって、
今その記事見ると結構ブラウザー以外の方にも
Webアセンブリーが進出してきてるっていうのを見て、
えーとか思ってですね。

うんうんうん。

エッジコンピューティングとかなんですよね、多分ね。

うんうんうん。
知らないことでしたね。

うんうんうん。
エッジコンピューティングを提供する側からも多分、
ワズームがあった方がどうなんだろう。
パフォーマンス出るし、でも提言とかも多いですよね。
多分そのワズームモジュールのバイトサイズとか、
インストラクションのコードサイズとかも多いし、
一応うちもその、これパブリックに出してるサービスですけど、
ショピファイファンクションみたいなの出していて、
そこワズームモジュールで実行環境なんですよね。

うんうんうん。

だけど結構制限とかもちろん多いので、
具体的にどこまで使えるかちょっと分かんないですけど、
これから結構ユースケースが広がっていくような、
個人的にも注目している技術ではありますね。
うんうんうん。

そうですね。
もっと使われるようになったら、
結構いろいろ面白そうなことができそうだなっていうのがあって、
個人的にも興味持ってますね。
うん。

Rubyとかでも3.2ですかねとかで確か、
ワズームモジュールのサポートが入ったりとか、
最近いろんなJavaScriptとかRust以外でも結構聞くし、
Goも多分サポートされてるんですよね。
そうですね。Goもありますね。
うん。

いや面白いなここで。
うん。

面白いですよね。

また別のプログラミング言語というよりは、
どっちかっていうとポータブルでDockerみたいな感じの感じで、
いろんなところに使えるみたいな。
うん。
すごい夢ありますよね。
そうですね。
どこまで、
これからどう発展していくかみたいなのは、

もちろん全然僕もわからないんですけど、
WasmのコンポーネントモデルとWAG

広まって使われていくようになっていくと、
いいなあっていうふうに思ってますね。
なんか特に個人的に面白いところは、
RubyとかJavaScriptとか、
いろんな言語でWasmのモジュールって作ることができて、
今絶賛策定中の仕様で、
Wasmコンポーネントモデルっていうのがあるんですけど、
いろんな言語で、
例えばこのコンポーネントモデルを使って、
Wasmのモジュールを作ることができて、
いろんな言語で、
言語で例えばコンポーネントを作って、
Rustっていう言語でコンポーネントを作って、
Goっていう言語でコンポーネントを作って、
そのコンポーネントをつないで、
ライブラリーみたいにして使えるようにするみたいな、
そういう使用策定も進んでいて、
そうなると結構、
今までプログラミング言語ごとにライブラリーって作ったりとかしてたと思うんですけど、
そのプログラミング言語のサイロ化みたいなのが解消されるみたいなのが、
確かに目指す世界としては面白いなみたいな、
実際どうなんだろうなみたいなのは、
すごい疑問はいっぱいあるんですけど、
そういうのは結構有名があっていいなっていうのが、
個人的には面白いなって思ってるポイントですね。

コンポーネントモデル知らなかったですよ、
このクイズ読む前めちゃくちゃ面白そうですよね。

面白いそうです。

Wasm Other Servicesとか出てきそうだけど、
コンポーネントをカタログで見れてとか、
それをそのままデプロイ環境にデプロイしてみたいな、

あるのかな?
そうですね、実際にサービスとしては、
もちろんWasmランタイムのサービスみたいなのは色々出てきてて、
サーバーレスみたいなイメージで、
Wasm関数をデプロイできるみたいなのももちろんありますし、
さっきおっしゃってたカタログみたいな概念で言うと、
WAGっていう仕様があって、
それは何かっていうと、
Wasmのコンポーネントのレポジトリの仕様ですね。
そのWasmコンポーネントをどうやってディストリビュートするかみたいな、
そういうのを今策定して実装してたりとかするんで、
だからPIPとかNPMとかですかね、
NPMとかみたいにパッケージを配布するみたいなのが、
そういうのができるようになるんだろうなとは思います。
面白い。もう一回教えてください。WAG?

WAGですね。WARG。

なるほどね。

WAGインストールコンポーネントXみたいな感じになる世界観が来るんですかね。
そうかもしれないですね。

どうなるのか。
僕もそこまでこの仕様に関しては全然思ってないんで、
適当なこと言っちゃってるかもしれないですけど、
そういうイメージではあります。

なるほど。じゃあちょっとここら辺でサービス作って、
資金調達に。

AIの次は。

WAGが来ると。

WAGが来るかもしれない。

めちゃくちゃ勉強になる。

このバイトコードアライアンスっていうのが、
この仕様策定をリードしている。
いろんな企業からの、
集めた団体というか、
要するに一つの企業がこういうのを主導しちゃうと、
いろいろ問題が出てくるので、
アライアンスという形でやってるみたいな感じですよね。
たぶんそうですね。

成り立ちを詳しく知ってるわけではないんですけど、
イメージとしてはそういうふうに思ってますね。
やっぱり一つの企業に独占して、
たぶん仕様とか決めちゃうと、
それはそれでやっぱり回りついていかないじゃないですか。
ブラウザ対応とかも出ていかないし。
そういうのがあって、
たぶんみんなで一緒に頑張って作りましょう
Wasmのパッケージ配布と展望

っていう感じになってるのかなって思ってますね。
そうですね。
この記事で知って、

サイトに行ったら、

うちの会社もメンバーだみたいなことを話したり。
そうなんですね。

面白いですね、ここら辺。

じゃあ、2回目はわずむかい坂川さんを呼んで。
はい。

もう全然。
クーベコンの話でもいいですが。

それも聞きたかったです。
ちなみにクーベコンは、
どういうキーノートの内容とかって

もう出てるんでしたっけ?
たぶんそうですね。
もちろんスケジュールというのは出てるんで、

大まかなトピックはもう分かるのかな。
実はまだどれ聞こうか。
これからですね。
はい。

ちょっと今全然手が回ってなくて。

またまた決めようかなって思ってるところですね。
あと、並走して、
コロケイテッドイベントとして、
わずむデイだったかな。
わずむのワンデイイベントみたいなのもあるんで、
それにも参加しようかなとは思ってますね。
クーベコンのサブイベントですね。
そうですね。
サブイベントという形で、
いろいろあるんですよね。
ちょっと名前がいろいろ出てこないけど。
CNCF周りのプロジェクトのカンファレンス。
例えばシリウムとか、
サノスとかもあったかな。
そういうCNCFプロジェクトがあるんですけど、
それに参加しようかなとは思ってますね。
クーベコンのサブイベント。
そうですね。
クーベコンにフォーカスしたイベントみたいなのが、
コロケイテッドイベントという形で、
1日取られていて、
それにわずむもあるので、
わずむの話が1日聞ける日があって、
それには参加しようかなというふうに、
今は思ってますね。

面白そう。
クーベコンだけかと思って見てたんですけど、
全然そんなことなくて、
いろんなトピック、
インフラ系みたいな話とか、
いろんなのが入ってて、
こんなのあるんだみたいな。

クーベコン、クラウドネイティブコンなので、
やっぱり相当スコープはでかいですよね。

でかいですね。

じゃあ日本帰国されて落ち着いたら、
レポート返しましょうよ。
レポートランとかもお待ちしてますよ。

そうですね。
僕がモンスターミッシェルに行った話とか。
行くんですか?

モンスターミッシェル行く予定です。
結構遠いですよね。

僕も行ったことあるんですけど、パリから。

日帰りでギリ行けるぐらいじゃないですか。

結構しんどいですよね。

そうですね。日帰りで行く予定ですね。
坂尾さんの技術顧問の仕事

だから次やりましょうね。

ぜひぜひ読んでいただけると嬉しいです。

しゃべれるところまででいいんですけど、
技術顧問もやってらっしゃると伺ってるんですけど、
どんなことやってらっしゃるんですか?

難しいですよね、技術顧問って。
何やってんだろうみたいな。

よく乗り換えのネタになります。

そうなんですか。
僕は、
それはCTOが友達の会社があって、
そこでちょっと、
そういう動きをさせてもらってるんで、
ちょっと書いてるんですけど、
そこでどういうことやってるかっていうと、
技術選定のお手伝いとか、
なんかそうですね、
CTOとワンワンして、
どういう方針で行こうかみたいなのとか、
レビューの方針とか、
エンジニア文化みたいなところとか、
どういう仕組みあったらいいかとか、
アーキテクチャディシジョンレコードだとか、
そういう文化的という、
そういう、
文化的と言えるのかな、わかんない。
チーム運用とか、
そういうのの壁打ちであったりとか、
そういうのをちょっとやってたりはしますね。
別にその会社では、
技術顧問だけじゃなくて、
普通にコードを書いて働いてたりもするんですけど、
CTOは友達なんで、
普通にワンワンでそういうのを話してるっていうのが、
結構そういう感じですね。
そうですね、

技術顧問っていろんな、もちろんスタイルとか、
どういうことをやりますよっていうのは、
会社によって全然違うと思うんですけど、
坂尾さんがどんなことをやってらっしゃるのかな、

そうですね。
そんなことやってますね。
やっぱり技術選定とかが、
壁打ちとか、そういうのが大きいのかな、
大事だと思いますね。

第三者の視点みたいなのが欲しいじゃないですか。
そうなんですよね。

自分で例えば、
一人でやろうと思ったら、
結構迷っちゃうよなみたいな。
迷っちゃって、
ロツボにハマっちゃったりとか、
いろいろあるよなと思って、
外部からそういうふうにして、
外部の視点から、
そういうのをちょっとフィードバックくれるっていうのは、
バーニーなのかもしれないなっていうふうには思ってますね。

そうですね。

特に立ち上げ初期のスタートアップとかだと、
単純に手が足りてなかったり、
トップダウンで見れる人がいなかったりとか、
CTOは頭では分かってても、

誰か壁打ちが欲しいみたいなのは相当あると思うんだよね。

ボトムアップでプロダクト作っていくのは、
やっぱりプロデューサーがいるけど、
そういう方針決めとか言ってくれるとありがたいですよね。

そう思いますね。

やっぱり技術顧問とかの仕事って、
リファラルとかで見つけることが多いかなという、
僕の印象ですね。友達とか。

そうなんですね。

カズさんやらないですか?技術顧問。
ドイツ流を。
そうですね。

長い目で見れば、
今はちょっと時間がなさすぎるんで、
考えてはないんですけど。
面白そう。
面白いと思いますね。
いろんな視点も、また自社とは違う、
自分が働いているところとは違うような話とか、
出てくるじゃないですか。
僕がフリーランスやってた時も、いろんな会社見れるっていうのは、
確かに。
技術顧問の重要性とメリット

いいですね。
会社外とのつながりを、エンジニアのつながりを持てるっていうのもいいですよね。
本業楽しくても、
本業ばっかりやってると、
第三者の目線とかたまに欲しくなったりするから。

はい。
そんな感じで、あっという間の1時間。

本当だ。
ですかね。

話を。
全然喋ってない。

話足りたかどうかで言うと全然ないんですけど。

これはまた聞いていただくしかないですね。

そうですね。
僕、日本に帰る時、東京に行かないんですよね。
つまり実家が京都で、
私が福岡。坂本さん確か福岡出身。

そうですね。私は福岡です。

福岡。
坂本さんがいることは全然ないんで。

そうですね。
東京に行く機会ないですよね。
なるほどな。またぜひ機会あれば、
お願いします。

C社バーとか、日本で流行ってるか知らなかったですね。

こっちは結構あるんですけど。
そうなんですね。結構あります。
結構って言うほどじゃないか。

ありますね。

はいはい。
いたるところに。すごい。

いたるところに。

繁華街にはあるかなぐらいですね。

ベランダで捨てたりするんですけど。

こっちも。
アラブ系の人かなみたいな感じで。

いいですね。
公園に持ってくるとかもやってますよ。

バーベキューしながらセット持ってきてみんな。
めっちゃエモいな。

という感じで。
また話したいですね。

ぜひやりましょう。

というわけで今回、
特英級のエンジニアの坂本さんに来ていただいて、
めっちゃオープンソースとか、そうですね。
WASMとかめっちゃいいこと聞いたんで。
すごい良かった回になったと思います。

めちゃくちゃ楽しかったです。

楽しかったです。こちらこそ。
気持ちよく喋らせてもらいました。ありがとうございます。

こちらこそ改めてありがとうございます。
参加していただいて。
という感じで、
今回坂本さん本当にありがとうございました。

また話しましょう。
ありがとうございました。