Text
Page: 1
Ruby on Rails と私 Kazuhiro NISHIYAMA 関西Ruby会議08 After Party: 叡電LT 2025-06-29 Powered by Rabbit 3.0.5
Page: 2
最初に ラジオ感覚で軽く聞いてもらるような内容の つもり 途中で切られるのを想定して後ろの方の内容 は薄い 1/17
Page: 3
自己紹介 西山 和広 Ruby のコミッター GitHub など: @znz 株式会社Ruby開発 www.ruby-dev.jp Ruby関西初期メンバー 2/17
Page: 4
Rails を知った頃 2005年5月14日(土) の第3回Ruby関西勉強会で 紹介されていた https://github.com/rubykansai/workshops/wiki/ KansaiWorkshop003 名前はもうちょっと前からみかけていた https://rubygems.org/gems/rails からバージョ ン履歴をみると当時は 0.12.1 3/17
Page: 5
その頃の印象 いくつかある Ruby を使っているもののひとつ 流行るかどうかはまだわからないので、とり あえず知っておく GET と POST を区別しないとか Web に詳し くない人が作ってそう 4/17
Page: 6
HTTP メソッドについて 1995 年頃に読んだ CGI の本で区別が書いて あった 当時はライブラリを作るような人はみんな RFC とかちゃんと読んでいると思っていた 実際にはそうではないし、全部読めるような 量ではない(今はもっと無理) その本の10年後なのに区別してないのは大丈 夫なのか? と思った 少なくとも当時の状態では使いたくないもの だった 5/17
Page: 7
RESTful Rails 2.0 あたりで REST 重視になった GET POST 問題は解決していた 6/17
Page: 8
Rails 2.2 で i18n 対応 gettext に慣れていたので機能不足では? とい う疑問があった 英語と日本語だけなら i18n でも困らない 複数形などのルールが複雑な言語に対応した くなったときに困るのでは? という疑問は今で もあるが、必要になったことがないので未調 査 7/17
Page: 9
RubyGems Rails は RubyGems より後にでてきた (setup.rb より後発だが C 拡張などへの対応が 雑で今でも困ることがあるらしい…) RubyGems は同じパッケージの複数バージョ ンを同時インストール可能 deb や rpm では不可能だったので驚く (同時インス トール可能にするにはバージョンごとにパッケージ がわかれていた) (当然のように) Dependency hell が起きる 8/17
Page: 10
RVM と Bundler RVM の gemset で分離 RVM 以前は ruby に program suffix をつけて同じ prefix にインストールしていたが、RVM 以降は別 prefix にインストールするのが主流に Bundler の登場で gemset が不要に Bundler のリリース時期は Rails 2.x 時代で Rails 3.0 で正式対応 9/17
Page: 11
Rails 3 Merbとの統合など Bundler 対応以外は大きな影響はなかった気が する 10/17
Page: 12
JavaScript 関連 初期は prototype.js と script.aculo.us いつの間にか jQuery だらけ Angular.js, Vue.js など軽く使うこともあった YUI とか Backbone.js とかメンテナンス用に みたことがある 古いとドキュメントが公開されなくなるライブラリ は書き直すにも解読困難で辛い 11/17
Page: 13
その後 気になる新機能もあるけど今までのやり方で もなんとかなっていることが多い ここからどこでも切られても良い感じの話に 12/17
Page: 14
Rails 4 系 今は変わったりなくなったものも新しく入った頃 4.0 Strong Parameters → params.expect (Rails 8) Turbolinks → Turbo など 4.1 アプリケーションプリローダーSpring → rails new で Gemfile に入らない config/secrets.yml → credential 13/17
Page: 15
Rails 5 系 気になる新機能もあるけど今までのやり方で もなんとかなっている Action Cable form_with Active Storage belongs_to の required: true がデフォルトに なった対応が必要だった semgrep で , optional: true を追加した 14/17
Page: 16
Rails 6 系 大きな新機能は特に使わず Webpacker がデフォルト化 Action Mailbox Action Text 15/17
Page: 17
Rails 7 系 コンテナ系などでも rails new で生成される ファイルも参考にするようになった 7.0 Dockerfile 7.1 Dev Container (Development Container) Webpacker に移行していなかったらさらに変 わっていた Hotwire の公式サポートも気になる 16/17
Page: 18
Rails 8 params.expect が良さそう 標準で作成するデータベースが4個になった CREATE DATABASE の権限が悩ましい Powered by Rabbit 3.0.5 17/17