Ruby divide at RubyKaigi 2010 and what can you do as a Rubyist? (Part 2)
| From Matz On Pusher |
Contents
- At previous post
- "RubyKaigi must end (for now)"
- So, what can we do?
- Summary
At previous post.
At previous post, I went through the following Ruby divides I noticed during RubyKaigi 2010.
- Japanese / English = Ruby core ML and many variable documentations are written in Japanese and non Japanese developers are hard to access such information.
- Committers / Users = There seems divides between C dvelopers (C Ruby committers ), Java developers (JRuby community), and the rest (Ruby users).
- Before / After Rails = Japanese Ruby scene is very unique from the rest of the world(aka Galapagos). Some part are very advanced, but others are missing important aspect of Rails culture (eg: github, rubygems).
- Hobby / Enterprise = The ratio of Japanese Rubyists who uses Ruby at day job seems low.
These problems probably exist on any Ruby community(except English/Japanese bit) at certain extent, but the divide is especially deep in Japan, partly caused by the language gap, but some of them are inherent problems since Ruby was born in this country.
"RubyKaigi must end (at least once)"
Some of these problems have been pointed by @shyouhei" a year ago at his blog called "Ruby Must end(at least once)"(The English translation is here.
In his blog,
- RubyKaigi is maintained by the hard work of the enthusiastic volunteers, but it is coming to the stage where the growth of Ruby community is going beyond the capacity of these volunteers.
- The majority of the attendees are simply happy to attend the Kaigi and mingle with other attendees, but these networking efforts do not result back to Ruby community to keep up the work (such as documentation, more ruby committers and maintainers for bug fixes).
- As a solution, RubyKaigi should end for now and think about new ways to have a sustainable and scalable organisation/community.
This idea became the foundation of the theme for RubyKaigi2010.
Since the end of RubyKaigi, there have been a lot of conversation on Twittersphere suggesting various solutions, and some people actually made some actions.
- @pwim started Tokyo Ruby User group
- asakusa.rb and sfruby.rb became syster meetups (by @a_matsuda, @sarahmei, and @ultrasaurus).
- Mengurume Matsue Ramen contribute some of their sales to Ruby Association (NOTE: This was in action before/during the Kaigi, too).

From "Ruby on 松江ラーメン・キュービックシリーズ" at amazon
So, what can we do?
I also spent a bit of time thinking about these problems, and here are my list of suggestions to both Japanese and non Japanese Rubyists. I would love to know other people's suggestions,too.
Read "What can you do as a Rubyist?"
Unlike list of Rails contributors, Ruby has less contributors (RoR has 1600 contributors, while Ruby has about 700 for last 5 years each).
About a year ago, @fdiary wrote an article called "What can you do as a Rubyist" at Rubyist Magazine (The full translation is here). In this article, he talked about the following
- Use Ruby Software, so that you can hack and extend the system you actually make use of.
- Update to the latest (especially Ruby 1.9), take profiling, check memory usage, and report if you find any bugs.
- Do the periodic code review via commit logs, so that you will get better understanding about the software (great way to learn the code)
- When you get stack at bug fix, report and ask for help.
- Patrol blogs/twitter and help other people.
This is a great way to contribute to Ruby even if you are not the hard core C developers, and looks great way to improve your Ruby skills, debugging skills, and performance profiling/improvement skills.
Let's make Christmas Ruby
Hacking into Ruby source code seems hard. Why don't you start an easy and fun way first?
The funniest Rubyist during the Kaigi was @technohippy. He is known as the "first and last author of Google Wave book". Apparently his book was printed on the day Google announced not to continue the Google Wave development. During his lightning talk, he mentioned 3 of his funny Ruby clones(objective ruby, xruby, and fruby). The best one was "Fuzzy Ruby" which has "if maybe", "if perhaps", and "if probably" syntax to return true in different probability.
During the talk, he mentioned that we have passed the time to keep receiving christmas present from Matz, and now it is time to give something back to Matz.
1 count = 0 2 1000.times do 3 if true probably 4 count += 1 5 end 6 end 7 puts count #=> 839
This looks like just a joke (honestly, I don't think Matz is going to accept "if perhaps" as a new syntax), but I think this is a great way to get to know the Ruby internal, and it could potentially increase the number of Ruby committers in future.
Here are the slides/videos about hacking Ruby internals.
- Jruby Hacking Guide
- Hacking Parse.y = Slide, Video
More sister user groups
It's great that asakusa.rb and sfruby.rb are sister groups after many foreign Rubyist visited Japan, but we can have more partnership among other Japanese ruby user groups and non Japanese ruby user group. Apparently there are more than 20 ruby user groups in Japan. This is especially important for groups outside of Tokyo. Most foreigners tend to stay either in Tokyo or Kyoto, but you don't see many foreigners at other cities. Hence other regional Rubyists do not have chance to interact with non Japanese Rubyists. It would be fun if we can have Ruby User GoKon to match up Japanese user groups and non Japanese user groups at next Ruby Kaigi!!
Let's go to RubyKaigi 2011
Last, not least. Let's go to next Ruby Kaigi and make the final Ruby Kaigi memorable event and also great start of something new.
Summary
It's impossible to do everything I suggested here, but would be nice if you find something you could start from today, or you come up something else by reading this blog post. So what am I going to do? As you might have noticed, I started writing some of translations to Japanese Fine Software Writings wiki. If you would like to add more Japanese software writing (doesn't necessarily have to be "fine" nor "Ruby"), or would like to contribute as editors, please feel free to edit the wiki.