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
Ruby on Rails と私
Search
Kazuhiro NISHIYAMA
June 29, 2025
Programming
0
26
Ruby on Rails と私
[関西Ruby会議08 After Party: 叡電LT 🚃](
https://ruby-tuesday.doorkeeper.jp/events/185048)の発表資料です
。
Kazuhiro NISHIYAMA
June 29, 2025
Tweet
Share
More Decks by Kazuhiro NISHIYAMA
See All by Kazuhiro NISHIYAMA
riscv64.rubyci.org internal
znz
0
21
Rubyの日本語リファレンスマニュアルの現在と未来
znz
0
68
devise-two-factorを4.xから5.xに上げた話
znz
0
330
docs.ruby-lang.org/ja/ の生成方法を変えた
znz
0
84
Ubuntuのriscv64版をqemuで動かした
znz
0
100
lilo.linux.or.jpをbusterからbullseyeに上げた
znz
0
110
小規模個人アプリをRails 7.xにバージョンアップした話
znz
0
96
Ruby リファレンスマニュアル改善計画 2022 進捗報告
znz
0
150
Rubyist Magazine Reboot
znz
0
220
Other Decks in Programming
See All in Programming
チームの境界をブチ抜いていけ
tokai235
0
180
スマホから Youtube Shortsを見られないようにする
lemolatoon
27
32k
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
220
PHPに関数型の魂を宿す〜PHP 8.5 で実現する堅牢なコードとは〜 #phpcon_hiroshima / phpcon-hiroshima-2025
shogogg
1
230
Go言語の特性を活かした公式MCP SDKの設計
hond0413
1
230
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
190
Go Conference 2025: Goで体感するMultipath TCP ― Go 1.24 時代の MPTCP Listener を理解する
takehaya
9
1.7k
Software Architecture
hschwentner
6
2.3k
Devoxx BE - Local Development in the AI Era
kdubois
0
130
(Extension DC 2025) Actor境界を越える技術
teamhimeh
1
250
大規模アプリのDIフレームワーク刷新戦略 ~過去最大規模の並行開発を止めずにアプリ全体に導入するまで~
mot_techtalk
1
450
Building, Deploying, and Monitoring Ruby Web Applications with Falcon (Kaigi on Rails 2025)
ioquatix
4
2.2k
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
246
12k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
4 Signs Your Business is Dying
shpigford
185
22k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Leading Effective Engineering Teams in the AI Era
addyosmani
6
430
A better future with KSS
kneath
239
18k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
980
Documentation Writing (for coders)
carmenintech
75
5.1k
Writing Fast Ruby
sferik
629
62k
Code Review Best Practice
trishagee
72
19k
Agile that works and the tools we love
rasmusluckow
331
21k
Transcript
Ruby on Rails と私 Kazuhiro NISHIYAMA 関西Ruby会議08 After Party: 叡電LT
2025-06-29 Powered by Rabbit 3.0.5
最初に ラジオ感覚で軽く聞いてもらるような内容の つもり 途中で切られるのを想定して後ろの方の内容 は薄い 1/17
自己紹介 西山 和広 Ruby のコミッター GitHub など: @znz 株式会社Ruby開発 www.ruby-dev.jp
Ruby関西初期メンバー 2/17
Rails を知った頃 2005年5月14日(土) の第3回Ruby関西勉強会で 紹介されていた https://github.com/rubykansai/workshops/wiki/ KansaiWorkshop003 名前はもうちょっと前からみかけていた https://rubygems.org/gems/rails からバージョ
ン履歴をみると当時は 0.12.1 3/17
その頃の印象 いくつかある Ruby を使っているもののひとつ 流行るかどうかはまだわからないので、とり あえず知っておく GET と POST を区別しないとか
Web に詳し くない人が作ってそう 4/17
HTTP メソッドについて 1995 年頃に読んだ CGI の本で区別が書いて あった 当時はライブラリを作るような人はみんな RFC とかちゃんと読んでいると思っていた
実際にはそうではないし、全部読めるような 量ではない(今はもっと無理) その本の10年後なのに区別してないのは大丈 夫なのか? と思った 少なくとも当時の状態では使いたくないもの だった 5/17
RESTful Rails 2.0 あたりで REST 重視になった GET POST 問題は解決していた 6/17
Rails 2.2 で i18n 対応 gettext に慣れていたので機能不足では? とい う疑問があった 英語と日本語だけなら
i18n でも困らない 複数形などのルールが複雑な言語に対応した くなったときに困るのでは? という疑問は今で もあるが、必要になったことがないので未調 査 7/17
RubyGems Rails は RubyGems より後にでてきた (setup.rb より後発だが C 拡張などへの対応が 雑で今でも困ることがあるらしい…)
RubyGems は同じパッケージの複数バージョ ンを同時インストール可能 deb や rpm では不可能だったので驚く (同時インス トール可能にするにはバージョンごとにパッケージ がわかれていた) (当然のように) Dependency hell が起きる 8/17
RVM と Bundler RVM の gemset で分離 RVM 以前は ruby
に program suffix をつけて同じ prefix にインストールしていたが、RVM 以降は別 prefix にインストールするのが主流に Bundler の登場で gemset が不要に Bundler のリリース時期は Rails 2.x 時代で Rails 3.0 で正式対応 9/17
Rails 3 Merbとの統合など Bundler 対応以外は大きな影響はなかった気が する 10/17
JavaScript 関連 初期は prototype.js と script.aculo.us いつの間にか jQuery だらけ Angular.js,
Vue.js など軽く使うこともあった YUI とか Backbone.js とかメンテナンス用に みたことがある 古いとドキュメントが公開されなくなるライブラリ は書き直すにも解読困難で辛い 11/17
その後 気になる新機能もあるけど今までのやり方で もなんとかなっていることが多い ここからどこでも切られても良い感じの話に 12/17
Rails 4 系 今は変わったりなくなったものも新しく入った頃 4.0 Strong Parameters → params.expect (Rails
8) Turbolinks → Turbo など 4.1 アプリケーションプリローダーSpring → rails new で Gemfile に入らない config/secrets.yml → credential 13/17
Rails 5 系 気になる新機能もあるけど今までのやり方で もなんとかなっている Action Cable form_with Active Storage
belongs_to の required: true がデフォルトに なった対応が必要だった semgrep で , optional: true を追加した 14/17
Rails 6 系 大きな新機能は特に使わず Webpacker がデフォルト化 Action Mailbox Action Text
15/17
Rails 7 系 コンテナ系などでも rails new で生成される ファイルも参考にするようになった 7.0 Dockerfile
7.1 Dev Container (Development Container) Webpacker に移行していなかったらさらに変 わっていた Hotwire の公式サポートも気になる 16/17
Rails 8 params.expect が良さそう 標準で作成するデータベースが4個になった CREATE DATABASE の権限が悩ましい 17/17 Powered
by Rabbit 3.0.5