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
The World of Ruby
Search
Akira Matsuda
September 28, 2015
Programming
8
1.8k
The World of Ruby
プログラマーのための「Rubyの世界」の発表スライド
http://forkwell.connpass.com/event/20332/
Akira Matsuda
September 28, 2015
Tweet
Share
More Decks by Akira Matsuda
See All by Akira Matsuda
初心者のためのRubyKaigi入門/RubyKaigi Introduction
a_matsuda
15
7.1k
Hanamiを支える技術 2023 / Asakusa.rb Hanami 2023
a_matsuda
2
730
Rails 7.1をn倍速くした話
a_matsuda
11
13k
RubyKaigi 2022 After Talk
a_matsuda
0
500
Coming Soon…💎 / coming soon
a_matsuda
12
8.3k
Rails Performance Issues and Solutions
a_matsuda
9
38k
Extending Rails for Real World App Development
a_matsuda
9
7.8k
A RubyKaigi Talk
a_matsuda
8
2.6k
Ginza Rails 1
a_matsuda
6
1.3k
Other Decks in Programming
See All in Programming
外接に惑わされない自システムの処理時間SLIをOpenTelemetryで実現した話
kotaro7750
0
240
AI駆動開発カンファレンスAutumn2025 _AI駆動開発にはAI駆動品質保証
autifyhq
0
140
Swift Concurrency 年表クイズ
omochi
3
220
CSC305 Lecture 15
javiergs
PRO
0
180
Functional Calisthenics in Kotlin: Kotlinで「関数型エクササイズ」を実践しよう
lagenorhynque
0
110
ネストしたdata classの面倒な更新にさようなら!Lensを作って理解するArrowのOpticsの世界
shiita0903
1
290
仕様がそのままテストになる!Javaで始める振る舞い駆動開発
ohmori_yusuke
1
130
Inside of Swift Export
giginet
PRO
1
520
MCPサーバー「モディフィウス」で変更容易性の向上をスケールする / modifius
minodriven
7
1.3k
オフライン対応!Flutterアプリに全文検索エンジンを実装する @FlutterKaigi2025
itsmedreamwalker
1
120
詳細の決定を遅らせつつ実装を早くする
shimabox
1
970
例外処理を理解して、設計段階からエラーを見つけやすく、起こりにくく #phpconfuk
kajitack
12
5.7k
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
95
14k
For a Future-Friendly Web
brad_frost
180
10k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Site-Speed That Sticks
csswizardry
13
960
The Pragmatic Product Professional
lauravandoore
36
7k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Documentation Writing (for coders)
carmenintech
76
5.1k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
We Have a Design System, Now What?
morganepeng
54
7.9k
Transcript
Rubyͷੈք @a_matsuda
self
GitHub: amatsuda
Twitter: a_matsuda
Rubyίϛολʔ
Railsίϛολʔ
Railsίϛολʔ •ຊͰ͚ࣗͩ
Rubyίϛολʔ && Railsίϛολʔ •ੈքதͰ2ʙ3ਓ͙Β͍
Asakusa.rb
RubyKaigi 2015 •νʔϑɾΦʔΨφΠβʔ
͖ͳϝιου •Module#prepend
͖ͳFZ •Freak Out!
3લͷσϒαϛʹͯ
begin
1. Rubyฤ
ΦϒδΣΫτࢦεΫϦϓτ ݴޠRuby
Rubyͷ࡞ऀ •Matz
Matz •·ͭͱΏ͖ͻΖ
Matzʹ͍ͭͯ •Matz is nice.
Rubyͷઃܭ •७ਮͳΦϒδΣΫτࢦݴޠ •εΫϦϓτݴޠ •։ൃऀʹͱͬͯಡΈ͍͢ʗ ॻ͖͍͢
Rubyͷݩωλ •Ruby = Lisp + Smalltalk + Perl + C
•(RubyKaigi 2013 جௐߨԋΑΓ)
Rubyͷྺ࢙ •19932݄14
Rubyͷ։ൃମ੍ •ྺίϛολʔͷ૯ਓ 80ਓ͙Β͍ʁ •ࠓͰΞΫςΟϒͳͷ50 ਓ͙Β͍ʁ
ϑϧλΠϜίϛολʔ •ੈքதͰ3໊
ύτϩϯ •Heroku (= SalesForce)
Rubyͷʑͷվྑͷ͔ͳΓͷ෦ ถSFࣾͷࢧԉͷ͓͔͛Ͱ͢
SalesForce͋Γ͕ͱ͏ɺͱ ݴΘ͟ΔΛಘͳ͍ •ʮࠃ࢈ݴޠʯʁ
RubyͷϦϦʔεαΠΫϧ •2.0Ҏ߱ɺຖ1ճΫϦεϚ ε͝ΖʹػցతʹϦϦʔε͢ Δ͜ͱʹͨ͠
Rubyͷࠓޙͷ ϦϦʔεϓϥϯ •2015ΫϦεϚε: 2.3.0 •2016ΫϦεϚε: 2.4.0 •2017ΫϦεϚε: 2.5.0 •ɾɾɾ •20XXΫϦεϚε:
3.0.0
Rubyist •MatzࣗʹΑΔޠ
Rubyist •“rubyʹରͯ͠୯ͳΔ͓٬͞ ΜҎ্ͷؾ࣋Λ͍࣋ͬͯΔਓ ͕rubyistͰ͢” http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/ 2908
Rubyist Magazine •௨শΔͼ· •Rubyist Hotlinksͱ͍͏ ΠϯλϏϡʔ͕͓͢͢Ί http://magazine.rubyist.net/?0001-Hotlinks
Rubyist-ist •RubyistѪՈͷ͜ͱ •ϛʔϋʔ
RubyKaigi •ʹ1͙Β͍ੈքதͷRubyist ͕Ұಊʹձ͢ΔࠃࡍΧϯϑΝ Ϩϯε •ࠓ12݄ʹ։࠵ http://rubykaigi.org/2015
2. Railsฤ
Railsͷ࡞ऀ •DHH
DHH •David Heinemeier Hansson
Railsͷઃܭࢥ •CoC •DRY
Railsͷྺ࢙ •2004͙Β͍ʹެ։։࢝
Railsͷ։ൃମ੍ •https://github.com/orgs/ rails/teams/committers •ͨͿΜ32ਓ͙Β͍
RailsͷϦϦʔεαΠΫϧ •ෆఆظ •͍͍͍͍ͩͨײ͡ʹ৽ػೳ͕ ग़ἧ͖ͬͯͯػ͕ख़͖ͯͨ͠ Βग़͢
RailsͷࠓޙͷϦϦʔεϓϥϯ •5.0: Fall 2015 (͍ͬͯ͏͜ͱ ʹͳͬͯΔ͚ͲͨͿΜग़ͳ ͍…)
3. Why Ruby?
Ruby ❤ Social Coding
ιʔγϟϧɾίʔσΟϯά (GitHub) •։ൃऀಉ͕࢜ιʔείʔυΛ ͛߹ͬͯίϛϡχέʔγϣ ϯΛऔΓ߹͏SNS
Ruby •։ൃऀʹͱͬͯಡΈ͍͢ݴ ޠ
Ruby ❤ Social Coding
RubyGems & Bundler ͱ͍͏ ༏ΕͨύοέʔδγεςϜ •ϥΠϒϥϦඦՖ៶ཚͷ࣌ʹ ඞਢͷΈ
৽͍͠ͷͨͪRuby ίϛϡχςΟ͔Βͬͯ͘Δ •CoCϑϨʔϜϫʔΫ •Ajax •BDD •CI •Asset Pipeline •etcetc.
ύϥμΠϜͷసʹ ಉ࣌ʹཱͪձ͑Δָ͠Έ
RubyίϛϡχςΟ
MINASWAN •"Matz is Nice And So We Are Nice" https://en.wikipedia.org/wiki/MINASWAN
*.rb •Seattle.rb 2001͙Β͍ʙ •Asakusa.rb 2008ʙ
࠷ۙͷটߨԋཤྺ •2012/12/07 RubyConf Taiwan •2013/06/08 RedDot RubyConf •2013/07/20 LoneStar RubyConf
•2013/09/28 RubyShift •2014/03/23 RubyConf India •2014/09/27 Rails Pacific •2014/11/04 Rails Israel •2015/03/05 Ruby on Ales •2015/03/09 MountainWest RubyConf •2015/05/16 Modern Web Taiwan
4. RailsͱࣄͱOSS
OSSΛࣄͰ͏ͱ ָ͕Ͱ͖Δʂʁ
OSSΛࣄͰ͏ •ڊਓͷݞʹΔ
ೲͷେ෦୭͔಄ͷ ྑ͍ਓ͕ॻ͍ͯ͘Εͨͷ
ڊਓͷݞʹΔ •νʔτ
͏·͘Εָ͕Ͱ͖Δ
OSSΛࣄͰ͏֮ޛ •͕ࣗબΜͩOSSΞϓϦ έʔγϣϯͷҰ෦
͕ࣗॻ͍ͨΞϓϦέʔγϣ ϯͱOSSͷڥք
͕ࣗॻ͍ͨΞϓϦέʔγϣ ϯͱOSSͷڥք •ڥքͳΜͯͳ͍
ଞਓͷόάΛҾ͖ड͚Δ֮ ޛ •ސ٬ʹର͢Δ࣮͞
શ෦ΦʔϓϯͳͷͰݴ͍༁ Ͱ͖ͳ͍ •ࣗͰબΜͩͷࣗͰ Λ࣋ͭ
͡Ό͋Ͳ͏͢Δʁ •ιʔείʔυશ෦Λ௨͢ ͷ͕ཧ •ͤΊ͕ͯࣗ౿Μͩόά ͙Β͍࣏͢
ʮOSSʹߩݙʯ •ͦΜͳཱͳͷ͡Όͳͯ͘ •ΰϛ͕མͪͯͨΒर͏Έ͍ͨ ͳΜ
ؾ͕͍ͭͨΒதͷͻͱʹͳͬ ͯͨΓ͢Δ
OSSͷόʔδϣϯ
ʮރΕͨόʔδϣϯʯ ͳΜͯແ͍
όάηΩϡϦςΟϗʔϧ શͯΦʔϓϯ
ৗʹ࠷৽ͷͷΛ͏ •Ξοϓσʔτͷίετͬ͠ ͔Γ͏ •͍ͭͰΞοϓσʔτͰ͖Δ Α͏ʹE2EςετΛ͔ͬ͠Γ ॻ͍͓ͯ͘
ৗʹ࠷৽ͷͷΛ͏تͼ •ʑͷ৽ػೳ •ύϑΥʔϚϯεͷ্
ϑϨογϡͳόά͕౿ΊΔ ָ͠Έ
5. Rubyͷา͖ํ
Ұ࣍ใΛݟΔ
RailsͳΒવӳޠͷͷ͔͠ ͳ͍
WEB+DB 58߸ͱ74߸Λআ͘ (DVDങ͑·͢)
RubyίΞ෦ʹؔ͢ΔҰ࣍ใ͕ ຊޠͰखʹೖΔ།ҰͷϓϥοτϑΥʔϜ
Δͼ·
RubyKaigi 2015
ҬRubyձٞ •େߐށRubyձٞ05 Γ·͢
Asakusa.rb
ॻ੶
Rails Tutorials
12݄ͷRubyKaigi
νέοτ2ສʙ3ສ •Rubyʹؔ͢Δੈք࠷ߴๆͷ ࠃࡍΧϯϑΝϨϯεʹඈߦػ ʹΒͳͯ͘ࢀՃͰ͖Δ •εϐʔΧʔʹͳΕλμ
12݄ͷRubyKaigiʹདྷͯͶ
end