$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
懺悔LT
Search
Tetsu Nishimura
March 24, 2025
0
31
懺悔LT
Tetsu Nishimura
March 24, 2025
Tweet
Share
More Decks by Tetsu Nishimura
See All by Tetsu Nishimura
Railsフロントエンド移行効率化 ためAエージェント利用方法
kitsunecat
0
6
生成AIで仕事をどうにかして怠ける話
kitsunecat
0
36
update_columnsについて無知だった話
kitsunecat
0
32
書きながら考えないRSpec
kitsunecat
0
120
rake taskでメソッド定義したらテストが不安定になった
kitsunecat
0
62
ツクリンクで実践している 画像処理
kitsunecat
0
10
ツクリンクで実践している画像処理(フロー部分)
kitsunecat
0
160
Featured
See All Featured
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
115
91k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Mobile First: as difficult as doing things right
swwweet
225
10k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Technical Leadership for Architectural Decision Making
baasie
0
180
Code Review Best Practice
trishagee
74
19k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
130
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
290
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5k
Documentation Writing (for coders)
carmenintech
77
5.2k
Mind Mapping
helmedeiros
PRO
0
38
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を見つけられる - スコープが広すぎる単体テスト - 偽陽性のテスト
見逃しがちなバグにきづくことができた 開発環境をゼロイチで構築するときにのみ発生するエラー - 過去のマイグレーションが動作しない、など
踏める地雷は結構踏むことが出来た 地雷を踏むこと自体はネガティブだけど、 ナレッジが溜まったと考えればポジティブです。
まとめ
教訓 ライブラリは。。。 - 普段からライブラリは最新版にアップデートしましょう - アップデートが公開されたらとりあえず動かしてみましょう
ありがとうございました