音声書き起こし
1. オープニング
Guest
こんにちは、UITのポテト4dです。
Guest
ユーザーインターフェースとテクノロジーを愛する、開発のためのビークリー、ポピキャストUIT INSIDE。今週も始めたいと思います。
Guest
今回はですね、ゲストにUITのえあさんとえ、山本達也さんをお呼びしまして。え、LINEのパスキーへのスポンサリングをテーマにえ、話していきたいと思います。
Guest
お2人とも本日はよろしくお願いいたします、
Guest
お願いします
Guest
よろしくお願いします。
2. LINE の husky へのスポンサリング状況について
Guest
さてでは、パソコン内に入っていきたいんですけど、ラインがアスキーにコンサリングしていることを、実は誰も知らないのではという話があるので、ちょっと初めにアサーの方から紹介いただきたいんですけど、よろしいでしょうか。
Guest
はい、わかりましたラインはですね、ハスキーのスポンサーリングを、2021年の3月から開始しています。
Guest
で、これはオープンコレクティブのスポンサー枠で、毎月100ドル行っています。
Guest
ありがとうございますこれって、あの、そもそもポンサリングの経緯で言うと、どういう感じでコンサリングすることになったんですかね。
Guest
そうですね、元々きっかけとしては、僕の入ってるLINEポイントクラブのプロジェクトで、あのコミットする時にま、どういう文脈で対応していたかみたいな話がわからないので、まジラの番号を頭につけるんだみたいなこと
Guest
自動でやっていて、ま。これをお手製のギッドフックを使ってやっていたんですね。
Guest
で、まあ、他のプロジェクトの方が、これをそのコミットログとかを見て、これってどうやってやってるの。みたいな話をまあ聞かれて、その時にま色々ギットfox使ってますよ。みたいな話に
Guest
だったんですけど、
Guest
まあ、なんか色々。その時に、なんかその方からも色々提案いただいてま。こういうギットテンプレートを使う方法があるんじゃない。とか、ま、色々レフトフックとか、振り込みトとかま、そういう色々なライブラリがありますよね。みたいな話が
Guest
あってま、その中でまたタイミングよくハスキーブ5の話が出てきてま、最近出ましたよね。みたいな話で、ま、1回使ってみたいよねみたいな
Guest
話とかも上がってて、
Guest
で、やっぱりハスキーといえば、リントステージと組み合わせて使うことがやっぱり広く知られているそうですか。なっていう感じなんで、ま、あの、ちょうどリントとかもかけたいよね。みたいな話もあったんですけど、
Guest
やっぱりその新しいライセンス形態ですよね。あの、mitライセンスじゃなくなったっていうところで、ま。スポンサリングしないと、うちとしては使いなせんよね。みたいな
Guest
話もあったんですけど、ま、じゃあ、それならスポンサリングしてしまえば。では、みたいなことになって、ちょっと提案してみた形ですね。そしたら、結構あのすっと話がとって、スポンサリングしていただけることになったので、
Guest
良いかなと思ってます。
Guest
してしまえばいいので、は。ってなるのかい。
Guest
なるほど、なるほど、あであれば初めはでもあれなんですね、お手製のギフックでやってたんですね、
Guest
そうですね、なんでプロジェクトに参加した人がクローンしてきて、なんか
Guest
その自分でシルスクリプトか何かを実行して、で、あの、セルスクリプトをギットフックスのフォルダーにコピーしないと使えないっていう。ちょっと1点もあったのがま、結構課題だったんですけど、はい、
Guest
この辺が結構多分、ハスキーのv5からは割と楽というか、
Guest
なんなんでしょう。ギッドネイティブな感じで使えるようになってるので、結構いやすくなったかなっていう感じがします。
Guest
いや、なんか結構ハスキーというか、まあ、プリッコミット系の復旧ツールって、結構どっちかって言うと、あのリントができてない場合にコミットさせないとか、テストができてない場合にコミ
Guest
させないために使われるのが多いかなと思うんですけど、ジラの番号を先頭に自動でつける、すごい便利とだなと単純に思いましたね。
Guest
そうですね、かなかコード守るためのものっていう印象が良いんですけど、結構利便性を高めるなかなかも。
Guest
なるほど、なるほどま、それで、あの無事3月からスポンサリングを開してま現在も続いているっていう状態ですね。そうですね、
Guest
ハスキーで言うと、今はもうライセンスがまたあ、mitに戻ったかなと思うんですけど。まあ、それでも引き続きコーサリングはやっていっていいかなって感じの印象ですかね。
Guest
そうですね、
Guest
ちょっとその辺、あの他も色々ズルもあるかなと思うんで、その辺の話もしていければな思います。
Guest
では、少し話変わるんですけど、も、結構そのハスキーをま、今後も。基本的にはスポンサリングしていくみたいな方針で、私たちはいるかなと思うんですけど、まあ、一方で。今回あのアモンさんが調査されていた、その振り込みトや、あのレクト
3. pre-commit 系ツール大比較
Guest
くみたいなものも色々。他にもオルタニティとのあるツールってのは多いのかなと思っていて、結構以前、あの車内で
Guest
イリントのコンフィグの開発とかのアップデートもあって、結構あの山本さんの方で、この辺りとか結構しっかり見られていたのかなって印象があるんで、ちょっと聞きたいんですけど、
Guest
クリコミット系のツールってなんかどうですかね。他は結構まなんかまあ、みんなハスキーがデファクトだから、とりあえずハスキー使ってるってところはあると思うんですけど、なんか
Guest
どんな感じでした。他のツールとの比較っていう観点で言うと、
Guest
そうですね。最終的に僕が比較対象としたのは、ハスキーのv4とv6とシンプルギットfoxっていうライブラリーですね。
Guest
でと、先ほど話してたように、ハスキーのミットじゃなくなった問題に際して、ハスキーとシンプルギットフックを調査したっていう感じです。で
Guest
ハスキーのv4から6までについて、一応ちょっと確認しておくと、ややこしいんですけど。
Guest
ライセンスがそれぞれv4がミトvgがパリティライセンスv6がミットと
Guest
で、vgのパリティアクセスがちょっと。僕もそんなに詳しくはないんですけど、とにかく少り少量利用するときは、ちょっと考えなくちゃいけないよねっていうやつですね。
Guest
でえ、実装方針がこのv4とv5以降で大きく変わってるっていうところがポイントで。
Guest
ハスキーvoの方、こっちはかなりおさらいな感じになるんですけど、
Guest
パッケージェイソンにギットfox用のコマンドを書いておくと、えー。ネイティブのgtfoxが実行される時に、え、呼び出してくれると、
Guest
具体的な動きとしては、npmインストールした時に、え、ギッドフックハイカにハスキー用のシェルスクリプトを設置してくれるので、
Guest
福士にそれ経由でパッケージェソなの。コマンド読んでくれると、
Guest
npmインストール時にこう色々と準備してくれるので、まあ、いわゆる自動インストールができて、便利みたいなのが、ハスキーの特徴だと思います。
Guest
で、ハスキーがv後でミットじゃなくなったっていう点だけ、結構盛り上がってる印象が僕の中にあるんですけど、
Guest
一応voも。デリケートなったわけではなくて、実際、vgのリリースの後も、voのパッチアップデートがあるあります。
Guest
引き続き、メンテナンスされている
Guest
そうですね。
Guest
で、ハスキーvgなんですけども、そのハスキーvgはえ、ハスキーの新しい方針に基づいて、実装されたものってことで、
Guest
ブヨと五完成が全くないですとで、新しい方針は、その分4の課題を解消するっていうのがポイントで、
Guest
作者のブログでもいくつか言及がされています。
Guest
で、voでは、さっき言った通り、ドットギトフックハイカーに定義できるフック用のシェルスクリプト
Guest
を、全て設置しているプリコミット以外のものも全て設置してるので、パフォーマンスが悪いよっていうことが1つ課題でした。と
Guest
あと、まあ、さっきもう1つ言った通り、ハスキーといえば、自動インストールで嬉しいっていうとこがあるんですけど、あの、パッケージマネージャーのキャッシュが働く関係で、うまくインストールできないケースが
Guest
あるらしいです。ちょっと僕はあんまり遭遇したことないんですけど、結構報報告されてるみたい
Guest
で。なので、vg以降では、あのフックごとにシェルスクリプトを作成すること。っていうことと、え、インストール用のコマンドが定義された。
Guest
結構変わっている
Guest
で、このこれらの機能を実現するために、ギットギットの機能のコアフックパスっていうのがあるんですけど、それを使っていますと
Guest
で、これはギットフックのシェルスクリプトって、ドットギットフックハイカーにあるわけですけど、この位置をドット、ハスキーハイカーに変更するよとなので、
Guest
いうことができるんです。ね。ぎ
Guest
とのるルートのディレクトリリポジトリのルートにドットハスキーっていうフォルダができて、そこに色々入れるよっていう形に
Guest
なってますとで、まあ、復旧させるコマンドは、そこにセルスクリプトを集を置いて、プリコミットとかを置いて記述すると、なので、
Guest
必要なものしか置かないから、早いぜっていう感じですね。で、
Guest
ハスキーv6はまあ、ハスキーv後のミット版っていう認識で、まあほぼ合ってるとは思います。リリースのタイミングで、結構
Guest
あのギットのコミットの差分が結構あるんですけど、結構ディレクトリの構造とかを変えただけみたいで、実装上はあんまり変わんないはず
Guest
で、元々
Guest
ハスキーがvをリリースした時に、小用利用の優勝化は一時的なもので、そのうちミットに戻るよみたいなことが書いてあったんですよね。
Guest
で、まあ、じゃあいつミットに戻るんだよみたいな話が結構あって、まあ、LINEのスポンサーとかの話にも繋がるわけなんですけど、も、
Guest
まあの議論やらスポンサーやらの結果。まあ、思ったよりは、早いタイミングで、
Guest
商用利用もできるミットに適用されたブログがリリースされたという感じですね。
Guest
なので、ちょっと話長くなっちゃったんですけど。比較対象としては、ミットで使えるかつか、構造がそれぞれ異なってる
Guest
v4とv6が比較対象に上がってましたとで、
Guest
もう1つシンプルgidfoxなんですけど、まあ、ハスキーv5でミットじゃない問題の時に対抗場として、上がったライブラリで、
Guest
僕はリントステージのリードmで見つけました。で、リントステージとかを導入する時って、mrmコマンドとかで
Guest
設定する人結構多いと思うんですけど、まあ、コマンド1つでいろんな設定を自動でやってくれる便利コマンドみたい
Guest
で、それが今までハスキーだったのが、シンポログってフックに変わっていたっていうのが、結構大きな話題にもなっていて、
Guest
ただまあ現在はちょっとハスキーv6に戻ってるんですけどね。で、このシンプルギットfoxっていうのが
Guest
こっちは、さっき言ったコアフックパスっていうのは使わず。パッケージェイソンに定義したコマンドを
Guest
シンプルギットfoxのcliを叩いて、え、ドットキットfox配下にコピーするものっていう感じになってますね。
Guest
さっきのハスキーv6の場合は、結局ギットが参照するシェーズルスクリプトの場所を変えるだけなので、
Guest
そのシェルスクリプトをいじった後に、サインストールみたいな作業はないわけなんですけど、はい、シンプルキットfoxの場合は、
Guest
そのパッケージェイソンから。ドキットクックの方にこうコピーする作業が発生するので、そのタイミングで忘れないでこう、
Guest
シンプルギット、フックコマンドを叩かなくちゃいけないよっていう感じですね。なので、まあ、ブロも
Guest
シンプルgitoxをまかなりシンプルな構造にはなったなという印象ではあるんですけれども、
Guest
なので、一応v4とvロとシンプルギットボックスを比較して色々検討しました。っていう感じですね、
Guest
じゃ、結構あれですね、それぞれで、アプローチは違うけれども、まあ、割とどれも簡潔に仕上がってるんで
Guest
ま。使う上で、大きな問題はどれもないかなっていう風なところではある
Guest
そうですね。
Guest
ちなみに、さっき、あのけしさんがあの冒頭でおっしゃってた。あの、他のプロジェクトの方から、仕組みを聞いたえを聞かれた時に、他のやつも調べました。っていうので、レフトフックっていうのと、
Guest
プリコミットっていうのをえ、調べたって話が上がったかなと思うんですけど、こちらはけしはいさんどうですかね。ハスキーエブロや、シンプルギットと比較すると、
Guest
なんか作りの違いとかってありそう
Guest
でした。そうですね、今挙げた2つレフトフックとプリコミットっていうのは、基本的にロードの環境に限らずま、色んなランゲージで使えるような
Guest
ものになっているっていうま認識であって、で、プリコミットの方はもちろん、もうプリコミットだけっていう
Guest
ものだとは思うんですが、ま、この辺とそののノードだけかどうかっていうところの違いって結構大きいのかなっていう風に思ってて、
Guest
ま。なんか、その他に、例えばブリーでツール入れなきゃいけないとか
Guest
ま、そういうものが発生してくると、まあ、若干ちょっと導入が手間なのかなとかっていうのは思ったりとかは
Guest
しましたし、ま、あとは、その使っている人の数というか、なんていうんですか。まあ、デファクトであるハスキーがいいよねっていうような、
Guest
流れにはなってったかな、という感じですかね。
Guest
ああ、なるほど、なるほど、確かにノート以外のっていう観点も確かにありますね。なんか、私たちはどうしてもフロンテンの開発、もし、あのjsの開発っていうので、
Guest
基本的にjsの環境が前提として話しちゃいますけど、確かに確かにほんとありがとうございます。
Guest
私、昔、ちょっとプリコミット使ってたんですけど、もう今はスキー使っちゃってますね。なるほど、ありがとうございます
Guest
ちょっと、あの全部書ノートの方に書いておこうかなと思いますので。詳しいま中身の構造とか、ぜひぜひ見ていきたいっていう人がいれば、
Guest
初のとの方からアクセスだければと思います。え、2人とも紹介ありがとうございます
Guest
はい、ありがとうございます、
Guest
ありがとうございます
4. 今後も husky を利用する?
Guest
ではですね、最後に、ま、今結構いろんなツールの企画とかも話していったかなとは思うんですけれども、
Guest
あの、これからもアスキー使っていきますか。っていうのを、ちょっと聞きたいなと思っております。じゃあ、まずは山本さんからお願いしてもいいですか。
Guest
はい、
Guest
僕はえ、一般ユーザーとしても、もちろんスポンサー企業所属のエンジニアとしても、はいえ、ハスキーを使っていこうかなっていう風には思っています。
Guest
で、先ほどの比較対象の範囲での判断なんですけど。
Guest
ハスキーvoはまあ、ハスキーが課題を持ってる以上、まあ使えないようなっていう
Guest
印象ですかね。一応、いろんな自分自身が直接こう課題とかにまだあんま直面している印象はないんですけど、もま使ってるライブラリがそういう思想である印象を従おうかなという風に思って、
Guest
でえ。残りのハスキーブロと、シンプルギットボックスについてなんですけど、
Guest
正直、実走面ライブラリの実走面で言うと、どちらもネイティブのギットfoxの薄いラッパみたいな
Guest
感じなので、あまり差はないかなっていう印象も持ってます。
Guest
ただ、ossの認知度とか、コミュニティの規模の差とかを判断すると、ハスキーv録なのかなっていう
Guest
感じの判断ま、実際、あのハスキーの方が皆さん使ってることも多いので、
Guest
あの、新しくプロジェクトはとか、チームに入った人がなんだ。シンプルギットクスってってなるよりも、あ、ハスキーなのねの方がまあ
Guest
めんどくさい会話もないかなみたいな。まあ、実態として、その人がハスキーブイヨンしか知らなかったら、まあ頑張ってリーと読んでくれよって話なんですけど、まあ、そういう心のあれ的にも、まあブ録を外す理由はないのかなという
Guest
判断ですね。
Guest
なるほど、ありがとうございます。
Guest
そうですね、確かにま、どちらも同じ薄さだうん。例えば、まあこれでハスキーがすごい難解な知識を要求されるとかであれば、知名度があっても、そうそうそうその比較対象になるかもしれないですけど、同じようなシンプルさなら、
Guest
より一般的なとか、ディファクトに近いものを使っていきたいってのはありますよね。そうそう、そうそうそう、確かにあのごさんはどうですか。
Guest
そうですね、僕も山本さんと同じように、ま、基本的にはハスキーを使っていきたいな、という感じがしてます。
Guest
まあ、なんか半分言い出しっぺだからみたいなところもなくはないんですけど、
Guest
はいはいはい、
Guest
まただなんでしょうね。あのも、もちろん、そのギット、ネイティブ感、その薄いラッパーであるっていうところは、もちろんすごい好印象だったし。あの、そうですね、元々ポイントクラブでやってたこと、その
Guest
ジラの番号をですね。あの、プレフィックスにつけるとかま、そういうこともなんか追加しやすい
Guest
なんででしょう。あの、今までだとなんでしょう。npmのスクリプトを実行するっていう考え方だったのが、まあ、ほんとになんでセルスクリプトを置いておけば、ま。それを実行してくれるような
Guest
イメージに変わっているので、ま、そういうところもなんかメテもしやすいし、新しいメンバー入る時もまここにあるよっていう風に伝えやすい。ま、さっき、山本さんが言ってたことと同じようなことですね。
Guest
があるので、ま、結構この辺があの理由で使っていきたいかなと思いました。
Guest
なるほど、ありがとうございます。そうですね、確かにそのギットネイティブ感が高まることによってま
Guest
なんでしょう。今までってまとはいえ、ちょっとバッキーシーソンに書く都合もあってま、ちょっと
Guest
なんでしょう。ハスキーというツール感がありますけど、ま、これからは単純にギットフックま、ドットキットの中ってうまく管理できないんで、それをこううまく管理してくれるツールっていう
Guest
だけになっていくっていうのはありそう。なんで、うん、うん、確かによりわかりやすくてよさそうですね、なるほど、ありがとうございます。
Guest
私もま、基本的にま、せっかくスポンサー
Guest
いうのもありますし、使っていきたいなとは思いますね。いや、でも、やっぱりま共通言語であるみたいなところはなんでしょう。あの、
Guest
やっぱりフロントエンドって、ある程度ディファクトなものを使っておく方が。まあ、その
Guest
こういうなんでしょう。すごくバリューにま。例えば、デパクトであっても、例えばなんでしょうね。最近で言ったら、モーメントジェースとかあって、デパクトであっても、重くて使えない理由があったりとかはあると思うんですけど、ハスキーとかについては、
Guest
リファクトを使っておくことによる。デメリットってのがほとんどないとは思うんで、これからも使っていけるといいかもしれないですね、
Guest
そんなところですかね、はい、では、今日のハスキーの話は、このあたりにしたいと思います。
5. クロージング
Guest
ええということで、今回は
Guest
ラインがハスキーにスポンサリングする理由というところで、え、2021年3月からスポンサリングを始めたハスキーのラインでの使い方っていうところとま、他のツールとの比較というところについて話していきました。
Guest
LINEのフロントエンド組織UITでは、このようなフロントエンドに関するえ、議論やコミュニケーションをえ、活発に行っております。
Guest
外部にUITeサイトで公開している内容につきましても、社内勉強会などから始まったものも多くありますので、今後も発信していければと思います。
Guest
また、このエピソードを聞いて、ラインに興味を持ってくださった方は、え、ぜひぜひショートの下にある求人からえ、ご連絡をいただければと思います。
Guest
現在ですね、リモートで、ズームでのカジュアル面談も行っておりますので。まあ、少し話を聞いてみたいっていうだけでも、お気軽に連絡いただければと思います。
Guest
それでは、本日のエピソードは一応させていただければと思います。え、聞きてくださり、ありがとうございました、
Guest
ありがとう、ありがとうございました。