The SapporoRubyKaigi03 was held yesterday in Hokkaido, one of the largest northern islands in Japan.
The total attendees were about 150, of these 110 people were local, and the reset of 40 people came from Honshu(main island in Japan) include Matz.
There were 10 sessions and 11 lightning talks about testing, math library, pair programming, ruby block goodness, using dRuby library, Rails, e-publishing and Ruby culture.
An unique session was curling(http://en.wikipedia.org/wiki/Curling) and Ruby, to make DSL for writing result of curling tournament for people not familiar computer. And he was speaking about his life with agriculture and Ruby in Moseushi, Hokkaido.
And we enjoy delicious seafoods and Rubyist meetup too. :)
I translate a part of Matz Keynote speech in below.
--- Matz Keynote ---
"Let there be light"
Ruby was born in 1993.
User number was 1(of course me!) at that time.
In 2010, Ruby is 10th in TIOBE index.
When I was making Ruby, what should I do in that days?
I'd like to bring more light into the language.
For example, Lisp power, Smalltalk power, Perl power!
I'd like to use higher-order function and OOP in it.
Lisp is very good, but can we write business apps using CommonLisp?
(Of course some people are still writing...)
In 1993, OOP == C++.
Few people knew Smalltalk and Lisp.
It was not common to use OOP with scripting languages.
I wanted to bring these lights to the user of the language (the user was only me at that time!).
There are 2 things I am doing recently, HPC and Embedded.
Prof Hiraki of Tokyo Univ started a project to apply Ruby in HPC(High Performance Computing) env.
I am helping his project, and encouraging him to open source the result.
The things to do are
- Improving YARV
- Type Inference = You may be able to inline only integer so that number calculation could be faster. There are already some prototype showing that
some of the calculation is 80% as fast as C.
Why do I do these?
I would like to bring the expressiveness of OO and functional feature into these fields via Ruby.
The policy of Ruby.
If there are nice things, let's deliver to the world.
If none, then let's make it by ourselves.
In future, I want Ruby to keep being the light which brings new concepts and ideas to people.
I also would like people to see such light, add their own, and spread it to other people.
Back then, the "light" was OO and functional paradigm.
Now, there are lots of interesting techniques, concept, and paradigm which are still not popular and only be found at some thesis level (or only some small community knows).
I would like to include these new concepts into Ruby as long as it does not conflict with Ruby's syntax and so on. I also would like people to add their own thoughts by adding, extending, and bending Ruby.
Eventually such light will change the world (not just through Ruby, but also through you).
So, today's theme was "Let your light shine".
Sorry for being a bit too "religious" like, but I would like to conclude my talk by quoting from new testament.
- Matthew 5:16 -
"Let your light so shine before men,
that they may see your good works,
and glorify your Father which is in heaven."
Yes, this idea is there since 2000 years ago.
I will also show you a photo of Ruby Kaigi staff(http://www.flickr.com/photos/recompile_net/4935820587/).
You can tell that they are shining.
Ruby Advent Calendar jp-en: 2010
I've added a lot of more detail sentences by makoto_inoue. thanks! :) and I've replaced the link to sorah.