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
Reinventhing Wheels of Future
Search
Yukihiro Matsumoto
November 03, 2012
Programming
55
5.6k
Reinventhing Wheels of Future
RubyConf 2012 Keynote
Yukihiro Matsumoto
November 03, 2012
Tweet
Share
More Decks by Yukihiro Matsumoto
See All by Yukihiro Matsumoto
Ruby 2.0 (en)
yukihiro_matz
40
4.5k
Ruby 2.0
yukihiro_matz
24
4.8k
Other Decks in Programming
See All in Programming
Everything Claude Code OSS詳細 — 5層構造の中身と導入方法
targe
0
120
エラーログのマスキングの仕組みづくりに役立ったASTの話
kumoichi
0
230
Go Conference mini in Sendai 2026 : Goに新機能を提案し実装されるまでのフロー徹底解説
yamatoya
0
600
野球解説AI Agentを開発してみた - 2026/02/27 LayerX社内LT会資料
shinyorke
PRO
0
320
AIに任せる範囲を安全に広げるためにやっていること
fukucheee
0
130
20260228_JAWS_Beginner_Kansai
takuyay0ne
5
550
2026年は Rust 置き換えが流行る! / 20260220-niigata-5min-tech
girigiribauer
0
240
AI 開発合宿を通して得た学び
niftycorp
PRO
0
130
Swift ConcurrencyでよりSwiftyに
yuukiw00w
0
270
GC言語のWasm化とComponent Modelサポートの実践と課題 - Scalaの場合
tanishiking
0
110
new(1.26) ← これすき / kamakura.go #8
utgwkk
0
2.3k
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
590
Featured
See All Featured
Deep Space Network (abreviated)
tonyrice
0
92
Into the Great Unknown - MozCon
thekraken
40
2.3k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
320
GitHub's CSS Performance
jonrohan
1032
470k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
750
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
140
The Spectacular Lies of Maps
axbom
PRO
1
620
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.4k
Google's AI Overviews - The New Search
badams
0
930
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
150
The Language of Interfaces
destraynor
162
26k
Transcript
Powered by Rabbit 1.0.8 Reinventhing Wheels of Future Yukihiro "Matz"
Matsumoto @yukihiro_matz
Powered by Rabbit 1.0.8 I code, therefore I am.
1/144
Powered by Rabbit 1.0.8 I feel happy, when I
code. 2/144
Powered by Rabbit 1.0.8 I feel nervous, when I
stand here. 3/144
Powered by Rabbit 1.0.8 Do you? 4/144
Powered by Rabbit 1.0.8 5/144
Powered by Rabbit 1.0.8 Ruby started February 1993 6/144
Powered by Rabbit 1.0.8 as a scripting language for
UNIX 7/144
Powered by Rabbit 1.0.8 to replace Perl 8/144
Powered by Rabbit 1.0.8 But not really 9/144
Powered by Rabbit 1.0.8 I just wanted to create
my own language 10/144
Powered by Rabbit 1.0.8 Just for Fun 11/144
Powered by Rabbit 1.0.8 Recently, a guy came and
blamed me on Twitter 12/144
Powered by Rabbit 1.0.8 “Why did you invented Ruby,
where we had Perl?” 13/144
Powered by Rabbit 1.0.8 “It was redundant, reinvention of
the wheel” 14/144
Powered by Rabbit 1.0.8 “It was waste of man-power
that is limited resource” 15/144
Powered by Rabbit 1.0.8 “So, many IT people feel
negative about your work” 16/144
Powered by Rabbit 1.0.8 What do you think? 17/144
Powered by Rabbit 1.0.8 Give me a break 18/144
Powered by Rabbit 1.0.8 Indeed we have limited resources
19/144
Powered by Rabbit 1.0.8 Only 7 Billion people on
Earth 20/144
Powered by Rabbit 1.0.8 Very few among them code
21/144
Powered by Rabbit 1.0.8 But it's not a bottleneck
22/144
Powered by Rabbit 1.0.8 We have more rare resource
23/144
Powered by Rabbit 1.0.8 It's Motivation 24/144
Powered by Rabbit 1.0.8 We are not machines 25/144
Powered by Rabbit 1.0.8 We need driving force to
accomplish great things 26/144
Powered by Rabbit 1.0.8 What's your motivation? 27/144
Powered by Rabbit 1.0.8 Fun? 28/144
Powered by Rabbit 1.0.8 Profit? 29/144
Powered by Rabbit 1.0.8 My motivation is love toward
programming languages 30/144
Powered by Rabbit 1.0.8 I love all programming languages
on earth 31/144
Powered by Rabbit 1.0.8 Including Fortran 32/144
Powered by Rabbit 1.0.8 Perl 33/144
Powered by Rabbit 1.0.8 Even PHP 34/144
Powered by Rabbit 1.0.8 It might sound spooky 35/144
Powered by Rabbit 1.0.8 No one should laugh at
motivation 36/144
Powered by Rabbit 1.0.8 Some may call it reinventing
the wheel 37/144
Powered by Rabbit 1.0.8 Go ahead, if you are
motivated 38/144
Powered by Rabbit 1.0.8 And it will introduce diversity
39/144
Powered by Rabbit 1.0.8 Diversity is Good 40/144
Powered by Rabbit 1.0.8 It may require cost 41/144
Powered by Rabbit 1.0.8 It might waste your time
42/144
Powered by Rabbit 1.0.8 But the world without diversity
is unpleasant 43/144
Powered by Rabbit 1.0.8 What if we force people
to focus on Perl? 44/144
Powered by Rabbit 1.0.8 Like the world of 1984
45/144
Powered by Rabbit 1.0.8 Diversity is the cost for
innovation 46/144
Powered by Rabbit 1.0.8 No one understands Innovation 47/144
Powered by Rabbit 1.0.8 Succeeded people don't 48/144
Powered by Rabbit 1.0.8 Failed people don't 49/144
Powered by Rabbit 1.0.8 No one 50/144
Powered by Rabbit 1.0.8 We try 51/144
Powered by Rabbit 1.0.8 Again 52/144
Powered by Rabbit 1.0.8 and Again 53/144
Powered by Rabbit 1.0.8 until we make innovation 54/144
Powered by Rabbit 1.0.8 But we`d better predict the
future 55/144
Powered by Rabbit 1.0.8 To raise the possibility of
success 56/144
Powered by Rabbit 1.0.8 57/144
Powered by Rabbit 1.0.8 IT survivers will be 58/144
Powered by Rabbit 1.0.8 IT survivers will be: language
designers dev env implementors and high valued niche players 59/144
Powered by Rabbit 1.0.8 Language designers? 60/144
Powered by Rabbit 1.0.8 Sounds weird? 61/144
Powered by Rabbit 1.0.8 His outline: Programming will be
fundamental literacy Easy tasks can be done by everybody Professionals (like us) should do harder tasks 62/144
Powered by Rabbit 1.0.8 Fair enough 63/144
Powered by Rabbit 1.0.8 But how can we be
language designers? 64/144
Powered by Rabbit 1.0.8 How many language designers do
you know? 65/144
Powered by Rabbit 1.0.8 me 66/144
Powered by Rabbit 1.0.8 Guido 67/144
Powered by Rabbit 1.0.8 Larry 68/144
Powered by Rabbit 1.0.8 Rasmus 69/144
Powered by Rabbit 1.0.8 ? 70/144
Powered by Rabbit 1.0.8 Language Designer or Serial Killer?
71/144
Powered by Rabbit 1.0.8 You may not start making
popular programming language 72/144
Powered by Rabbit 1.0.8 You may not implement a
programming language 73/144
Powered by Rabbit 1.0.8 But you code 74/144
Powered by Rabbit 1.0.8 Your identity 75/144
Powered by Rabbit 1.0.8 You design 76/144
Powered by Rabbit 1.0.8 You design code 77/144
Powered by Rabbit 1.0.8 You design API 78/144
Powered by Rabbit 1.0.8 You design interface 79/144
Powered by Rabbit 1.0.8 They are languages 80/144
Powered by Rabbit 1.0.8 Dave Thomas 81/144
Powered by Rabbit 1.0.8 Programming is a process of
designing your own DSL 82/144
Powered by Rabbit 1.0.8 In that sense, you can
be language designers 83/144
Powered by Rabbit 1.0.8 Too few people care about
design 84/144
Powered by Rabbit 1.0.8 The world is full of
crappy designs 85/144
Powered by Rabbit 1.0.8 Shoe strings 86/144
Powered by Rabbit 1.0.8 I hate loosen strings 87/144
Powered by Rabbit 1.0.8 I hate tying them again
& again 88/144
Powered by Rabbit 1.0.8 So I used superglue 89/144
Powered by Rabbit 1.0.8 The world is full of
room for improvement 90/144
Powered by Rabbit 1.0.8 Go fix them 91/144
Powered by Rabbit 1.0.8 By starting new project 92/144
Powered by Rabbit 1.0.8 By participating to exising project
93/144
Powered by Rabbit 1.0.8 Code, make it happen 94/144
Powered by Rabbit 1.0.8 in good shape 95/144
Powered by Rabbit 1.0.8 Reinvent wheels 96/144
Powered by Rabbit 1.0.8 Better wheels 97/144
Powered by Rabbit 1.0.8 Make the World better place
98/144
Powered by Rabbit 1.0.8 Be happy 99/144
Powered by Rabbit 1.0.8 I will 100/144
Powered by Rabbit 1.0.8 It was dark stormy night
101/144
Powered by Rabbit 1.0.8 in 1993 102/144
Powered by Rabbit 1.0.8 Almost 20 years ago 103/144
Powered by Rabbit 1.0.8 I had been happy for
last 20 years 104/144
Powered by Rabbit 1.0.8 It always had been more
than expected 105/144
Powered by Rabbit 1.0.8 I will try to make
the world better place 106/144
Powered by Rabbit 1.0.8 by making Ruby even better
107/144
Powered by Rabbit 1.0.8 On Faburary 24th 2013 108/144
Powered by Rabbit 1.0.8 Ruby's 20th birthday 109/144
Powered by Rabbit 1.0.8 We will release Ruby 2.0
110/144
Powered by Rabbit 1.0.8 finally 111/144
Powered by Rabbit 1.0.8 2001 112/144
Powered by Rabbit 1.0.8 2003 113/144
Powered by Rabbit 1.0.8 2001 2003 2006 2007 2010
2011 114/144
Powered by Rabbit 1.0.8 Of course you know that
115/144
Powered by Rabbit 1.0.8 But it is progressing steadly
116/144
Powered by Rabbit 1.0.8 It will be faster 117/144
Powered by Rabbit 1.0.8 It will be more reliable
118/144
Powered by Rabbit 1.0.8 More fun to use 119/144
Powered by Rabbit 1.0.8 keyword formal argument 120/144
Powered by Rabbit 1.0.8 Enumerable#lazy 121/144
Powered by Rabbit 1.0.8 Module#prepend 122/144
Powered by Rabbit 1.0.8 Refinement 123/144
Powered by Rabbit 1.0.8 Come join us 124/144
Powered by Rabbit 1.0.8 By using trunk 125/144
Powered by Rabbit 1.0.8 By reporting bugs 126/144
Powered by Rabbit 1.0.8 By fixing bugs 127/144
Powered by Rabbit 1.0.8 By sending pull-request 128/144
Powered by Rabbit 1.0.8 By porting your project to
2.0 129/144
Powered by Rabbit 1.0.8 We can make it better
130/144
Powered by Rabbit 1.0.8 We can make the world
better 131/144
Powered by Rabbit 1.0.8 mruby 132/144
Powered by Rabbit 1.0.8 Summary 133/144
Powered by Rabbit 1.0.8 No matter which way you
go 134/144
Powered by Rabbit 1.0.8 Be happy 135/144
Powered by Rabbit 1.0.8 Go as you motivated 136/144
Powered by Rabbit 1.0.8 Reinvent wheels 137/144
Powered by Rabbit 1.0.8 Fix shoe strings 138/144
Powered by Rabbit 1.0.8 Make the world better 139/144
Powered by Rabbit 1.0.8 I believe you can 140/144
Powered by Rabbit 1.0.8 Even if you don't 141/144
Powered by Rabbit 1.0.8 It's OK as long as
you'd been happy 142/144
Powered by Rabbit 1.0.8 Happy hacking! 143/144
Powered by Rabbit 1.0.8 Thank you 144/144