I’m at RubyConf in Orlando through the weekend. Today starts with a keynote by Matz, followed by three parallel tracks. I’m going to try to switch from track to track between talks, not just a breaks, but I don’t know whether the timing will work.
Matz’s keynote is “Reasons Behind Ruby.” His reason for Ruby is that it’s his masterpiece, and it lets him maximize freedom. But what about for the rest of us? Ruby’s imperfect: it’s slow, it’s complex, it’s inconsistent, it’s poorly implemented (in MRI), and so on. So why do so many people love Ruby?
Ruby’s enjoyable, it makes programming fun again. Again? When did it stop being fun?
Geez – Matz learned programming with BASIC on some kind of programmable calculator. (Actually, BASIC was my first programming, language, too. But on an IBM 360. Which was probably about as powerful as his calculator. So how come I haven’t created a great programming language?)
Matz loved the control from programming, but BASIC was limiting. His next language was LISP. A little different. He liked it, but didn’t really love it. (And a lot of LISP people feel that everybody should love it.) He wanted to be in charge of his programming language.
His analogy: BASIC at one side, LISP at the other… over the edge of a cliff. He shows a big space between BASIC and the edge of the cliff, which is where he wants to be.
Ruby on Rails turns Ruby into a web DSL. Ruby lets you create your own specialized languages, but stay within Ruby. Rake is a DSL for building an application, RSpec is a DSL for testing. LISP is good for building DSLs, but so is Ruby.
There are fewer than a million Ruby programmers now, but Gartner predicts more than four million by 2013. That isn’t necessarily good, unless the Ruby community stays as open and positive as it has been.
Matz closes with thanks to all of us!