はじめに
すっげ〜充実感だわ、nikkieです。
今週、勉強会がすごい充実度です。
火曜日(5/16)に開催された開発話のそーだいさんのトークがすごいよかったので、1本したためます。
目次
2023/05/16 【リンケージxセレス】~失敗する開発とその対策~
今回は「株式会社リンケージ様」との共催イベントとしてオフライン・オンラインでの開催が実現しました。
セレスさんのイベントがリンケージさんとコラボレーション!
各サービスやプロダクトでのビジネス視点での失敗談や開発時の失敗体験を語っていただき、
その対策についても登壇者にお話してもう予定です。
リンケージからは「そーだいさん」と「77webさん」に登壇してもらいます。
セレスからは若手エンジニアの「市川さん」と「伊藤さん」が登壇します。(引用ママ)
トークの中からそーだいさんによる「失敗から学ぶ 技術的負債との正しい歩き方」について、私が楽しんでいるさまを綴っていきます(参加者はアーカイブのリンクが見られます)。
作業しながらリアルタイムで聴き、すごいよかったので、その日のうちに実況モードでもう1回聞きました。
失敗から学ぶ 技術的負債との正しい歩き方
資料
まとめ
今は、ソフトウェアがなぜ滅びたのか、わたしよく分かる。Twitterの谷の歌にあるもの。
— そーだい@初代ALF (@soudai1025) 2023年5月16日
”CI/CDに根をおろし、技術的負債とともに生きよう。メジャーバージョンアップとともに冬を越え、機能追加とともに春を歌おう”。…
質とスピードは両立するんじゃ!!!両方やるんじゃ!!!!!
— そーだい@初代ALF (@soudai1025) 2023年4月27日
お品書き
立ち上がり、廃墟の話はいいぞ!
この春のYAPC 20231、moznionさんによる廃墟話はマジでよいので、ぜひ!
語り口軽妙で楽しく聞け、学びもあり、複数回聴いています。
「今回はソフトウェアとともに暮らす話」と本編に入っていきます。
今はエンジニアがなぜ亡びたのか
— そーだい@初代ALF (@soudai1025) 2015年3月4日
私 よくわかる
Twitterの谷の歌にあるもの
進捗に根をおろし nullと共に生きよう
DBと共に夜を超え
JOIN禁止と共にバグを作ろう
どんなに恐ろしいコードを作っても
沢山の可哀想な社畜を飼っても
nullから離れては生きられないのよ!
(まとめで本歌取りみたいになっている構成がすごい)
早くDB名指定して!まだ間にあう!! RT @mako_wis: パズー「シータ。落ち着いてよく聞くんだ。・・・あの言葉を教えて。・・・ぼくも一緒に言う。」
— そーだい@初代ALF (@soudai1025) 2013年10月2日
パズー・シータ「DROP DATABASE;」
ムスカ「データがぁー!データがぁーーぁぁぁぁぁぁぁ!!」 #バルス
技術的負債と共に歩む
刺さった一言:「仕組みで解決を当たり前にできているか」
白馬の王子様は来ないし、寝て起きたら課題が解決してることはないんだよなぁ #yapcjapan
— そーだい@初代ALF (@soudai1025) 2023年3月19日
作業を増やすことに敏感な人は少ない。
— そーだい@初代ALF (@soudai1025) 2020年8月13日
仕事と作業を同じと捉えていて、作業をすると仕事の進捗があると感じてしまう麻薬みたいなのはある。
それによって複雑さを導入して仕事、作業を増やす。
本当に必要なの作業を減らしてビジネスを前に進めることに注力する。
それが仕事をするってことだよな。
「Howだけ考えると」のエントリはいいことしか書いてないですが、以下はトークのまとめでも引かれていた宮川さんのBetter late than neverと共通ですね!
そして本当は不要だと気付いたなら今すぐ辞めることが大事だ。 いつのタイミングでも気付いた時が最短で物事を変える事が出来るタイミングだからだ。
プロダクトと向き合え
正論パンチラッシュ!👊
DDDだのScrumだのクリーンアーキテクチャだの言う前に目の前のプロダクトの現実と向き合え。
— そーだい@初代ALF (@soudai1025) 2021年12月14日
サービスを作る。
— そーだい@初代ALF (@soudai1025) 2023年2月19日
サービスを監視する。
サービスを売る。
全部共通して必要なのは「このサービスは何に対価をもらっているか?」であり、その対価を貰うに相応の価値を提供している箇所を知っている必要がある。
仕事を与えられているものだと思っているうちは、この話が伝わらないんだよな。
古事記すげー。エンジニア必読感あるな
リトライは七難を隠すと古事記にも書いてある。
— そーだい@初代ALF (@soudai1025) 2019年11月19日
Unixの哲学にも「システムは2度死ぬ」と書いてある。
— そーだい@初代ALF (@soudai1025) 2023年3月14日
正しく小さく作って "すぐ捨てる" が大事だと古事記にも書いてある。
技術選定と未来への投資
刺さった一言:借金は返済計画とセット
そうですよね! 消費者金融も「ご利用は計画的に」って言ってますもんね!!
ソフトウェア開発って安易に借金しちゃえるとこあるよな〜
次点で:「返済するの俺じゃないし、いっか」
よ く ね ー よ wwww(過去の自分思い出してる)
これなー、踏み倒せちゃうんだよなー(悶絶)
✍️次の人が返せる仕組みやドキュメント
そーだいさんの決断のステップを引用
- 決断するために必要な条件を整理する
- 決断が難しい場合は、素早く始め、小さく失敗できるように考える
- 失敗が難しい場合は、社内外も含めて多くの知見を集める
- それでも難しい場合は、結論をできるだけ先伸ばす
「小さく失敗」「できるだけ先伸ばし」。
後者は先に伸ばしたほうが情報が集まるというのもありますよね(『Clean Architecture』でも詳細の決定は遅らせると説かれる話)
これをエンジニアの言葉にしてみる。「どうでもいいことは流行に従い、重大なことは標準に従い、ドメインのことは自らドメインフレームワークを設計し実装する」 https://t.co/in3CD1PtSj
— Akihito Koriyama (@koriym) 2019年3月30日
そして、世の中のHowが解いた問題を知る。
How(例:React)が解いた問題を紹介、使い所押さえられますね!
優れた芸術家は模倣し、偉大な芸術家は盗む(ピカソ)
コピペをするのではなく、自分で理解して使う、これも刺さる。
LLMsで模倣はすごい速さでできるようになったと思うのですが、「理解」、考えていきたい〜
まとめ(エモすぎる)
Better late than never!! 2
たしかに10代でしか出来ないこともあるが勉強は今からだって出来るし、コードは今からでも書けるので遅いということはない。今始めるのがいつだって一番早いんだ。
— そーだい@初代ALF (@soudai1025) 2019年10月30日
僕はいつも引用するけど、 @yasuhiro_onishi さんのこの言葉に感銘を受けたし、今も心に深く刻んでいる。誰よりも手を動かした大西さんだからこそ、この言葉の重みがあるんだよな。https://t.co/bRuAMQXtuu pic.twitter.com/XKxpVeXMzf
— そーだい@初代ALF (@soudai1025) 2023年4月11日
終わりに
#yapcjapan 本家にのる「正論パンチ!!」からの手のひらくるくる返しの「要はバランス」の様子です(Have Fun Techノベルティ) pic.twitter.com/AzFT22OKYL
— uzulla (@uzulla) 2023年3月19日
実況モード、すなわち、この記事で示したようにツイート探しに行ったりして聴いていたわけですが、めちゃめちゃ沁みる発表でした。
マジでいいことしか言ってねーぞ!👏👏👏
これはあれです、『ロバストPython』の読後感と同じです。
ですが、正論パンチを受けても、語りが軽妙で、力をいただけるトークでもありました!
そーだいさん、発表ありがとうございました。
そして運営の皆さま、アーカイブありがとうございます。
発表者、参加者の皆さま、ありがとうございました。お疲れさまでした!
P.S. 知ったきっかけはミノ駆動さん
しょうがねえな(?)と思いつつ今日の勉強会現地LT枠で参加し直したった。リファクタリングのアンチパターンを軽く話す。
— ミノ駆動 (@MinoDriven) 2023年5月15日
【リンケージxセレス】~失敗する開発とその対策~ https://t.co/Ya4ldfzWLq #開発話
アーカイブでミノ駆動さんのLTも楽しみました。