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 Everywhere
Search
Yukihiro Matsumoto
October 02, 2011
Programming
11
120k
Ruby Everywhere
The keynote in RubyConf 2011 New Orleans
Yukihiro Matsumoto
October 02, 2011
Tweet
Share
More Decks by Yukihiro Matsumoto
See All by Yukihiro Matsumoto
30 Years of Ruby
matz
0
340
mruby VM
matz
0
62
Contribute to Ruby (RubyKaigi 2022)
matz
0
200
Ruby_through_Reserved_Words.pdf
matz
0
120
Ruby after 25 years
matz
1
1k
What is software made of?
matz
0
600
Streem
matz
8
3.6k
world-of-languages.pdf
matz
8
1.3k
Other Decks in Programming
See All in Programming
月刊 競技プログラミングをお仕事に役立てるには
terryu16
1
1.2k
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
1.3k
20年もののレガシープロダクトに 0からPHPStanを入れるまで / phpcon2024
hirobe1999
0
1k
rails newと同時に型を書く
aki19035vc
5
690
ecspresso, ecschedule, lambroll を PipeCDプラグインとして動かしてみた (プロトタイプ) / Running ecspresso, ecschedule, and lambroll as PipeCD Plugins (prototype)
tkikuc
2
210
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
920
20241217 競争力強化とビジネス価値創出への挑戦:モノタロウのシステムモダナイズ、開発組織の進化と今後の展望
monotaro
PRO
0
260
PSR-15 はあなたのための ものではない? - phpcon2024
myamagishi
0
380
React 19でお手軽にCSS-in-JSを自作する
yukukotani
5
550
QA環境で誰でも自由自在に現在時刻を操って検証できるようにした話
kalibora
1
130
Androidアプリのモジュール分割における:x:commonを考える
okuzawats
1
270
Androidアプリの One Experience リリース
nein37
0
1k
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.4k
Six Lessons from altMBA
skipperchong
27
3.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Music & Morning Musume
bryan
46
6.3k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Designing for Performance
lara
604
68k
Into the Great Unknown - MozCon
thekraken
34
1.6k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7.1k
Designing for humans not robots
tammielis
250
25k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Transcript
Powered by Rabbit 0.9.2 Ruby Everywhere まつもと ゆきひろ Yukihiro "Matz"
Matsumoto @yukihiro_matz
Powered by Rabbit 0.9.2 TPO 1/192
Powered by Rabbit 0.9.2 TPO O=Occasion 2/192
Powered by Rabbit 0.9.2 Occasion Keynote 3/192
Powered by Rabbit 0.9.2 Keynote a speech, as at a
political convention, that presents important issues, principles, policies, etc. 4/192
Powered by Rabbit 0.9.2 Keynote Give me a break 5/192
Powered by Rabbit 0.9.2 Keynote I am a mere programmer
6/192
Powered by Rabbit 0.9.2 a programmer who invented a language
7/192
Powered by Rabbit 0.9.2 a great language 8/192
Powered by Rabbit 0.9.2 accidentally 9/192
Powered by Rabbit 0.9.2 But that's life Ce'st la
vie 10/192
Powered by Rabbit 0.9.2 Let's start the keynote 11/192
Powered by Rabbit 0.9.2 Keynote Good and Bad 12/192
Powered by Rabbit 0.9.2 Keynote: the good part The first
at the conference I can enjoy rest of the conference 13/192
Powered by Rabbit 0.9.2 Keynote: the bad part The first
at the conference I have less time to prepare You have to endure 14/192
Powered by Rabbit 0.9.2 TPO P=Place 15/192
Powered by Rabbit 0.9.2 Place New Orleans 16/192
Powered by Rabbit 0.9.2 Place 松江 Matsue 17/192
Powered by Rabbit 0.9.2 Matsue My hometown 18/192
Powered by Rabbit 0.9.2 Place Sister Cities 19/192
Powered by Rabbit 0.9.2 Any locals? 20/192
Powered by Rabbit 0.9.2 Place Mayor Matsuura of Matsue City
21/192
Powered by Rabbit 0.9.2 Hi from him 22/192
Powered by Rabbit 0.9.2 TPO T=Time 23/192
Powered by Rabbit 0.9.2 Time 2011 24/192
Powered by Rabbit 0.9.2 The first RubyConf was Oct. 12-14
2001 in Tampa, FL 25/192
Powered by Rabbit 0.9.2 So it's 11th RubyConf 26/192
Powered by Rabbit 0.9.2 First RubyConf in second decade
27/192
Powered by Rabbit 0.9.2 10th anniversary 28/192
Powered by Rabbit 0.9.2 Good chance to beat the
world 29/192
Powered by Rabbit 0.9.2 30/192
Powered by Rabbit 0.9.2 2011 31/192
Powered by Rabbit 0.9.2 New position 32/192
Powered by Rabbit 0.9.2 Chief Architect, Ruby 33/192
Powered by Rabbit 0.9.2 2010 34/192
Powered by Rabbit 0.9.2 Salesforce.com acquires Heroku.com 35/192
Powered by Rabbit 0.9.2 Marc Benioff “Ruby is the language
of Cloud 2” 36/192
Powered by Rabbit 0.9.2 6 months later 37/192
Powered by Rabbit 0.9.2 TOYOTA Friend 38/192
Powered by Rabbit 0.9.2 39/192
Powered by Rabbit 0.9.2 Marc Benioff “Ruby is great!” 40/192
Powered by Rabbit 0.9.2 Marc Benioff “I want to help
Ruby!” 41/192
Powered by Rabbit 0.9.2 Marc Benioff “as the language of
cloud age” 42/192
Powered by Rabbit 0.9.2 Marc Benioff “I want to HIRE
YOU!” 43/192
Powered by Rabbit 0.9.2 What!? 44/192
Powered by Rabbit 0.9.2 45/192
Powered by Rabbit 0.9.2 Chief Architect, Ruby Least Business-ish Title
46/192
Powered by Rabbit 0.9.2 Chief Architect, Ruby I will keep
working on Ruby core development 47/192
Powered by Rabbit 0.9.2 Chief Architect, Ruby As I have
done for long time 48/192
Powered by Rabbit 0.9.2 Chief Architect, Ruby They don't ask
me anything new 49/192
Powered by Rabbit 0.9.2 Chief Architect, Ruby except attnending Dreamforce
50/192
Powered by Rabbit 0.9.2 Chief Architect, Ruby I have been
worked full time for long time 51/192
Powered by Rabbit 0.9.2 52/192
Powered by Rabbit 0.9.2 Chief Architect, Ruby My financial situation
has been improved 53/192
Powered by Rabbit 0.9.2 Chief Architect, Ruby Hiring me do
not accelerate development much 54/192
Powered by Rabbit 0.9.2 We have to improve SFDC+Heroku want
to accelerate Ruby development 55/192
Powered by Rabbit 0.9.2 We have to improve So we
are going to form a team 56/192
Powered by Rabbit 0.9.2 We have to improve of full-time
core committer(s) 57/192
Powered by Rabbit 0.9.2 Full-time core committer Nobuyoshi Nakada (Nobu)
58/192
Powered by Rabbit 0.9.2 Full-time core committer aka "Patch Monster"
59/192
Powered by Rabbit 0.9.2 Full-time core committer PatchMon 60/192
Powered by Rabbit 0.9.2 Full-time core committer Nobuyoshi Nakada (Nobu)
61/192
Powered by Rabbit 0.9.2 Number One Committer 62/192
Powered by Rabbit 0.9.2 Number One Committer 63/192
Powered by Rabbit 0.9.2 You can expect more patches
from Nobu 64/192
Powered by Rabbit 0.9.2 Full-time Committers More to come (if
budget allows) 65/192
Powered by Rabbit 0.9.2 Full-time Committers I welcome more companies
to hire core committers 66/192
Powered by Rabbit 0.9.2 Full-time Committers I have already contacted
EnginYard 67/192
Powered by Rabbit 0.9.2 68/192
Powered by Rabbit 0.9.2 2011 69/192
Powered by Rabbit 0.9.2 the Standard We have been working
on the standard for last three years 70/192
Powered by Rabbit 0.9.2 the Standard JIS Japan Industrial Standard
71/192
Powered by Rabbit 0.9.2 the Standard JIS x3017 72/192
Powered by Rabbit 0.9.2 the Standard ISO 73/192
Powered by Rabbit 0.9.2 the Standard Vote: 20 vs 0
74/192
Powered by Rabbit 0.9.2 The Standard The subset of Ruby
75/192
Powered by Rabbit 0.9.2 The Standard 1.8 and 1.9 compatible
76/192
Powered by Rabbit 0.9.2 The Standard Platform independence 77/192
Powered by Rabbit 0.9.2 The Standard No fork, no thread
78/192
Powered by Rabbit 0.9.2 The Standard It's stll incomplete 79/192
Powered by Rabbit 0.9.2 The Standard More versions to come
80/192
Powered by Rabbit 0.9.2 The Standard Better coverage 81/192
Powered by Rabbit 0.9.2 The Standard Will move to 1.9
(or 2.0) 82/192
Powered by Rabbit 0.9.2 The Standard The reasons behind 83/192
Powered by Rabbit 0.9.2 The reasons behind Business reliability 84/192
Powered by Rabbit 0.9.2 The reasons behind Alternative implementations 85/192
Powered by Rabbit 0.9.2 86/192
Powered by Rabbit 0.9.2 2011 87/192
Powered by Rabbit 0.9.2 The world has been taken
over by machines 88/192
Powered by Rabbit 0.9.2 89/192
Powered by Rabbit 0.9.2 90/192
Powered by Rabbit 0.9.2 91/192
Powered by Rabbit 0.9.2 92/192
Powered by Rabbit 0.9.2 93/192
Powered by Rabbit 0.9.2 94/192
Powered by Rabbit 0.9.2 95/192
Powered by Rabbit 0.9.2 96/192
Powered by Rabbit 0.9.2 97/192
Powered by Rabbit 0.9.2 98/192
Powered by Rabbit 0.9.2 All driven by computers 99/192
Powered by Rabbit 0.9.2 Computers need software 100/192
Powered by Rabbit 0.9.2 Software ratio in systems increasing
101/192
Powered by Rabbit 0.9.2 Software should be written by
us 102/192
Powered by Rabbit 0.9.2 in programming languages 103/192
Powered by Rabbit 0.9.2 There are numerous programming languages
104/192
Powered by Rabbit 0.9.2 But what we love most
is.. 105/192
Powered by Rabbit 0.9.2 Ruby 106/192
Powered by Rabbit 0.9.2 But what is Ruby? 107/192
Powered by Rabbit 0.9.2 Muiti-fold definition 108/192
Powered by Rabbit 0.9.2 Ruby the syntax 109/192
Powered by Rabbit 0.9.2 Ruby the philosophy 110/192
Powered by Rabbit 0.9.2 Ruby the library 111/192
Powered by Rabbit 0.9.2 Ruby the gems 112/192
Powered by Rabbit 0.9.2 Ruby the community 113/192
Powered by Rabbit 0.9.2 We'd like to help more
developers 114/192
Powered by Rabbit 0.9.2 JRuby 115/192
Powered by Rabbit 0.9.2 Ruby for JVM platform 116/192
Powered by Rabbit 0.9.2 Ruby to reach Java world
117/192
Powered by Rabbit 0.9.2 Ruboto 118/192
Powered by Rabbit 0.9.2 JRuby on Android 119/192
Powered by Rabbit 0.9.2 Rhodes 120/192
Powered by Rabbit 0.9.2 Ruby for mobile phones 121/192
Powered by Rabbit 0.9.2 CRuby 122/192
Powered by Rabbit 0.9.2 Ruby 1.9.3 123/192
Powered by Rabbit 0.9.2 Ruby 1.9.3RC1 124/192
Powered by Rabbit 0.9.2 Yugui 125/192
Powered by Rabbit 0.9.2 126/192
Powered by Rabbit 0.9.2 Keywords for the future 127/192
Powered by Rabbit 0.9.2 Cloud+Mobile 128/192
Powered by Rabbit 0.9.2 Cloud 129/192
Powered by Rabbit 0.9.2 130/192
Powered by Rabbit 0.9.2 131/192
Powered by Rabbit 0.9.2 132/192
Powered by Rabbit 0.9.2 Mobile 133/192
Powered by Rabbit 0.9.2 Small devices 134/192
Powered by Rabbit 0.9.2 Digital appliances 135/192
Powered by Rabbit 0.9.2 Mobile phones 136/192
Powered by Rabbit 0.9.2 Vehicle 137/192
Powered by Rabbit 0.9.2 Robots 138/192
Powered by Rabbit 0.9.2 I'd like to address these
fields 139/192
Powered by Rabbit 0.9.2 As Lua does now 140/192
Powered by Rabbit 0.9.2 141/192
Powered by Rabbit 0.9.2 mruby 142/192
Powered by Rabbit 0.9.2 mruby Matz's embeddable minimal implementation of
Ruby language 143/192
Powered by Rabbit 0.9.2 RiteVM as core 144/192
Powered by Rabbit 0.9.2 Minimal standard libraries 145/192
Powered by Rabbit 0.9.2 Embeddable C API 146/192
Powered by Rabbit 0.9.2 Incremental GC 147/192
Powered by Rabbit 0.9.2 Soft realtime 148/192
Powered by Rabbit 0.9.2 Parser to generate AST 149/192
Powered by Rabbit 0.9.2 Codegen to generate bytecode 150/192
Powered by Rabbit 0.9.2 RiteVM to run bytecode 151/192
Powered by Rabbit 0.9.2 32bit instructions 152/192
Powered by Rabbit 0.9.2 Instructions are serializable 153/192
Powered by Rabbit 0.9.2 to binary files 154/192
Powered by Rabbit 0.9.2 or C files 155/192
Powered by Rabbit 0.9.2 Entirely written in C99 156/192
Powered by Rabbit 0.9.2 for all imaginable platforms 157/192
Powered by Rabbit 0.9.2 Linux 158/192
Powered by Rabbit 0.9.2 Windows 159/192
Powered by Rabbit 0.9.2 MacOS 160/192
Powered by Rabbit 0.9.2 Android 161/192
Powered by Rabbit 0.9.2 iOS 162/192
Powered by Rabbit 0.9.2 VxWorks 163/192
Powered by Rabbit 0.9.2 ITRON 164/192
Powered by Rabbit 0.9.2 or even non OS platforms
165/192
Powered by Rabbit 0.9.2 As I explained last year
166/192
Powered by Rabbit 0.9.2 Difference? 167/192
Powered by Rabbit 0.9.2 Now it works! 168/192
Powered by Rabbit 0.9.2 Demo 169/192
Powered by Rabbit 0.9.2 Demo Mandelbrot Set 170/192
Powered by Rabbit 0.9.2 171/192
Powered by Rabbit 0.9.2 mruby is young 172/192
Powered by Rabbit 0.9.2 it's small 173/192
Powered by Rabbit 0.9.2 it's weak 174/192
Powered by Rabbit 0.9.2 mruby has possibility 175/192
Powered by Rabbit 0.9.2 huge possibility 176/192
Powered by Rabbit 0.9.2 can you imagine? 177/192
Powered by Rabbit 0.9.2 Mobile device 178/192
Powered by Rabbit 0.9.2 Robots 179/192
Powered by Rabbit 0.9.2 Digital appliances 180/192
Powered by Rabbit 0.9.2 Games 181/192
Powered by Rabbit 0.9.2 Ruby instead of Lua 182/192
Powered by Rabbit 0.9.2 Server side 183/192
Powered by Rabbit 0.9.2 Ruby instead of Node.js 184/192
Powered by Rabbit 0.9.2 One big step to rule
the world 185/192
Powered by Rabbit 0.9.2 No perfect languages 186/192
Powered by Rabbit 0.9.2 Even Ruby 187/192
Powered by Rabbit 0.9.2 We'd like to provide choices
188/192
Powered by Rabbit 0.9.2 Freedom to choose Ruby 189/192
Powered by Rabbit 0.9.2 And make the world happier
190/192
Powered by Rabbit 0.9.2 As we feel right now
191/192
Powered by Rabbit 0.9.2 Thank you 192/192