1. London Tech Talk
  2. 自らのカッコよさを凝縮したオ..
2024-04-13 55:16

自らのカッコよさを凝縮したオープンソースを作るエンジニア (Takumasa Sakao)

Takumasa Sakao さんをゲストにお呼びしました。Golang, Wasm, k8s, CLI, Sakao さんのオープンソースを作るモチベーションとその裏話について話しました。


Summary

London Tech Talkの最新回では、素晴らしいゲストの坂尾さんが登場しています。 7年ぶりの再会で、インフラやプラットフォームについて話しています。 坂尾さんが作られている2つのオープンソース、ToDoListとBiddyについてお話ししています。 さらに、コマンドラインツールの優れた点やUnix哲学についても語られています。 坂尾さんは技術ブログを通じてマーケティングの有効性に注目し、オープンソースの開発に取り組んでいます。 オープンソースのネーミングや低レイヤーの開発に対する憧れなど、坂尾さんのエンジニア人生についても語られています。 また、Webアセンブリーについて学び、WasmのコンポーネントモデルやWAGによるパッケージ配布など、今後の展望に興味を持っていることも述べています。 坂尾さんが技術顧問として取り組んでいることについてもお話ししています。

London Tech Talkの回とSakaoさんの登場
ken
今回のLondon Tech Talkの回として、素敵なゲスト、Sakaoさんに来ていただきます。
Sakaoさん、よろしくお願いします。
Takumasa Sakao
よろしくお願いします。
ken
Sakaoさんと私が出会ったきっかけなんですけど、
7年前、ベルリンに来る直前に私がフリーランスとして働いていた会社で、一緒のチームでエンジニアとしてSakaoさんと働いていて、
本当に7年ぶりに直接話すっていう感じですね。
めっちゃ懐かしいですね。
Sakaoさんと7年ぶりに話したいっていうのもあったんですけど、
Twitterではゆるくつながってて、プラットフォーム関係、インフラっぽいことをやってるんで、
他のKenさんとか、他のもう一人今日はお休みなんですけど、Asaiさんとかはインフラ、SREやってるんで、
結構領域も似てて、2人話が合うのかなっていうのもあったので、お呼びしました。
Takumasa Sakao
ありがたいですね。
Sakaoさんの自己紹介
ken
Sakaoさんでは自己紹介軽くお願いしていいですか。
Takumasa Sakao
初めまして、ZLabという会社でソフトウェアエンジニアをやっております。
Sakaoと申します。
ZLabという会社では、KaaS、Kubernetes Azure Serviceの略なんですけど、
Kubernetesクラスターを作成管理を行うマネージドシステムですね。
とか、ZLabのアプリケーションプラットフォームっていう、コンテナを簡単にデプロイできるシステムを、
Takumasa Sakao
Line Yahoo!社に対して提供しています。
自己紹介ということで、好きなこととかですね。
最近はクラフトビールにハマってて、よく飲んでいるのと、
あとC社が好きで、たまに行ってます。
OSS開発をしてて、いろんなプロジェクトをZLabに公開したりしております。
KaaSさんとは、私が新卒で入った会社で、同じチームで働いていた繋がりになってます。
僕にとって先輩エンジニアでしたので、結構教えていることも多くあったので、
今日またこうやってお話できるのは、すごい感慨深いなというふうに思っています。
どうぞよろしくお願いいたします。
よろしくお願いします。
ken
いやー、めっちゃ久しぶりですね、本当に。
ken
これ、始まる前にも話したんですけど。
もうちょっと話してから、
Takumasa Sakao
もうちょっとポッドキャスト代わりに話したりしたいですよね。
そうですね。
話したいことがもう積もり積もってるじゃないですか。
7年ぶりなんでね。
ken
そうですね。
ken
Twitter、今のXですけど、緩くは繋がってるんでて、
あんまりしゃべることもないですよね、Twitter。
本当に緩く繋がってて。
本当にそうですね、全然。
Takumasa Sakao
リプとか飛ばし合わないし。
そうですね。
だから、久しぶりですよね。
ken
はい、久しぶりですね。
ビールとOSSの話
Takumasa Sakao
あの、Xのリンクを教えてもらって僕見てたら、
ken
なんかめちゃくちゃビール好きなんですね。
なんか美味しそうなビールの写真がたくさん流れてて。
そうなんですよ、はい。
Takumasa Sakao
クラフトビール好き、最近ハマってて、
1年前くらいからですね、ちょっとよく飲み始めて。
で、ちょっと体調崩し気味になってきたんで、
最近はジムに通って、プラマイゼロかなって思ってます。
飲むためにね。
ken
飲むためにビールを。
クラフトビールって結構あの、缶のラベルとかも綺麗だったりするし、
香りがいいやつとかもあるんですよね。
そうなんですよね、そうなんですよね。
Takumasa Sakao
特にその、まあ僕はそればっか飲んでるんですけど、
ヘイジーアイピエーっていう濁っているやつですね。
なんかそれがすごい味が濃くて、
まあ香りもすごくフルーティーで、
まあ好んで飲んでますね、はい。
これビールと言えばドイツですけど、
ken
ドイツっていうのはクラフトビールあんまり有名じゃないですかね。
王道のあのジャーマンビールみたいな感じですか。
ken
そうですね、クラフトビールもこっち流行ってますよ。
Takumasa Sakao
すごいですね。
ken
イギリスだと、なんかブリュードックっていう有名なブランドが至るところにあるんですけど。
Takumasa Sakao
そうなんですね。
ブリュードックおいしいですね。
ken
日本でも飲めるんですか?
Takumasa Sakao
全然ありますよ。
なんかうちの近所の、もうすぐそこのコンビニにも売ってますね。
コンビニに置いてるところはさすがにちょっと珍しいかもしれないんですけど、
まあよく見かけますね、ブリュードックは。
ken
なるほど。
なんかパンクIPAみたいな感じでこっちでは呼ばれてたりして。
おいしいですよね。
Takumasa Sakao
おいしいですね。
ken
結構缶が多いんですか?缶のIPAっていう。
ken
そうですね。
Takumasa Sakao
もちろん瓶もあるんですけど、
なんか知らんけど缶多いですよね。
そうなんですね。
全然知識がないんで、なんか多いけどってなってるけど。
なんかね、まあそうですね。
結構その缶もでかい缶で、
なんだろう、ラベルが綺麗というか、結構そのジャケットに合ってるところが多い気がするんで、
まあそういう意味でも缶って使い勝手が良かったりするかもしれないですね。
ken
なるほどですね。
Takumasa Sakao
みたいな雰囲気で思いました。
ken
この写真見てるんですけど、ビールグラスも素敵ですね、これ。
Takumasa Sakao
そうなんです。
ken
カラフルなやつとシンプルなやつとなんか。
Takumasa Sakao
めっちゃ見てくれてるじゃないですか、ありがとう。
カラフルなやつはあれなんですよね、
オランダに行った時に買いまして、
ちょっと思い出にビールグラス買おうと思ってオランダで買いましたね。
ただ日本で楽天で売ってましたね。
買えるじゃんって。
ken
まあね、並行輸入品とかたくさんあるからね。
ken
なるほど。
ken
いやすいません、ちょっと7年ぶりなのに僕がビールの話にすっこんじゃって。
いやいやいや。
たずさん好きな話、いいですよ。
ken
いやいや、これも結構なんか、
坂本さん結構そういうクラフトビールとか好きなんだっていうのなんか、
その、そう、当時は喋らなかった内容とかも結構あるんで、
なんかこれも知っていく感じでめっちゃ良いと思います。
はい。
アムステルダムってあれですよね、クーベコンですよね、去年。
Takumasa Sakao
あ、そうですそうです。
去年のクーベコンがアムステルダムであって、
ちょっと会社で行かせてもらったんで、
そこで買ったって感じですね。
ken
なるほどですね。
で、今年も行くと。
Takumasa Sakao
そうですね、今年もちょっと機会に恵まれたんで、
来週からですね、ちょっと旅行にも兼ねちゃって行ってきます。
ken
いいですね。
Takumasa Sakao
いいな。
ken
日本からヨーロッパ、いいな。
はい、そうですね、なんか、
Kubernetesもなんかプロのような感じで聞いてるような感じなんですけど、
好きですよね、坂本さん。
Takumasa Sakao
あ、まあそうですね、プロかどうかで言うと全然プロではないですけど。
依頼じゃこの仕事できなそうですから。
ken
そうですね、はい。
Takumasa Sakao
まあ、はい、Kubernetesを触ることは、はい、
もちろんそうですね、毎日Kubernetesを触って、
なんかいろいろ開発したりとか、検証したりとかですね、
いろいろしてますね、はい。
ken
今日、僕めちゃくちゃ楽しみにしてたのが、
坂本さんはカズさんのお知り合いということだったんで、
どんな方か教えてもらったときにGitHubのリンクを教えてもらったんですね。
で、こうつらつらーって見てたら、
なんか僕使ったことあるツール載ってるぞって思って、
これ発音合ってるかどうか、Biddyっていうのがね。
あ、はいはいはい、Biddyですね、合ってます、合ってます。
Takumasa Sakao
これ前の会社で使ってたんですよね、普通に。
ken
ま、まじですか、めちゃくちゃ嬉しいです。
作者みたいな感じで、コンティビューターの履歴見たら、
あ、作者だみたいな。
Biddyの作者だったのかみたいな。
めっちゃこう興奮して、今日実は収録臨んでるんですよね。
Takumasa Sakao
あ、すごい。
ken
Kubernetes使ってるSREだったら知らない人いないんじゃないですかね。
あ、まじですか、めちゃくちゃ嬉しいっすね。
Takumasa Sakao
なんか今の会社はすごい社内ウェブUIツールみたいなのが充実しちゃってて、
ken
CLIから離れちゃったんですけど、
前の会社は割とそのターミナル経由で操作することが多かったんで、
ちょっとOSSの話も聞けるのすごい楽しみにしてます。
あ、そうですね、はい。
そう、なんか坂尾さんというと結構OSSのイメージがあって、
ken
2つピックアップしたんですけど、
TudoistのコマンドラインツールとBiddy、
そうですね、なんか、わあ、めちゃくちゃ嬉しいですね。
TudoistのコマンドラインツールとBiddy、
そうですね、なんか、わあ、めっちゃいいツール作ってるじゃんと思ってですね。
ここら辺、そう、
オープンソースのこのコマンドラインツール作るのにGoもやってて、
で、Goって結構Kubernetesとかと結構絡み合ってて、
なんかそこら辺の、その、前見た時はなんかTwitterかなんかで、
もうRubyのレールに乗るのはやめようかなみたいなツイートを見て、
で、Goにスイッチしてるのを見たんで、
なんかGoの魅力とか聞けたらなと思うんですけど。
はいはいはい。
Takumasa Sakao
あ、そうっすね。
やっぱGoは、なんか、自分がもちろん思ってることでは、
やっぱシンプルであるみたいなのがいいかなっていうふうに思ってて、
言語仕様は軽くって、なんか取得がやっぱしやすいなって思うんですよね。
エコシステム、パッケージ管理とか、Goのフォーマターとか、
アーティスト実行とか、揃ってるなっていうのが、
Goがやっぱ一番いいっていうか、いいなって思ってるところですかね。
で、そうっすね。
特に標準ライブラリが充実してるのがすごい好きで、
結構標準ライブラリのみで実用的なものが簡単に作れるっていうのがいいんですよね。
なんかライブラリの選定って結構迷うじゃないですか。
そこがちょっと少ないっていうのが、
自分がやりたいことにちゃんとフォーカスして、
それを達成できるっていうのが好きなところかなっていうふうに思いますね。
ken
めっちゃわかる。
ken
私も少し書いたことあるんですけど、
そうですね、結構簡単。
ペララッと書けるところを軽く書けるのが本当にいいなと思います。
Takumasa Sakao
そこはすごい好きですね。
最近はちょっとラストとか勉強したりとか全然してるんですけど、
GoはGoでやっぱいい言語だなって思いますね。
ラストって結構難しいからGoに逃げたくなっちゃうっていうか。
わかります。
ken
ラスト全色で私も少し書いたんですけど、
めっちゃコンパイラーに怒られて、
コンパイル通すのに結構苦労したりとかってしてるんですよね。
だからラストのハマりポイントってわかりますね。
Takumasa Sakao
エンジニアは大抵コンパイラーに怒られるか、
ken
リンターに怒られるか、ちゃんとGPTに教えてもらうかなんで。
人間に怒られないだけは。
ライブラリーの選定とかめちゃくちゃわかりますよ。
GitHubのプレディックとかで無用な議論をしたくないので。
そうなんですよね。
めんどくさいんですよね。
Takumasa Sakao
よく自転車の置き場論みたいな感じで言われちゃいますけど、
本当そういう無駄な議論じゃなくて、
建設的にどういう機能を作るべきとか、
そういうのをやっぱり考えたいですよね。
めちゃくちゃわかる。
うちの会社でもよく変な議論を始めると、
それバイクシェットだね、
ken
それバイクシェットだね、
自転車置き場理論だね、
自転車置き場理論だね、
みたいなこと言われるんで。
わかりますね。
ken
そのGoにちなんだところなんですけど、
坂尾さんが作っていらっしゃるオープンソース
ken
コマンドラインツール作るの簡単じゃないですか。
そこから、
坂尾さんが作っていらっしゃる2つのオープンソース。
他にも作っていらっしゃるんですけど、
ken
この2つって、
ken
ToDoListをコマンドラインから使えるようにするとか、
めっちゃいいですよね。
Takumasa Sakao
結構コマンドラインに、
ken
前から結構こだわってる、
坂尾さんこだわってるところがあったんで、
Takumasa Sakao
そこら辺。
ken
エンジニアとしてわかります。
なんでもコマンドラインからやりたいみたいな。
ターミナルからいけたくないみたいな。
そうですよね。
ターミナルからいけたくないみたいな。
Takumasa Sakao
マウス使うのかっこ悪いなみたいなところあるじゃないですか。
全てキーボードで完結してみたいな。
そういうのでかっこいいなみたいな理由で、
コマンドラインツールが好きっていうのはありますね。
ken
わかりますよ。
僕もいまだになるべくマウスを使わないようにやってるんですけど、
どうしてもUI絡んでくると、
マウスを使わざるを得ない状況とか結構出てきたりして、
コマンドラインツールの優れた点
ken
みたいに思うんですけど、
コマンドラインで完結したいですよね。
Takumasa Sakao
そうなんですよね。
なんかCLI好きな理由は結構いくつかあるんですけど、
やっぱそのマウス使いたくないっていうのと、
最初はやっぱあれなんですよね、
映画のマトリックスとかそういうの見て、
ハッカーが出てくる映画とか見て、
それでコマンドを使ってるのがかっこいいみたいな。
ken
めっちゃかっこいいですよね。
Takumasa Sakao
かっこいいっていう理由しかないんですけど、
超大事それ。
もうちょっと真面目な理由だと、
Unix哲学みたいなのがすごい好きで、
Unix哲学って一つのことをうまくやるソフトウェアを書くとか、
小さなソフトウェアを組み合わせて何かを作るみたいな。
あと標準輸出力でテキスト情報を受け渡しして組み合わせるみたいな。
そういうのが言われてることだと思うんですけど、
そういうのが好きでコマンドライン色々作っているっていうのがありますね。
それを体現してるソフトウェアはクールだなと思って。
小さなソフトウェアを組み合わせて、
利用者が新しい価値を生み出せるような汎用的なツールみたいなの。
Grepとかですね、そういうのに憧れますね。
坂田さん代表作のTudoistとかBillyとか見てても、
ken
別にターミナルで作るところがUIを捨てるっていうことは全然なくて、
むしろその逆でシンプルだからこそすごい使い手のことを考えて作らなきゃいけないと思うんですよね。
そのTudoistとか見てすごいクールだなと思ったのが、
ちゃんとフォーマットとかカラーリングにすごい価値を生み出せる。
フォーマットとかカラーリングにすごい妥協してないじゃないですか。
インデンテーションのところのハンドリングとかカラーリングとか、
すごい多分考えて作ってらっしゃるんだろうなっていうのを見てて、
これかっこいいなと思ってましたね。
ありがとうございます。
シンプルだからこそ求められるみたいな。
Takumasa Sakao
そうなんですよね。
結構CLIで限られたASCII文字とかでUIを表現する、
Takumasa Sakao
いかに見やすいものを作るかって結構難しいなって思ってて、
その辺は結構こだわって作ってたので、
そう言ってもらえるとめちゃくちゃ嬉しいですね。
ありがとうございます。
ken
多分このTudoistの標準出力の出し方とかも、
他のUnixとかあとはオープンソースのツールとかと、
使いやすいようなことをイメージして作られてるのかなとか、
例えばPECOとか僕はよく使いますけど。
Takumasa Sakao
はいはいはい。
そうですね。
PECOとかはやっぱ、
PECOとかはそうですね、めちゃくちゃ影響を受けましたね。
やっぱなんかそうですね、
ちょっと話が変わっちゃうかもしれないですけど、
あれを知って感動したっていうのがやっぱ、
結構自分の中で大きかったなっていうふうに思いますね。
なんか、もちろん昔からGrepとか、
そういうUnix哲学を代弁するソフトウェアってあったと思うんですけど、
PECOの前身となってるパーコルとかの開発とかって十数年前とかですよね。
これはなんかまあ、まだ自分でもなんか開発して、
なんか広く利用されるものを作れるなみたいなのに、
なんかすごい勇気づけられて、
それでなんか自分でいろいろ、
どういうソフトウェアあったら便利かなとか、
そういうのを考えるようになりましたね。
なるほどね。
Unix哲学とソフトウェアの作成
Takumasa Sakao
そうですね。
ken
PECOはすごい好きですね、僕も。
なんかPECOをいろんなツールと組み合わせて1日中遊べるというか、
なんかGitブランチと組み合わせて、
なんかオレオレGit PECOみたいに作ったりとか。
BIMコンフィグを1日中触るみたいな感じ。
Takumasa Sakao
そうですね。
ZSHRCとか、
Shellの設定ファイルとかに書いたりしますよね。
ken
ああいうオープンソースツールが代表作っていうのはかっこいいですね。
そうですね。
Takumasa Sakao
代表作みたいなのを作りたいなって思ってます。
Biddyが代表作ですね。
ken
Biddyはそうですね。
ken
十分かっこいいと思います。
Takumasa Sakao
そこそこ成功した。
あれは結構やっぱ、
そうですね、Biddyの話になると、
Biddyってそもそも何かって知らない人もいるかもしれないけど、
ちょっと話すとBiddyはボッチコマンドってあると思うんですけど、
ボッチコマンドって定期的にコマンドを実行して、
それを出力していく。
だからコマンドの出力結果がどんどん更新されて、
推移が分かるみたいなのがボッチコマンドがやってることなんですけど、
その課題は、僕がボッチコマンド作ってて課題に感じてたのは、
昔のコマンドの出力結果に戻れないんですよね。
ボッチコマンドって。
現在のコマンド出力結果がずっと表示されるだけで。
それはそれですごい価値なんですけど、
前に戻りたいなみたいな時があって、
それで前に戻れるコマンドを作って、
完全にすべての履歴を保存して、
いつ時点でのコマンドの、
10分前のコマンドの実行結果をまた見たいみたいな時に、
見れるようなコマンドを作りたいって思ったのが、
きっかけで作ったのがBiddyっていうソフトウェアで、
タイムマシン機能って称してますけど、
そういう機能もあるんですけど、
10分前とか20分前とか、
コマンドを実行し続けて、
昔の結果も見れるみたいなのがBiddyっていうソフトウェアですね。
これ多分、かずさん向けにユーザーとして言うと、
これめちゃくちゃいいですよ。
ken
かっこいいですよ、そしてUIが。
あとキーバインディングとかが直感的に使いやすいんですよね。
Vimとか他のペコとか意識してるらっしゃるのかわかんないですけど、
あとやっぱり何ですか、
ここら辺のウォッチコマンドとかを、
リアクトベースのWebUIで作ったり、
こうやってだけじゃないですけど、
いろんなものをWebUIで見せるみたいなのがあるんですけど、
小さいことをすごいめちゃくちゃ上手くするみたいなのを
本当に体験されてるソフトウェアだなっていうのが、
個人的な感動ポイントですね。
ありがとうございます。
BDはそうですね、
Takumasa Sakao
アイディアとしてはなんかすごい昔からあったんですけども、
時間があった時にちょっと作ってみるかって言って作って、
で、なんか作ってるうちにネーミングとか、
アイコンとかもですね、
これアイコン妻に書いてもらったんですけど、
かわいいですよね。
めっちゃかわいいですね。
それをいろいろ含めて、
好きなものをすごい詰め込んでいるので、
めちゃくちゃ気に入っているプロダクトですね。
すごい、そうなんだ。
デザイナーさんとかなんですか?
いや、趣味で絵を描いているだけで。
趣味でこのクオリティなのか。
ken
描いてくれましたね。
ちょっとクロックワークオレンジ、
あれです、時計のオレンジ。
Takumasa Sakao
時計のオレンジ。
時計のオレンジ。
ken
時計のオレンジ。
Takumasa Sakao
時計のオレンジ。
はい。
クロックワークオレンジ、
あれです、時計仕掛けのオレンジっていう映画があって、
それが元ネタになってるんですよね。
そこで目をかっぴらいて、
ずっと映画を見せてるみたいなシーンがあるんですけど、
オープンソースの開発とマーケティング
Takumasa Sakao
あれをゴファーがそれをしているみたいなのが、
このアイコンですね。
ken
そこから来てるんだ。
Takumasa Sakao
そうなんです。
時計仕掛けのオレンジに出てくるスラングみたいなものなんですよね。
増語、完全に増語なんですけど、
そこでビディっていうのはよく見る、
ウォッチするみたいな意味なんですよね。
なのでビディっていうふうにつけてますね。
ken
すごい、ネーミングもすごいこだわりが感じられますね。
Takumasa Sakao
ネーミングはめちゃくちゃ好き。
自画自賛だけど。
ken
めっちゃ大事っすよね。
これ普通のネーミングだったらあんまり使われなそう。
ベタはKubernetesWatcherとか僕つけちゃいそうですけど。
いい、めっちゃいい。
ken
確かにネーミング難しいですよね。
サービスの名前もオープンソースとかも。
そういう意味ではやっぱり他の人が思いつかなそうな名前っていうか、
ベタウォッチとかだと埋もれちゃいそうじゃないですか。
そうですね。
低レイヤーへの憧れ
ken
そういう意味でもめっちゃ秀逸なネーミングですよね。
Takumasa Sakao
ありがとうございます。
ken
私はウォッチのコマンドをそんなに使わないですし、
まだプロダクトを坂尾さんのはまだ使ったことはなかったんですけど、
すごさがけんさんから伝えていただきましたね。
ken
多分ツールSREとかプラットフォームエンジニアリング向けが多い気がします。
Kubernetesとか使ってたりとか。
最近のその流れから言うと、
ken
結構坂尾さんってテイレイヤーというか、
新機能を作っている人から見るとどっちかというとテイレイヤーに寄ってって言ってるような気がするんですけど、
例えばTwitterとかでもWasmとかに興味があって聞いた。
Wasmの過去と未来みたいな感じでまとめてみたんですけど、
そのテイレイヤーに寄ってって言ってるような気がするんですけど、
そのテイレイヤーに行ったきっかけとかなんかあるんですか?
それとも前から興味あったんだけど、どんどんどんどんのめり込んでいくうちに、
その周辺のテイレイヤーの方に行こうと思ったのかな、みたいなのがあったんですかね。
そうですね。
Takumasa Sakao
自分が完全にテイレイヤーやってるかっていうと全然そんなことはないなって思ってるんですけど、
テイレイヤーっていうのは、
結構ハードウェアとか完全にOS作りますとかそのレベルとかも想像されるんで、
テイレイヤーってどこまでやろうなみたいなのがあるんですけど、
興味としてはやっぱりインフラとかどんどんアプリケーションに徐々に低いレイヤーとかに、
比較的低いレイヤーとかに行ったりとか、
それに興味が持ったきっかけで言うと、
一言で言うと、ハッカーへの憧れみたいなのがあるかなって思いますね。
わかる。
やっぱりこの人ハッカーだなって思うと、
ハッカーに関しては、
なんかそのレイヤーがわかるからこそできる問題解決、
例えばバグを見つけるとか、
そのバグが情報の中に入ってくるとか、
その情報の中に入ってくるとか、
その情報の中に入ってくるとか、
その情報の中に入ってくるとか、
パフォーマンスチューニングとかですよね。
低レイヤーを改善して高速化しますとか、
そういう問題解決ができる人に憧れがあって、
だから自分まだ全然できないですけど、
ハッカーに関してはハッカーに関してはハッカーに関しては、
憧れがあって、
だから自分まだ全然できないですけど、
低レイヤーに対して憧れっていうのがずっとありますね。
ken
めっちゃわかります。
僕もラストを書いてる時に、
Rubyとは書いてる時とは違った、
コンピューターと晴らしてる感っていうか、
メモリとかを意識してるんで、
クラウドデータストアの経験
ken
今コンピューターがこういう風に処理してるんだなみたいなのを、
Rubyの時より断然意識するようになったんですよね。
だからより視野が広がって、
人間相手というよりはコンピューターと話してる感があったんですよね。
確かに。
Takumasa Sakao
特にラストとかだとコンパイラーから怒られますしね。
感覚って結構すごい自分にとっては良くて、
ken
Ruby書く時により意識するようにパフォーマントなコードを書くっていうのも、
コンピューターがこういう風に解釈しててっていうのを、
意識するようになった、いいきっかけだったなと思うんですよね。
ちなみにそのキャリアの変遷でいうと、
Takumasa Sakao
カズさんと一緒に働かれてた頃はバックエンドエンジニアだったんでしたっけ?
ken
そうですね。
何をメインで書かれてたんですか、当時は。
ken
当時はもうRuby on Railsで、
サーバー側のアプリケーションロジックを書いてましたね。
Takumasa Sakao
そうですね。
Ruby on Railsで、
サーバー側のアプリケーションロジックを書いてましたね。
ken
そうですね。
フロントって言うと、モバイルゲームを作っている会社だったんで、
フロントって言うと、C++とかそっちの全然違う。
Takumasa Sakao
アンチ的なウェブアプリケーションとはまた毛色も違う。
ken
いわゆるフロントエンドとは違いますよね。
Takumasa Sakao
感じですよね。
ken
で、そこから基本的には、
私が辞めた後からどういうことをやってたのかわからないんですけど、
基本的にプラットフォームとか触ってたのかな?
そうですね。
Takumasa Sakao
一応その技術基盤チームっていうところにいて、
Goで通貨管理。
モバイルゲームの仮想通貨ってあるじゃないですか。
仮想通貨って言っても、ビットコインとかじゃなくて、
ゲーム内通貨ですね。
それを管理する。
マイクロサービスと言っていいかな?
マイクロサービスみたいなのを作ってましたね。
ken
で、今のKubernetesの方にいたんですか?
Takumasa Sakao
そうですね。
別の会社にいたんですけど、
それから今の会社は3社目みたいな感じですね。
ken
仮想通貨というか、
仮想通貨というと本当にクリプトになっちゃいますからね。
ゲーム内通貨の方が楽しみか?
ゲーム内通貨ですね。
サーバーとか結構作る要件とか厳しい印象があるんですよね。
僕、ゲーム業界で働いたことないですけど、
例えばパフォーマンスも求められそうだし、
セキュリティというか、
不正に額を増やすような変なリクエストが来ないようにとか、
気をつけなきゃいけなかったりとか、
すごい技術的にも面白そうな印象がありますけど、
どうですか?当時作っていて、GOで作られてたんですよね。
Takumasa Sakao
そうですね。
本当にいい勉強にはなったなというふうに思ってますね。
もちろんそのGOのプロダクションコードを書くっていうのも、
そこで初めて経験させてもらえたし、
そこからGOへの、GOとの繋がりができたんですね。
そこが良かったし、
技術的にもですね、
アプリケーションロジックももちろん、
いろいろ勉強になるところはあったんですけど、
特に自分が面白かったのは、
GCPをそこで初めて使ったんですよね。
Google App Engineと、
クラウドデータストアとかを使いました。
そうですね。
やっぱりおっしゃる通り、
結構トラフィックが多かったりとかするので、
そこでどうやってスケーラブルなアプリケーションを作るのか、
みたいなのは、
そこでいろいろ勉強させてもらえたなというふうには思ってますね。
スケーラブルに作りたいんで、
リレーショナルデータベース、
今だとそのNewSQLとか、
あると思うんですけど、
リレーショナルデータベースじゃなくて、
クラウドデータストアってNoSQLだったんですけど、
それを使って作るっていうのも、
自分にとっては新しい経験でしたし、
それを使ったデータの構造とか、
データ構造の持ち方とか、
そういうのもリレーショナルデータベースとは考え方もちょっと違うところもあって、
その辺は非常に勉強になりましたね。
それめちゃくちゃ楽しそうな、僕大好きなトピックですね。
次お会いしたとき、
ken
クラウドビールを飲みながら3時間ぐらい語りたい。
ぜひぜひ。
僕も勉強させていただきたいですよ。
Takumasa Sakao
ちなみにそのクラウドデータストアとか、
カズさんとの思い出エピソードがあると、
事前メモでちょっと伺ったんですけど、
ken
これ聞いてもいいんですか?
はい、もちろんです。
2人はどういう関係だったの?
どういう関係というか、
カズさんがちょっと先輩で、みたいなことは伺ってたんですけど。
そうですね。
先輩エンジニアでしたので、
Takumasa Sakao
いろいろ教えてもらったっていうのは結構あって、
エンジニアとしてのスタンスとかですかね。
すごいかっこいいこと言っちゃうな。
かっこいい。
お金もらってんのかなって思われちゃう。
ken
そうですね。
Takumasa Sakao
エピソードとしては、
僕新卒だったんで、
新卒時代ですね、
多分実感、
僕が先輩になるときに、
クオリティに妥協したプロリークみたいなのを出したことがあったんですよ。
その時にカズさんから、
クオリティに妥協しちゃうと伸びなくなっちゃうので、
気をつけた方がいいですよ、みたいな。
的なことを言われたことがあるんですよね。
僕はすごい覚えてるんですけど、
その時にカズさんから、
クオリティに妥協したプロリークみたいなのを出したことがあったんですよ。
その時にカズさんから、
クオリティに妥協したプロリークみたいなのを出したことがあるんですよね。
僕はすごい覚えてるんですけど、
ken
カズさん覚えてるかどうかわかんないんですけど。
Takumasa Sakao
カズさん覚えてるんですか?
ken
覚えてます。
何でかって言うと、
言われたら確かに言ったような思い出があって、
何でかって言うと、
この時、赤月に入った時、
私フリーランスで外部の人間だったんですよね。
だから、
これを言った後に、
何て言うんでしょう。
外部から入ってきてるエンジニアとして、
何て言うんでしょう。
偉そうなことじゃないですけど、
言っちゃったんじゃないかなみたいな風に、
多分悩みました。
言ってよかったのかな、あんなこと。
偉そうなこと言って。
ken
7年越しに語る裏側みたいな。
Takumasa Sakao
でも、非常に言ってもらえてよかったなって思ってますね。
ken
暖かい話。
Takumasa Sakao
それが結構心に残ってて、
それから色々気を付けてますね。
クオリティに妥協しないようにしようとか。
すごいな。
ken
クオリティへの情熱をすごい感じたのが、
先ほどカズさんもちらっと触れましたけど、
Webアセンブリーについての勉強
ken
KiitaのWebアセンブリーの記事、
僕も拝見しましたけど、
めちゃくちゃ勉強になりました。
僕、仕事でワズマをガッツリ触ってるわけじゃないので、
Webアセンブリーとは何かについて、
背景とか歴史とかからすごい丁寧に書かれていて、
これ雑誌の記事のワンセクションかなと思って。
プログラミングのアウトプットだけじゃなくて、
こういうところにもクオリティを求める姿勢というのを感じて、
この記事めちゃくちゃ良かったです。
勉強になりました、普通に。
Takumasa Sakao
ありがとうございました。
ありがとうございます。
ken
普通に知らないことだらけでした。
ken
はい。
Webアセンブリー、僕のイメージだと、
ちょろっとラストで書いたときは、
ライフゲームか何かをブラウザーで動かすようなコードか何かを書いたことがあって、
今その記事見ると結構ブラウザー以外の方にも
Webアセンブリーが進出してきてるっていうのを見て、
えーとか思ってですね。
Takumasa Sakao
うんうんうん。
ken
エッジコンピューティングとかなんですよね、多分ね。
ken
うんうんうん。
知らないことでしたね。
ken
うんうんうん。
エッジコンピューティングを提供する側からも多分、
ワズームがあった方がどうなんだろう。
パフォーマンス出るし、でも提言とかも多いですよね。
多分そのワズームモジュールのバイトサイズとか、
インストラクションのコードサイズとかも多いし、
一応うちもその、これパブリックに出してるサービスですけど、
ショピファイファンクションみたいなの出していて、
そこワズームモジュールで実行環境なんですよね。
Takumasa Sakao
うんうんうん。
ken
だけど結構制限とかもちろん多いので、
具体的にどこまで使えるかちょっと分かんないですけど、
これから結構ユースケースが広がっていくような、
個人的にも注目している技術ではありますね。
うんうんうん。
Takumasa Sakao
そうですね。
もっと使われるようになったら、
結構いろいろ面白そうなことができそうだなっていうのがあって、
個人的にも興味持ってますね。
うん。
ken
Rubyとかでも3.2ですかねとかで確か、
ワズームモジュールのサポートが入ったりとか、
最近いろんなJavaScriptとかRust以外でも結構聞くし、
Goも多分サポートされてるんですよね。
そうですね。Goもありますね。
うん。
Takumasa Sakao
いや面白いなここで。
うん。
ken
面白いですよね。
ken
また別のプログラミング言語というよりは、
どっちかっていうとポータブルでDockerみたいな感じの感じで、
いろんなところに使えるみたいな。
うん。
すごい夢ありますよね。
そうですね。
どこまで、
これからどう発展していくかみたいなのは、
Takumasa Sakao
もちろん全然僕もわからないんですけど、
WasmのコンポーネントモデルとWAG
Takumasa Sakao
広まって使われていくようになっていくと、
いいなあっていうふうに思ってますね。
なんか特に個人的に面白いところは、
RubyとかJavaScriptとか、
いろんな言語でWasmのモジュールって作ることができて、
今絶賛策定中の仕様で、
Wasmコンポーネントモデルっていうのがあるんですけど、
いろんな言語で、
例えばこのコンポーネントモデルを使って、
Wasmのモジュールを作ることができて、
いろんな言語で、
言語で例えばコンポーネントを作って、
Rustっていう言語でコンポーネントを作って、
Goっていう言語でコンポーネントを作って、
そのコンポーネントをつないで、
ライブラリーみたいにして使えるようにするみたいな、
そういう使用策定も進んでいて、
そうなると結構、
今までプログラミング言語ごとにライブラリーって作ったりとかしてたと思うんですけど、
そのプログラミング言語のサイロ化みたいなのが解消されるみたいなのが、
確かに目指す世界としては面白いなみたいな、
実際どうなんだろうなみたいなのは、
すごい疑問はいっぱいあるんですけど、
そういうのは結構有名があっていいなっていうのが、
個人的には面白いなって思ってるポイントですね。
ken
コンポーネントモデル知らなかったですよ、
このクイズ読む前めちゃくちゃ面白そうですよね。
Takumasa Sakao
面白いそうです。
ken
Wasm Other Servicesとか出てきそうだけど、
コンポーネントをカタログで見れてとか、
それをそのままデプロイ環境にデプロイしてみたいな、
Takumasa Sakao
あるのかな?
そうですね、実際にサービスとしては、
もちろんWasmランタイムのサービスみたいなのは色々出てきてて、
サーバーレスみたいなイメージで、
Wasm関数をデプロイできるみたいなのももちろんありますし、
さっきおっしゃってたカタログみたいな概念で言うと、
WAGっていう仕様があって、
それは何かっていうと、
Wasmのコンポーネントのレポジトリの仕様ですね。
そのWasmコンポーネントをどうやってディストリビュートするかみたいな、
そういうのを今策定して実装してたりとかするんで、
だからPIPとかNPMとかですかね、
NPMとかみたいにパッケージを配布するみたいなのが、
そういうのができるようになるんだろうなとは思います。
面白い。もう一回教えてください。WAG?
ken
WAGですね。WARG。
Takumasa Sakao
なるほどね。
ken
WAGインストールコンポーネントXみたいな感じになる世界観が来るんですかね。
そうかもしれないですね。
Takumasa Sakao
どうなるのか。
僕もそこまでこの仕様に関しては全然思ってないんで、
適当なこと言っちゃってるかもしれないですけど、
そういうイメージではあります。
ken
なるほど。じゃあちょっとここら辺でサービス作って、
資金調達に。
Takumasa Sakao
AIの次は。
ken
WAGが来ると。
ken
WAGが来るかもしれない。
Takumasa Sakao
めちゃくちゃ勉強になる。
ken
このバイトコードアライアンスっていうのが、
この仕様策定をリードしている。
いろんな企業からの、
集めた団体というか、
要するに一つの企業がこういうのを主導しちゃうと、
いろいろ問題が出てくるので、
アライアンスという形でやってるみたいな感じですよね。
たぶんそうですね。
Takumasa Sakao
成り立ちを詳しく知ってるわけではないんですけど、
イメージとしてはそういうふうに思ってますね。
やっぱり一つの企業に独占して、
たぶん仕様とか決めちゃうと、
それはそれでやっぱり回りついていかないじゃないですか。
ブラウザ対応とかも出ていかないし。
そういうのがあって、
たぶんみんなで一緒に頑張って作りましょう
Wasmのパッケージ配布と展望
Takumasa Sakao
っていう感じになってるのかなって思ってますね。
そうですね。
この記事で知って、
ken
サイトに行ったら、
ken
うちの会社もメンバーだみたいなことを話したり。
そうなんですね。
ken
面白いですね、ここら辺。
ken
じゃあ、2回目はわずむかい坂川さんを呼んで。
はい。
Takumasa Sakao
もう全然。
クーベコンの話でもいいですが。
ken
それも聞きたかったです。
ちなみにクーベコンは、
どういうキーノートの内容とかって
ken
もう出てるんでしたっけ?
たぶんそうですね。
もちろんスケジュールというのは出てるんで、
Takumasa Sakao
大まかなトピックはもう分かるのかな。
実はまだどれ聞こうか。
これからですね。
はい。
ken
ちょっと今全然手が回ってなくて。
Takumasa Sakao
またまた決めようかなって思ってるところですね。
あと、並走して、
コロケイテッドイベントとして、
わずむデイだったかな。
わずむのワンデイイベントみたいなのもあるんで、
それにも参加しようかなとは思ってますね。
クーベコンのサブイベントですね。
そうですね。
サブイベントという形で、
いろいろあるんですよね。
ちょっと名前がいろいろ出てこないけど。
CNCF周りのプロジェクトのカンファレンス。
例えばシリウムとか、
サノスとかもあったかな。
そういうCNCFプロジェクトがあるんですけど、
それに参加しようかなとは思ってますね。
クーベコンのサブイベント。
そうですね。
クーベコンにフォーカスしたイベントみたいなのが、
コロケイテッドイベントという形で、
1日取られていて、
それにわずむもあるので、
わずむの話が1日聞ける日があって、
それには参加しようかなというふうに、
今は思ってますね。
ken
面白そう。
クーベコンだけかと思って見てたんですけど、
全然そんなことなくて、
いろんなトピック、
インフラ系みたいな話とか、
いろんなのが入ってて、
こんなのあるんだみたいな。
Takumasa Sakao
クーベコン、クラウドネイティブコンなので、
やっぱり相当スコープはでかいですよね。
ken
でかいですね。
ken
じゃあ日本帰国されて落ち着いたら、
レポート返しましょうよ。
レポートランとかもお待ちしてますよ。
Takumasa Sakao
そうですね。
僕がモンスターミッシェルに行った話とか。
行くんですか?
ken
モンスターミッシェル行く予定です。
結構遠いですよね。
Takumasa Sakao
僕も行ったことあるんですけど、パリから。
ken
日帰りでギリ行けるぐらいじゃないですか。
Takumasa Sakao
結構しんどいですよね。
ken
そうですね。日帰りで行く予定ですね。
坂尾さんの技術顧問の仕事
ken
だから次やりましょうね。
Takumasa Sakao
ぜひぜひ読んでいただけると嬉しいです。
ken
しゃべれるところまででいいんですけど、
技術顧問もやってらっしゃると伺ってるんですけど、
どんなことやってらっしゃるんですか?
Takumasa Sakao
難しいですよね、技術顧問って。
何やってんだろうみたいな。
ken
よく乗り換えのネタになります。
Takumasa Sakao
そうなんですか。
僕は、
それはCTOが友達の会社があって、
そこでちょっと、
そういう動きをさせてもらってるんで、
ちょっと書いてるんですけど、
そこでどういうことやってるかっていうと、
技術選定のお手伝いとか、
なんかそうですね、
CTOとワンワンして、
どういう方針で行こうかみたいなのとか、
レビューの方針とか、
エンジニア文化みたいなところとか、
どういう仕組みあったらいいかとか、
アーキテクチャディシジョンレコードだとか、
そういう文化的という、
そういう、
文化的と言えるのかな、わかんない。
チーム運用とか、
そういうのの壁打ちであったりとか、
そういうのをちょっとやってたりはしますね。
別にその会社では、
技術顧問だけじゃなくて、
普通にコードを書いて働いてたりもするんですけど、
CTOは友達なんで、
普通にワンワンでそういうのを話してるっていうのが、
結構そういう感じですね。
そうですね、
ken
技術顧問っていろんな、もちろんスタイルとか、
どういうことをやりますよっていうのは、
会社によって全然違うと思うんですけど、
坂尾さんがどんなことをやってらっしゃるのかな、
Takumasa Sakao
そうですね。
そんなことやってますね。
やっぱり技術選定とかが、
壁打ちとか、そういうのが大きいのかな、
大事だと思いますね。
ken
第三者の視点みたいなのが欲しいじゃないですか。
そうなんですよね。
Takumasa Sakao
自分で例えば、
一人でやろうと思ったら、
結構迷っちゃうよなみたいな。
迷っちゃって、
ロツボにハマっちゃったりとか、
いろいろあるよなと思って、
外部からそういうふうにして、
外部の視点から、
そういうのをちょっとフィードバックくれるっていうのは、
バーニーなのかもしれないなっていうふうには思ってますね。
ken
そうですね。
ken
特に立ち上げ初期のスタートアップとかだと、
単純に手が足りてなかったり、
トップダウンで見れる人がいなかったりとか、
CTOは頭では分かってても、
Takumasa Sakao
誰か壁打ちが欲しいみたいなのは相当あると思うんだよね。
ken
ボトムアップでプロダクト作っていくのは、
やっぱりプロデューサーがいるけど、
そういう方針決めとか言ってくれるとありがたいですよね。
Takumasa Sakao
そう思いますね。
ken
やっぱり技術顧問とかの仕事って、
リファラルとかで見つけることが多いかなという、
僕の印象ですね。友達とか。
Takumasa Sakao
そうなんですね。
ken
カズさんやらないですか?技術顧問。
ドイツ流を。
そうですね。
ken
長い目で見れば、
今はちょっと時間がなさすぎるんで、
考えてはないんですけど。
面白そう。
面白いと思いますね。
いろんな視点も、また自社とは違う、
自分が働いているところとは違うような話とか、
出てくるじゃないですか。
僕がフリーランスやってた時も、いろんな会社見れるっていうのは、
確かに。
技術顧問の重要性とメリット
ken
いいですね。
会社外とのつながりを、エンジニアのつながりを持てるっていうのもいいですよね。
本業楽しくても、
本業ばっかりやってると、
第三者の目線とかたまに欲しくなったりするから。
ken
はい。
そんな感じで、あっという間の1時間。
ken
本当だ。
ですかね。
ken
話を。
全然喋ってない。
Takumasa Sakao
話足りたかどうかで言うと全然ないんですけど。
ken
これはまた聞いていただくしかないですね。
ken
そうですね。
僕、日本に帰る時、東京に行かないんですよね。
つまり実家が京都で、
私が福岡。坂本さん確か福岡出身。
Takumasa Sakao
そうですね。私は福岡です。
ken
福岡。
坂本さんがいることは全然ないんで。
Takumasa Sakao
そうですね。
東京に行く機会ないですよね。
なるほどな。またぜひ機会あれば、
お願いします。
ken
C社バーとか、日本で流行ってるか知らなかったですね。
Takumasa Sakao
こっちは結構あるんですけど。
そうなんですね。結構あります。
結構って言うほどじゃないか。
ken
ありますね。
Takumasa Sakao
はいはい。
いたるところに。すごい。
ken
いたるところに。
Takumasa Sakao
繁華街にはあるかなぐらいですね。
ken
ベランダで捨てたりするんですけど。
Takumasa Sakao
こっちも。
アラブ系の人かなみたいな感じで。
ken
いいですね。
公園に持ってくるとかもやってますよ。
Takumasa Sakao
バーベキューしながらセット持ってきてみんな。
めっちゃエモいな。
ken
という感じで。
また話したいですね。
ken
ぜひやりましょう。
ken
というわけで今回、
特英級のエンジニアの坂本さんに来ていただいて、
めっちゃオープンソースとか、そうですね。
WASMとかめっちゃいいこと聞いたんで。
すごい良かった回になったと思います。
ken
めちゃくちゃ楽しかったです。
Takumasa Sakao
楽しかったです。こちらこそ。
気持ちよく喋らせてもらいました。ありがとうございます。
ken
こちらこそ改めてありがとうございます。
参加していただいて。
という感じで、
今回坂本さん本当にありがとうございました。
Takumasa Sakao
また話しましょう。
ありがとうございました。
55:16

Comments

Scroll