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

あのときRailsに自信を持てなかったあなたに送る手紙

Avatar for ykpythemind ykpythemind
May 15, 2025
1

 あのときRailsに自信を持てなかったあなたに送る手紙

「なぜ今 Rails を学ぶべきなのか」Ruby on Rails から学ぶ Web アプリケーション開発実践 / 技育CAMPアカデミア STORES株式会社 登壇資料

https://talent.supporterz.jp/events/fab0acb1-735d-4f7f-9274-63bfd5f8dd0c/

Avatar for ykpythemind

ykpythemind

May 15, 2025
Tweet

Transcript

  1. 遍歴、お仕事 • Ruby on Rails, 10年 • 受託開発 • スタートアップ

    STORES (2020〜) • STORES 予約 の開発責任者 • Ruby開発組織の統合 (10歳以上のRails x3) • アカウント基盤の立ち上げ、データ統合 etc • 採用活動
  2. 何が良いのか • Webアプリケーションを作る上で必要な設計とツールが網羅 ◦ データベース ◦ 自動テスト ◦ 非同期処理 ◦

    ファイルアップロード ◦ セキュリティ対策 ◦ etc… 15 → その都度自分で選択するのではなく Railsに組み込まれているものを使う
  3. 何が良いのか • 一般的なWebアプリケーションであれば、ファイルアップロードはでき て当たり前 ◦ アイコン設定 ◦ CSVをアップロードして一括登録する機能 • 自前で作ると論点ありがち

    ◦ どこにファイルを永続化するのか ◦ ファイルのメタデータの検証や画像リサイズ処理 ▪ ⇨ RailsのActiveStorageですべてうまくいく 18
  4. 何が良いのか 19 • Railsはプロダクトに価値がある実装にフォーカスさせてくれる ◦ Fat modelは恥じることではない ◦ ユーザーが何らかの操作を行うアプリであれば、 app/models/user.rb

    が数千行に達するのは自然 ◦ それをどう統治するかが面白いポイント 良いプロダクトを作りたい、届けたい、という気持ちが強い方々に Railsは第一級の選択肢
  5. 何が良いのか 20 • 技術的な「おもしろみ」は少ないかもしれない ◦ プロダクトを良くしようとするとき、具体的な “How” の部分に向 き合う時間よりもユーザーの課題へのフォーカスが必要不可欠 ◦

    一方でプロダクト開発とはまた違った選択・キャリアがある ▪ 1からアーキテクチャを考えたり ▪ ミドルウェアを作ったり、改良したり PitchforkというWebサーバーを作るまでの長い道のり (翻訳)
 
 https://techracho.bpsinc.jp/hachi8833/2025_04_07/149388 

  6. ① Railsは速さ重視で堅牢ではない? 23 • 変化できるからこそ、堅牢である • 堅牢とはなんだろうか ◦ Webアプリにおいて重要視すべきものは「データ」 ◦

    これを事業に合わせて適切にモデリングし、育てていくこと ◦ 複雑になってきても「なんとかできる」Railsの強みがある ▪ ActiveRecord::ModelSchema.ignored_columns= ▪ after_create { } など ▪ データを正しくしておくことが結果的に堅牢なアプリになる • Progress over stability ◦ https://rubyonrails.org/doctrine#progress-over-stability ◦ 痛みを伴いながらも進化していく思想
  7. まとめ 34 • Railsの何が良いのか=どういう技術が本質的に優れているのか ◦ プロダクト開発に集中できるということ • Railsだからこそ堅牢にアプリケーションを作ることができる。良い 仕組みがある。 •

    まことしやかに言われていること、今日の発表含め、他の人が話して いること、色々ある ◦ それでも、自分の感覚を信じていくことも大事 ◦ 自分はRailsをやってきたことに誇りを持っているし、とても感謝 しています