Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
懺悔LT
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Tetsu Nishimura
March 24, 2025
0
33
懺悔LT
Tetsu Nishimura
March 24, 2025
Tweet
Share
More Decks by Tetsu Nishimura
See All by Tetsu Nishimura
Railsフロントエンド移行効率化 ためAエージェント利用方法
kitsunecat
0
7
生成AIで仕事をどうにかして怠ける話
kitsunecat
0
41
update_columnsについて無知だった話
kitsunecat
0
33
書きながら考えないRSpec
kitsunecat
0
130
rake taskでメソッド定義したらテストが不安定になった
kitsunecat
0
72
ツクリンクで実践している 画像処理
kitsunecat
0
10
ツクリンクで実践している画像処理(フロー部分)
kitsunecat
0
170
Featured
See All Featured
A designer walks into a library…
pauljervisheath
210
24k
Done Done
chrislema
186
16k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
170
Imperfection Machines: The Place of Print at Facebook
scottboms
269
14k
Darren the Foodie - Storyboard
khoart
PRO
2
2.4k
Leo the Paperboy
mayatellez
4
1.4k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
210
The Curse of the Amulet
leimatthew05
1
8.5k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
Chasing Engaging Ingredients in Design
codingconduct
0
110
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.3k
Transcript
© Tsukulink Inc. ライブラリアップデートの 懺悔と教訓
自己紹介 なまへ:にしむらてつ 趣味:スノーボード、クライミング、スキューバダイビング すんでるとこ:長野県 おしごと:Webエンジニア(ツクリンクでは非機能面の改善を担当) 好きな言語・技術:Rust, TypeScript, TCP/IP(Routing, Swiching,
QoS)
今日お話すること ライブラリのアップデートは早めこまめがよいよね でも油断すると後回しになってしまうよね ✖ 何かを持って帰ってもらう ◦ 共感してもらう
どんな人に伝えるか 夏休みの宿題をラスト3日で追い込んでいた人
懺悔
経緯 最近Railsアップデートを実施しました。 Ver. 7.0 => 7.1 - Ver. 7.0のEOLは2025/04/01 -
チケット作成 2024/05/07 ・・・
経緯 Railsアップデートを実施しました。 Ver. 7.0 => 7.1 - Ver. 7.0のEOLは2025/04/01 -
チケット作成 2024/05/07 ・・・ - 着手 2025/02/05 - リリース 2025/03/24
経緯 Railsアップデートを実施しました。 Ver. 7.0 => 7.1 - Ver. 7.0のEOLは2025/04/01 -
チケット作成 2024/05/07 ・・・ - 着手 2025/02/05 - リリース 2025/03/24 gemの破壊的な変更対応、落ちるspecの対応や割り込みの不具合対応などで ギリギリのリリースに...
どうしてそうなった
前提 会社からは十分な投資を受けております! - 非機能面を担当するチーム - プロダクト部としても重要な項目としてアップデートは入っていた - その他、開発体験を向上させる取り組み
いいわけ 優先度の高いチケットがあった - ユーザー影響がでている不具合 - 社内の運用面で期限がある - 獲得ユーザー数につながる
優先度の判断はおおむね間違っていなかったが、 もう少しなにかできたのではないか
期限における体感の誤り 期限の感覚が間違っていた。残りが半年だとすると ✖「まだあと数ヶ月ある」 ◦「もう半年切ってしまっている」
もっと早く着手していれば。。。 1. すこしずつ始められた - エラーの内容を見てどれくらいかかるかの初期見積もりはできた 2. 余裕があるから細かくタスク分解できる - チケットを細かく切ってプランニングも正確に進められる
3. こまめにアップデートできた - 依存する・しないに関わらずライブラリを一つずつアップデートできた
よかったこと
おかしなspecに気づくことができた 網羅テストで普段触らない機能に触ることで、不完全なspecを見つけられる - スコープが広すぎる単体テスト - 偽陽性のテスト
見逃しがちなバグにきづくことができた 開発環境をゼロイチで構築するときにのみ発生するエラー - 過去のマイグレーションが動作しない、など
踏める地雷は結構踏むことが出来た 地雷を踏むこと自体はネガティブだけど、 ナレッジが溜まったと考えればポジティブです。
まとめ
教訓 ライブラリは。。。 - 普段からライブラリは最新版にアップデートしましょう - アップデートが公開されたらとりあえず動かしてみましょう
ありがとうございました