|
I don't go to as many conferences as I used to, but the advantage
of that is that I have time to go to ones that take my fancy. I've
long had a particular fondness for the Ruby community, so I turned
up as an attendee at this year's RailsConf.
Chad Fowler and
Rich Kilmer introduced
the conference. Chad shares my name but I don't share his ukulele skills.
With a young technology there's lots of new and important pieces
appearing, but for me the most important of these is
JRuby. Now in its final cycle of release candidates, JRuby offers a
full implementation of the Ruby Platform on the Java JVM, as well as
providing a scripting language for the JVM. For what we do at
ThoughtWorks, and for many Ruby/Rails developers this matters a
great deal even if you never "include java". One of the biggest issues our Ruby teams run into is
deployment. Getting a ruby app into production involves a whole
bunch of new technologies, and data centers tend to be conservative
on this kind of thing. Our RubyWorks stack tries to simplify this,
but JRuby offers the choice of just deploying into a Java container,
turning a Rails app into an easily deployed war file. I think this
will make Ruby on Rails a much more viable choice in lots of
enterprise environments. JRuby's maturity on the JDK raised the obvious question of what
will happen with the other popular managed runtime. Signals from
Microsoft were faint and unclear. It was good to see notable 'softies
Scott Hanselman and Chris Sells at the show, even
if when I saw Chris Sells it felt like being in an arena. What I like
is that there is a real desire within the ruby community to
collaborate with Microsoft rather than the usual competition and
Redmond-bashing. Indeed the overwhelming impression I got at RailsConf was a sense
of industry-changing mission. At last year's conference my sense was
that of a community delighted and rather stunned by its success. My
iconic image was DHH as Neo of the Matrix, breaking the rules of
enterprise software and reveling in the success. This year my sense is that this morphed into something much more
important. Success is not just being an outbreak of sanity in the IT
world, but actually leading that world. There seems an excellent
chance that Ruby and Rails could become a significant platform for IT
develop over the next few years. We're already seeing signs of this at
ThoughtWorks - 40% of our new business this year in the US is Ruby
work. Unlike previous platforms, this one isn't controlled or even
dominated by vendors. Ruby is a community effort. I've been hoping
for a long time that one of the LAMP technologies would break through
into corporate IT, and it looks like Ruby could well do it. Corporate IT is dominated by bloatware. Time and time again we
have to deal with expensive software purchased on golf-courses that
just get in our way while sucking funds and development
hours. Technologies that make it harder for programmers to do what
they like to do best - make a difference for the businesses they are
supporting. (This week's memorable tale was of a large company
that spent eight million dollars on an enterprise-wide version control
system that couldn't branch properly.) My hope that with a platform that's controlled by a community
we'll see a platform that focuses on simplicity - finding the key
things that need to be done and doing them in a way enables
programmers to provide their best.
Michael
Koziarski and Jamis Buck describing the Rails Way - establishing the
good style which lies deep in the Ruby community.
It's helped by the fact that the ruby community has formed around
the best ideas of the OO and Extreme Programming
communities. Listening to the keynote of Jamis Buck and Michael Koziarski I was
delighted to reflect on the thought that they were right there in
the values of Ward, Kent, and all the other people who've been
advocating clean code, well-factored object-oriented design, and
testability. These ideas have made a great impact on many other
technological communities, but in Ruby-land they are the orthodoxy. Throughout the conference there was a sense that we are at an inflection-point in our
industry, a key technological shift that promotes a new major
platform. Listening and reading about JavaOne I got the sense that
a big shift had happened there, people no longer focusing on Java
the language but on Java the JVM, replacing one language with
multiple languages closely collaborating. A particularly fascinating thing about the Ruby community is the
diversity of ages of people in it. Not just do you have the young
paradigm breakers like DHH and the core team, you also have the, ahem,
rather more seasoned campaigners like PragDave and the RubyCentral
triumvirate. The important thing is that there's a lot of respect
and collaboration across this generation gap. There isn't the wall
between the old
farts and the loud teenagers that you often get, instead a real
appreciation for what both groups have to offer. Not that all is good, however. There is a marked lack of women in
the ruby community which, apart from the fact that we're missing out
on some serious talent, probably is a sign of other problems within the
community. The DevChix group was
pretty active in looking for ways to try to correct this and I
was pleased to see several conversations sprout up during the
conference on finding ways to improve our Diversity
problems. A couple of years ago I wrote about the impressions people had
that the RubyPeople were notably more friendly than most software
communities. Talking to people at RailsConf I got the message that
that had changed for the worse. Both the ruby lists and particularly
the rails lists had tended more towards the sad Internet mean. In
his opening keynote Chad Fowler said that the rails community had a
reputation as "a bunch of arrogant bastards" and I cringed as an,
admittedly small, group raised a triumphant cheer. What pleased me was, that starting with Chad, there was a strong push
from the ruby leadership to try and change this. A theme that came
from several talks was that our community had an opportunity to try to
lead the software profession away from this tar-pit of
NetNastiness and lack of diversity, to create a community
that really welcomed many types of people into a nurturing and pleasant
environment. I've been sick of the tone of geek discussion for many
years and if the Ruby community could really show a direction to lift
us out of this quagmire, this would delight me even more than all of
the other prizes that glitter in front of us. (Photos courtesy James Duncan Davidson.)
|