27.02.2013 Views

Rails%203%20In%20Action

Rails%203%20In%20Action

Rails%203%20In%20Action

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

542 APPENDIX A Why Rails?<br />

it helps you make less silly mistakes and provides the groundwork for you to test the<br />

fixes for any bugs that come up in your system. Ruby, just like every other language, is<br />

no good at preventing buggy code. That’s a human trait that is unavoidable.<br />

The shift away from SVN to the wonderful world of distributed version control was<br />

also a major milestone, with GitHub (a Rails application!) being created in early 2008.<br />

Services such GitHub have made it easier than ever for Ruby developers to collaborate<br />

on code across cultures. As an example of this, you only need to look at the authors of<br />

commits on the Rails project to see the wide gamut of people.<br />

Don’t just take it from us. Here’s a direct quote from somebody who had only been<br />

using Rails for a few days:<br />

When I am programming with Ruby I think I’m making magic.<br />

—New person<br />

Although Ruby isn’t quite the magic of fairy tales, you’ll find young and old, experienced<br />

and not-so-experienced people all claiming that it’s just a brilliant language to<br />

work with. As Yukihiro Matsumuto (the creator of the language) says: Ruby is<br />

designed to make programmers happy. Along the same lines, the Rails claim you saw<br />

earlier, “optimized for programmer happiness and sustainable productivity,” is not<br />

smoke and mirrors either. You can be extremely happy and productive while using<br />

Rails, compared with other frameworks.<br />

Let’s dive a little deeper into the reasons why Rails (the framework) and Ruby (the<br />

language) are so great.<br />

A.1 Reason #1: the sense of community<br />

The Rails community is like no other on the planet. There is a large sense of togetherness<br />

in the community with people freely sharing ideas and code through services<br />

such as GitHub and RubyGems (see Reason #2). An example of this is the vibrant<br />

community on the Freenode IRC network (irc.freenode.net) where the main #rubyonrails<br />

channel is primarily used for asking questions about Rails. Anybody can come<br />

into the channel and ask a question and receive a response promptly from one of the<br />

other people who visit the channel. There’s no central support authority: it’s a group<br />

of volunteers who are voluntarily volunteering 3 their time to help strangers with problems,<br />

without asking for money or expecting anything else in return.<br />

There’s also a large support community focused around Stack Overflow (http://<br />

stackoverflow.com) and other locations such as the Ruby on Rails Talk mailing list<br />

(http://groups.google.com/group/rubyonrails-talk) and Rails Forum (http://<br />

railsforum.com). Not to mention, there’s also the RailsBridge (http://railsbridge<br />

.org) organization, which aims to bridge the gap between newbies and experienced<br />

developers.<br />

All of these different areas of the internet share a common goal: be nice to the<br />

people who are asking for help. One mantra in the Ruby community is, “Matz is nice<br />

3 Too much “volunteer” usage, perhaps. It was voluntary.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!