Upgrade to Pro — share decks privately, control downloads, hide ads and more …

10年物のRailsアプリにキャッチアップ!〜コードを読まずに理解したかった〜

ima1zumi
October 15, 2024
55

 10年物のRailsアプリにキャッチアップ!〜コードを読まずに理解したかった〜

ima1zumi

October 15, 2024
Tweet

Transcript

  1. 自己紹介 2 - Mari Imaizumi @ima1zumi - 2024/04入社 - STORES

    予約 の開発をしている - ruby/irb, ruby/relineのコミッタ
  2. STORES 予約 とは 4 - バックエンドはRuby on Rails - First

    commitから11年目 - コアな開発者約13人
  3. 触り始めて分かった STORES 予約 の難しさ 12 - 多機能さ - 例: 月謝・回数券ごとに有効期限や予約可能回数


    - 他サービス連携
 - 移行過程の複雑さ - 例: 店舗アカウントが三世代存在
 - ロジックの難しさ - 例: 予約可否の計算

  4. どうやったら予約のことを知れる? 19 プログラマの三大美徳 - 🦥 怠惰 - Laziness - 知らないコードを読みとくのは面倒

    - 😡 短気 - Impatience - コードを読むのは時間がかかる - 👺 傲慢 - Hubris - コードを読まなくてもきっと理解できる
  5. ドキュメントを読む 34 - esa - 全社共通 - 現在15万件ほどの記事があり日々増加中 - STORES

    予約 開発チームでは開発ドキュメントは Cosenseに置かれる事が多い - PRD、日報などはesa
  6. 35 - Cosense (旧Scrapbox) - STORES 予約 開発チームが最もよく使う - 開発に関わることなんでも書くページ

    - フロー情報もストック情報もある - チームのふりかえりからDesign Docまで - 現在約3000ページ ドキュメントを読む
  7. ドキュメントを読む 36 - GitHub - ドキュメント用のリポジトリを切っている - ADRや意思決定の絡むドキュメントを共有 - Cosenseのコンテンツをエクスポート

    - Copilot Chat, ドキュメント検索botの参照先 - 詳しくはポスター発表「LLMを活用したくなったので過去 の類似Issuesを調べてくれる君を作った話」を参照
  8. ドキュメントを読む: やっていること 37 - 知らないことがあったらまずCosenseを調べる - モデル名、Job名、知らない概念 - ヒットしなければCosenseにその名前でページを作る -

    Relineという単語がわからなければ、「Reline」 「Pure Ruby で書かれたGNU Readline互換のライン エディタ。IRBやDebugで使われている」
  9. 触り始めて分かった STORES 予約 の難しさ 43 - 多機能さ - ドキュメントである程度カバー -

    移行過程の複雑さ - 詳細を知っている人に聞く - ロジックの難しさ - ドキュメントになっていない箇所 - 🤔
  10. どうやってコードを読むか 52 - 解きたいことを明らかにする - 何を解決したくてコードを読むのか - ex: 引数に何を渡しているのか分からない -

    コードの中で迷子になる - 関連情報がないか探す - Git blameから実装時のPRを見て実装時のドキュメ ントや設計を探す