2021年7月11日(日)のツイート履歴
ツイート
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
https://stackoverflow.com/questions/8813260/checkboxes-with-bash-script/8813312 うーん、dialogのオプションによってはああなるんだろうか。これ以上は試してみたほうが早そう。
20:15
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
gcloudなんかが起動時dialogを使わない、スマートなpickerで表示してくれた気がするんだけど、あれを実現しているライブラリがさっぱり見つからない。自己実装か、もしくはpython / golangなど特定の言語で実装されている挙動?
20:02
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
shell scriptで選択画面をスマートに出したい。dialogやwhiptailのようにブルーバックの画面に切り替えてダイアログでもいいんだけど、最近は画面を切り替えず通常の画面のまま選択できるツールが増えてきた気がしていて… https://twitter.com/i/web/status/1414176873416847360
19:56
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
ツリー構造のデータ型からcomplete呼び出しを自動生成してevalするような仕組みを作ったら面白いかもね。
17:41
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
ただまあ気になる点はなくもなくて、completeのデータ構造が各補完パターンのリストでお互いの補完がコンフリクトしないために-nオプションでよしなにMECEにしてねってなっているのは微妙に感じる。 コマンドの補完って直感的にはツ… https://twitter.com/i/web/status/1414142784630530052
17:41
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
https://github.com/fish-shell/fish-shell/tree/4ec06f025c451c24ddc5d2532a7ead38a0005f9e/share/functions このディレクトリとサンプルを見るまではやたら窮屈な気がしたんだけど、completeの-nオプションと関数ですごい自由度を確保していることに気づいてからは簡単にいろんな補完ができるようになった。
17:41
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
fish面白い。人生で初めてshellを自分の制御化に置けている気がする。特に関数とそれを下地にした補完が強力。 https://github.com/bigwheel/fish-castle/blob/1c0f265b4eea95e7315be5d8b3a0462427aabdc0/home/.config/fish/variable_utils.fish
17:41
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
nushell, elvishにもちょっと浮気したくなってきたけどまだ実用レベルじゃないのかなあ。それぞれrustとgolangというモダン言語で書かれた新時代のshell味はある。fishが'00年代なのに対して両者は'10年代っぽい。
10:59
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
github actionには別の弱点がある。https://github.com/actions/runner/issues/646 それはaction内から別のactionを呼び出したり使うことができないことで、これが再利用性を致命的なまでに下げている。この制約のせい… https://twitter.com/i/web/status/1413920327818567681
02:57
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
また、単純に小回りが効きづらいのも頭が痛い。 関数一つ相当の共通化をしたいだけでも現状のterraform moduleでは5個も10個もファイルを作って記述を分散させる必要がある。これでは共通化が手間過ぎてみんなmodule利用を避けたくなる。
02:21
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
これがgithub actionsの作成やmodule公開のハードルを上げている気がする。moduleを公開する方法を学ぶまでのステップが刻まれていないので1ステップが大きすぎるため。
02:21
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
rubyやpythonなら コードベタ書き → 関数化 → クラス化 → ライブラリ化 というように自然にスケールするところが コードベタ書き → ライブラリ化 というようにいきなり大ジャンプになる。
02:15
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
github actionの作成も、terraform moduleの公開も、rubyやpythonの文脈に例えるとライブラリ公開に近い。 その文脈で考えると、両者共にライブラリ未満の、関数抽出のレベルの手段がない。
02:09
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
github actionはもっと大変で、gemやpipパッケージを公開するのと同じぐらいの労力が必要になる。 どちらも同じリポジトリ内のlocal module / actionにすれば多少手間は減るがそれによりリポジトリ外部からは参照できない
02:06
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
ただ、それらを認めつつも2021年ではterraformもgithub actionsもまだサブ集合の抽出・再利用可能化の手間が大きい。 terraform moduleはmoduleを作るためにいちいちvariableやoutp… https://twitter.com/i/web/status/1413907543055769605
02:06
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
実際、この2つを仕事で使っていて急速にインフラ管理やCICDの洗練が早くなっていくことを感じている。そのおかげで品質の改善は加速し、1人が見れるインフラの量も確実に増している。
02:06
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
github actionsは今まで再利用性が著しく低かったCICDをactionの形で再利用できるようにしたという点でエポックメイキングだったと思う。terraformもcloudformationとの明確な差別化点になったのはmoduleだった。
02:06
-
k.bigwheel⌨️🦀🖊️ 開発基盤エンジニア(SRE)@株式会社Speee @k_bigwheel
terraformやgithub actionsを日々使っていて気づいたことがある。 全体のうちからそのサブ集合を取り出し再利用可能な形にする、プログラミングで言う関数抽出の作業が簡単にできるかはそのエコシステムがどれだけ使われるか、どれだけ早く洗練されるかに強く影響する。
02:06
お気に入り
ツイート | お気に入り | フォロー | フォロワー |
---|---|---|---|
15988(+8) | 4719(+1) | 465(+1) | 817(-2) |