Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Powered by Rabbit 0.9.2 Ruby Everywhere まつもと ゆきひろ Yukihiro "Matz" Matsumoto @yukihiro_matz
Slide 2
Slide 2 text
Powered by Rabbit 0.9.2 TPO 1/192
Slide 3
Slide 3 text
Powered by Rabbit 0.9.2 TPO O=Occasion 2/192
Slide 4
Slide 4 text
Powered by Rabbit 0.9.2 Occasion Keynote 3/192
Slide 5
Slide 5 text
Powered by Rabbit 0.9.2 Keynote a speech, as at a political convention, that presents important issues, principles, policies, etc. 4/192
Slide 6
Slide 6 text
Powered by Rabbit 0.9.2 Keynote Give me a break 5/192
Slide 7
Slide 7 text
Powered by Rabbit 0.9.2 Keynote I am a mere programmer 6/192
Slide 8
Slide 8 text
Powered by Rabbit 0.9.2 a programmer who invented a language 7/192
Slide 9
Slide 9 text
Powered by Rabbit 0.9.2 a great language 8/192
Slide 10
Slide 10 text
Powered by Rabbit 0.9.2 accidentally 9/192
Slide 11
Slide 11 text
Powered by Rabbit 0.9.2 But that's life Ce'st la vie 10/192
Slide 12
Slide 12 text
Powered by Rabbit 0.9.2 Let's start the keynote 11/192
Slide 13
Slide 13 text
Powered by Rabbit 0.9.2 Keynote Good and Bad 12/192
Slide 14
Slide 14 text
Powered by Rabbit 0.9.2 Keynote: the good part The first at the conference I can enjoy rest of the conference 13/192
Slide 15
Slide 15 text
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
Slide 16
Slide 16 text
Powered by Rabbit 0.9.2 TPO P=Place 15/192
Slide 17
Slide 17 text
Powered by Rabbit 0.9.2 Place New Orleans 16/192
Slide 18
Slide 18 text
Powered by Rabbit 0.9.2 Place 松江 Matsue 17/192
Slide 19
Slide 19 text
Powered by Rabbit 0.9.2 Matsue My hometown 18/192
Slide 20
Slide 20 text
Powered by Rabbit 0.9.2 Place Sister Cities 19/192
Slide 21
Slide 21 text
Powered by Rabbit 0.9.2 Any locals? 20/192
Slide 22
Slide 22 text
Powered by Rabbit 0.9.2 Place Mayor Matsuura of Matsue City 21/192
Slide 23
Slide 23 text
Powered by Rabbit 0.9.2 Hi from him 22/192
Slide 24
Slide 24 text
Powered by Rabbit 0.9.2 TPO T=Time 23/192
Slide 25
Slide 25 text
Powered by Rabbit 0.9.2 Time 2011 24/192
Slide 26
Slide 26 text
Powered by Rabbit 0.9.2 The first RubyConf was Oct. 12-14 2001 in Tampa, FL 25/192
Slide 27
Slide 27 text
Powered by Rabbit 0.9.2 So it's 11th RubyConf 26/192
Slide 28
Slide 28 text
Powered by Rabbit 0.9.2 First RubyConf in second decade 27/192
Slide 29
Slide 29 text
Powered by Rabbit 0.9.2 10th anniversary 28/192
Slide 30
Slide 30 text
Powered by Rabbit 0.9.2 Good chance to beat the world 29/192
Slide 31
Slide 31 text
Powered by Rabbit 0.9.2 30/192
Slide 32
Slide 32 text
Powered by Rabbit 0.9.2 2011 31/192
Slide 33
Slide 33 text
Powered by Rabbit 0.9.2 New position 32/192
Slide 34
Slide 34 text
Powered by Rabbit 0.9.2 Chief Architect, Ruby 33/192
Slide 35
Slide 35 text
Powered by Rabbit 0.9.2 2010 34/192
Slide 36
Slide 36 text
Powered by Rabbit 0.9.2 Salesforce.com acquires Heroku.com 35/192
Slide 37
Slide 37 text
Powered by Rabbit 0.9.2 Marc Benioff “Ruby is the language of Cloud 2” 36/192
Slide 38
Slide 38 text
Powered by Rabbit 0.9.2 6 months later 37/192
Slide 39
Slide 39 text
Powered by Rabbit 0.9.2 TOYOTA Friend 38/192
Slide 40
Slide 40 text
Powered by Rabbit 0.9.2 39/192
Slide 41
Slide 41 text
Powered by Rabbit 0.9.2 Marc Benioff “Ruby is great!” 40/192
Slide 42
Slide 42 text
Powered by Rabbit 0.9.2 Marc Benioff “I want to help Ruby!” 41/192
Slide 43
Slide 43 text
Powered by Rabbit 0.9.2 Marc Benioff “as the language of cloud age” 42/192
Slide 44
Slide 44 text
Powered by Rabbit 0.9.2 Marc Benioff “I want to HIRE YOU!” 43/192
Slide 45
Slide 45 text
Powered by Rabbit 0.9.2 What!? 44/192
Slide 46
Slide 46 text
Powered by Rabbit 0.9.2 45/192
Slide 47
Slide 47 text
Powered by Rabbit 0.9.2 Chief Architect, Ruby Least Business-ish Title 46/192
Slide 48
Slide 48 text
Powered by Rabbit 0.9.2 Chief Architect, Ruby I will keep working on Ruby core development 47/192
Slide 49
Slide 49 text
Powered by Rabbit 0.9.2 Chief Architect, Ruby As I have done for long time 48/192
Slide 50
Slide 50 text
Powered by Rabbit 0.9.2 Chief Architect, Ruby They don't ask me anything new 49/192
Slide 51
Slide 51 text
Powered by Rabbit 0.9.2 Chief Architect, Ruby except attnending Dreamforce 50/192
Slide 52
Slide 52 text
Powered by Rabbit 0.9.2 Chief Architect, Ruby I have been worked full time for long time 51/192
Slide 53
Slide 53 text
Powered by Rabbit 0.9.2 52/192
Slide 54
Slide 54 text
Powered by Rabbit 0.9.2 Chief Architect, Ruby My financial situation has been improved 53/192
Slide 55
Slide 55 text
Powered by Rabbit 0.9.2 Chief Architect, Ruby Hiring me do not accelerate development much 54/192
Slide 56
Slide 56 text
Powered by Rabbit 0.9.2 We have to improve SFDC+Heroku want to accelerate Ruby development 55/192
Slide 57
Slide 57 text
Powered by Rabbit 0.9.2 We have to improve So we are going to form a team 56/192
Slide 58
Slide 58 text
Powered by Rabbit 0.9.2 We have to improve of full-time core committer(s) 57/192
Slide 59
Slide 59 text
Powered by Rabbit 0.9.2 Full-time core committer Nobuyoshi Nakada (Nobu) 58/192
Slide 60
Slide 60 text
Powered by Rabbit 0.9.2 Full-time core committer aka "Patch Monster" 59/192
Slide 61
Slide 61 text
Powered by Rabbit 0.9.2 Full-time core committer PatchMon 60/192
Slide 62
Slide 62 text
Powered by Rabbit 0.9.2 Full-time core committer Nobuyoshi Nakada (Nobu) 61/192
Slide 63
Slide 63 text
Powered by Rabbit 0.9.2 Number One Committer 62/192
Slide 64
Slide 64 text
Powered by Rabbit 0.9.2 Number One Committer 63/192
Slide 65
Slide 65 text
Powered by Rabbit 0.9.2 You can expect more patches from Nobu 64/192
Slide 66
Slide 66 text
Powered by Rabbit 0.9.2 Full-time Committers More to come (if budget allows) 65/192
Slide 67
Slide 67 text
Powered by Rabbit 0.9.2 Full-time Committers I welcome more companies to hire core committers 66/192
Slide 68
Slide 68 text
Powered by Rabbit 0.9.2 Full-time Committers I have already contacted EnginYard 67/192
Slide 69
Slide 69 text
Powered by Rabbit 0.9.2 68/192
Slide 70
Slide 70 text
Powered by Rabbit 0.9.2 2011 69/192
Slide 71
Slide 71 text
Powered by Rabbit 0.9.2 the Standard We have been working on the standard for last three years 70/192
Slide 72
Slide 72 text
Powered by Rabbit 0.9.2 the Standard JIS Japan Industrial Standard 71/192
Slide 73
Slide 73 text
Powered by Rabbit 0.9.2 the Standard JIS x3017 72/192
Slide 74
Slide 74 text
Powered by Rabbit 0.9.2 the Standard ISO 73/192
Slide 75
Slide 75 text
Powered by Rabbit 0.9.2 the Standard Vote: 20 vs 0 74/192
Slide 76
Slide 76 text
Powered by Rabbit 0.9.2 The Standard The subset of Ruby 75/192
Slide 77
Slide 77 text
Powered by Rabbit 0.9.2 The Standard 1.8 and 1.9 compatible 76/192
Slide 78
Slide 78 text
Powered by Rabbit 0.9.2 The Standard Platform independence 77/192
Slide 79
Slide 79 text
Powered by Rabbit 0.9.2 The Standard No fork, no thread 78/192
Slide 80
Slide 80 text
Powered by Rabbit 0.9.2 The Standard It's stll incomplete 79/192
Slide 81
Slide 81 text
Powered by Rabbit 0.9.2 The Standard More versions to come 80/192
Slide 82
Slide 82 text
Powered by Rabbit 0.9.2 The Standard Better coverage 81/192
Slide 83
Slide 83 text
Powered by Rabbit 0.9.2 The Standard Will move to 1.9 (or 2.0) 82/192
Slide 84
Slide 84 text
Powered by Rabbit 0.9.2 The Standard The reasons behind 83/192
Slide 85
Slide 85 text
Powered by Rabbit 0.9.2 The reasons behind Business reliability 84/192
Slide 86
Slide 86 text
Powered by Rabbit 0.9.2 The reasons behind Alternative implementations 85/192
Slide 87
Slide 87 text
Powered by Rabbit 0.9.2 86/192
Slide 88
Slide 88 text
Powered by Rabbit 0.9.2 2011 87/192
Slide 89
Slide 89 text
Powered by Rabbit 0.9.2 The world has been taken over by machines 88/192
Slide 90
Slide 90 text
Powered by Rabbit 0.9.2 89/192
Slide 91
Slide 91 text
Powered by Rabbit 0.9.2 90/192
Slide 92
Slide 92 text
Powered by Rabbit 0.9.2 91/192
Slide 93
Slide 93 text
Powered by Rabbit 0.9.2 92/192
Slide 94
Slide 94 text
Powered by Rabbit 0.9.2 93/192
Slide 95
Slide 95 text
Powered by Rabbit 0.9.2 94/192
Slide 96
Slide 96 text
Powered by Rabbit 0.9.2 95/192
Slide 97
Slide 97 text
Powered by Rabbit 0.9.2 96/192
Slide 98
Slide 98 text
Powered by Rabbit 0.9.2 97/192
Slide 99
Slide 99 text
Powered by Rabbit 0.9.2 98/192
Slide 100
Slide 100 text
Powered by Rabbit 0.9.2 All driven by computers 99/192
Slide 101
Slide 101 text
Powered by Rabbit 0.9.2 Computers need software 100/192
Slide 102
Slide 102 text
Powered by Rabbit 0.9.2 Software ratio in systems increasing 101/192
Slide 103
Slide 103 text
Powered by Rabbit 0.9.2 Software should be written by us 102/192
Slide 104
Slide 104 text
Powered by Rabbit 0.9.2 in programming languages 103/192
Slide 105
Slide 105 text
Powered by Rabbit 0.9.2 There are numerous programming languages 104/192
Slide 106
Slide 106 text
Powered by Rabbit 0.9.2 But what we love most is.. 105/192
Slide 107
Slide 107 text
Powered by Rabbit 0.9.2 Ruby 106/192
Slide 108
Slide 108 text
Powered by Rabbit 0.9.2 But what is Ruby? 107/192
Slide 109
Slide 109 text
Powered by Rabbit 0.9.2 Muiti-fold definition 108/192
Slide 110
Slide 110 text
Powered by Rabbit 0.9.2 Ruby the syntax 109/192
Slide 111
Slide 111 text
Powered by Rabbit 0.9.2 Ruby the philosophy 110/192
Slide 112
Slide 112 text
Powered by Rabbit 0.9.2 Ruby the library 111/192
Slide 113
Slide 113 text
Powered by Rabbit 0.9.2 Ruby the gems 112/192
Slide 114
Slide 114 text
Powered by Rabbit 0.9.2 Ruby the community 113/192
Slide 115
Slide 115 text
Powered by Rabbit 0.9.2 We'd like to help more developers 114/192
Slide 116
Slide 116 text
Powered by Rabbit 0.9.2 JRuby 115/192
Slide 117
Slide 117 text
Powered by Rabbit 0.9.2 Ruby for JVM platform 116/192
Slide 118
Slide 118 text
Powered by Rabbit 0.9.2 Ruby to reach Java world 117/192
Slide 119
Slide 119 text
Powered by Rabbit 0.9.2 Ruboto 118/192
Slide 120
Slide 120 text
Powered by Rabbit 0.9.2 JRuby on Android 119/192
Slide 121
Slide 121 text
Powered by Rabbit 0.9.2 Rhodes 120/192
Slide 122
Slide 122 text
Powered by Rabbit 0.9.2 Ruby for mobile phones 121/192
Slide 123
Slide 123 text
Powered by Rabbit 0.9.2 CRuby 122/192
Slide 124
Slide 124 text
Powered by Rabbit 0.9.2 Ruby 1.9.3 123/192
Slide 125
Slide 125 text
Powered by Rabbit 0.9.2 Ruby 1.9.3RC1 124/192
Slide 126
Slide 126 text
Powered by Rabbit 0.9.2 Yugui 125/192
Slide 127
Slide 127 text
Powered by Rabbit 0.9.2 126/192
Slide 128
Slide 128 text
Powered by Rabbit 0.9.2 Keywords for the future 127/192
Slide 129
Slide 129 text
Powered by Rabbit 0.9.2 Cloud+Mobile 128/192
Slide 130
Slide 130 text
Powered by Rabbit 0.9.2 Cloud 129/192
Slide 131
Slide 131 text
Powered by Rabbit 0.9.2 130/192
Slide 132
Slide 132 text
Powered by Rabbit 0.9.2 131/192
Slide 133
Slide 133 text
Powered by Rabbit 0.9.2 132/192
Slide 134
Slide 134 text
Powered by Rabbit 0.9.2 Mobile 133/192
Slide 135
Slide 135 text
Powered by Rabbit 0.9.2 Small devices 134/192
Slide 136
Slide 136 text
Powered by Rabbit 0.9.2 Digital appliances 135/192
Slide 137
Slide 137 text
Powered by Rabbit 0.9.2 Mobile phones 136/192
Slide 138
Slide 138 text
Powered by Rabbit 0.9.2 Vehicle 137/192
Slide 139
Slide 139 text
Powered by Rabbit 0.9.2 Robots 138/192
Slide 140
Slide 140 text
Powered by Rabbit 0.9.2 I'd like to address these fields 139/192
Slide 141
Slide 141 text
Powered by Rabbit 0.9.2 As Lua does now 140/192
Slide 142
Slide 142 text
Powered by Rabbit 0.9.2 141/192
Slide 143
Slide 143 text
Powered by Rabbit 0.9.2 mruby 142/192
Slide 144
Slide 144 text
Powered by Rabbit 0.9.2 mruby Matz's embeddable minimal implementation of Ruby language 143/192
Slide 145
Slide 145 text
Powered by Rabbit 0.9.2 RiteVM as core 144/192
Slide 146
Slide 146 text
Powered by Rabbit 0.9.2 Minimal standard libraries 145/192
Slide 147
Slide 147 text
Powered by Rabbit 0.9.2 Embeddable C API 146/192
Slide 148
Slide 148 text
Powered by Rabbit 0.9.2 Incremental GC 147/192
Slide 149
Slide 149 text
Powered by Rabbit 0.9.2 Soft realtime 148/192
Slide 150
Slide 150 text
Powered by Rabbit 0.9.2 Parser to generate AST 149/192
Slide 151
Slide 151 text
Powered by Rabbit 0.9.2 Codegen to generate bytecode 150/192
Slide 152
Slide 152 text
Powered by Rabbit 0.9.2 RiteVM to run bytecode 151/192
Slide 153
Slide 153 text
Powered by Rabbit 0.9.2 32bit instructions 152/192
Slide 154
Slide 154 text
Powered by Rabbit 0.9.2 Instructions are serializable 153/192
Slide 155
Slide 155 text
Powered by Rabbit 0.9.2 to binary files 154/192
Slide 156
Slide 156 text
Powered by Rabbit 0.9.2 or C files 155/192
Slide 157
Slide 157 text
Powered by Rabbit 0.9.2 Entirely written in C99 156/192
Slide 158
Slide 158 text
Powered by Rabbit 0.9.2 for all imaginable platforms 157/192
Slide 159
Slide 159 text
Powered by Rabbit 0.9.2 Linux 158/192
Slide 160
Slide 160 text
Powered by Rabbit 0.9.2 Windows 159/192
Slide 161
Slide 161 text
Powered by Rabbit 0.9.2 MacOS 160/192
Slide 162
Slide 162 text
Powered by Rabbit 0.9.2 Android 161/192
Slide 163
Slide 163 text
Powered by Rabbit 0.9.2 iOS 162/192
Slide 164
Slide 164 text
Powered by Rabbit 0.9.2 VxWorks 163/192
Slide 165
Slide 165 text
Powered by Rabbit 0.9.2 ITRON 164/192
Slide 166
Slide 166 text
Powered by Rabbit 0.9.2 or even non OS platforms 165/192
Slide 167
Slide 167 text
Powered by Rabbit 0.9.2 As I explained last year 166/192
Slide 168
Slide 168 text
Powered by Rabbit 0.9.2 Difference? 167/192
Slide 169
Slide 169 text
Powered by Rabbit 0.9.2 Now it works! 168/192
Slide 170
Slide 170 text
Powered by Rabbit 0.9.2 Demo 169/192
Slide 171
Slide 171 text
Powered by Rabbit 0.9.2 Demo Mandelbrot Set 170/192
Slide 172
Slide 172 text
Powered by Rabbit 0.9.2 171/192
Slide 173
Slide 173 text
Powered by Rabbit 0.9.2 mruby is young 172/192
Slide 174
Slide 174 text
Powered by Rabbit 0.9.2 it's small 173/192
Slide 175
Slide 175 text
Powered by Rabbit 0.9.2 it's weak 174/192
Slide 176
Slide 176 text
Powered by Rabbit 0.9.2 mruby has possibility 175/192
Slide 177
Slide 177 text
Powered by Rabbit 0.9.2 huge possibility 176/192
Slide 178
Slide 178 text
Powered by Rabbit 0.9.2 can you imagine? 177/192
Slide 179
Slide 179 text
Powered by Rabbit 0.9.2 Mobile device 178/192
Slide 180
Slide 180 text
Powered by Rabbit 0.9.2 Robots 179/192
Slide 181
Slide 181 text
Powered by Rabbit 0.9.2 Digital appliances 180/192
Slide 182
Slide 182 text
Powered by Rabbit 0.9.2 Games 181/192
Slide 183
Slide 183 text
Powered by Rabbit 0.9.2 Ruby instead of Lua 182/192
Slide 184
Slide 184 text
Powered by Rabbit 0.9.2 Server side 183/192
Slide 185
Slide 185 text
Powered by Rabbit 0.9.2 Ruby instead of Node.js 184/192
Slide 186
Slide 186 text
Powered by Rabbit 0.9.2 One big step to rule the world 185/192
Slide 187
Slide 187 text
Powered by Rabbit 0.9.2 No perfect languages 186/192
Slide 188
Slide 188 text
Powered by Rabbit 0.9.2 Even Ruby 187/192
Slide 189
Slide 189 text
Powered by Rabbit 0.9.2 We'd like to provide choices 188/192
Slide 190
Slide 190 text
Powered by Rabbit 0.9.2 Freedom to choose Ruby 189/192
Slide 191
Slide 191 text
Powered by Rabbit 0.9.2 And make the world happier 190/192
Slide 192
Slide 192 text
Powered by Rabbit 0.9.2 As we feel right now 191/192
Slide 193
Slide 193 text
Powered by Rabbit 0.9.2 Thank you 192/192