Why learn Ruby on Rails?

A list of 7 key points explaining why we decided to teach Ruby on Rails at Le Wagon.

Sébastien Saunier
Jun 29, 2015 · 5 min read

Since I’ve been the CTO and teacher of the French coding bootcamp Le Wagon, the question “Why learn Ruby on Rails?” is often asked by many entrepreneurs who are eager to learn to code. That’s why I decided to put together a list of seven key points explaining why we decided to train newbies how to code by teaching them Ruby on Rails.

Important: Note that Ruby / Ruby on Rails is a good choice to start programming, but not an exclusive choice. Python / Django are also solid options. At Le Wagon we decided to teach Ruby on Rails mainly because of its educational value.

Ruby, an easy-to-approach programming language

One of the first nice things about Ruby on Rails lies in the Ruby language itself. The syntax is simple, concise, close to the English language and very flexible. For experienced developers, Ruby opens the way for meta-programming (the act of writing code in order for your service to generate other pieces of code automatically) uniquely. Intellectually, it’s a pleasure to structure one’s thinking and to write code in this language.

A minimal tool set

Once the setup and config made on your computer, the tool set associated with Ruby on Rails is the simplest of all: a text editor, a terminal and a browser. No time wasted nor loading screen when coding. Your computer breathes. You too.

Extraordinarily flexible

Rails is a framework, meaning a frame which the developer must fit into. It is also a unique tool perfectly suited to web application development. For a startup, go fast, pivot, iterate, change your mind, scale, build and deconstruct is part of everyday life. Rails offers extraordinary flexibility to cash without flinching all these changes.

Whatever field you want to invest yourself into, in general, you will need: a database, a Front-End (the visible part of your application) and a Back-End (server-side code). Painlessly blending and organizing these three elements is definitely the sweet spot of Rails.

Simplified learning and cooperation

Rails is based on the principle of Convention over Configuration. The architecture of your code is standardized, and made mandatory by the framework. There’s always a rails way to get things done. This allows a Rails developer to rapidly get hold of any Rails application, even if he hasn’t coded a line, which grandly facilitates collaboration and learning.

This may disconcert developers coming from a more verbose language, which often will wonder where the code is located. You need to get along with this abstraction. But once the conventions understood and assimilated, the speed of development of any new functionality is extraordinary.

The strength of its community

Rails is a Gem, that is to say an open source module developed and maintained for over 10 years by thousands of developers. In addition, there are thousands of gems out there, we have recently presented 25 of them. Thus, when a new feature is to be developed, 90% of the time, the work can be performed quickly on the basis of an existing module.

The code of each gem is available on GitHub, and even if you don’t find a gem with the exact feature you want, no worries, you can then simply fork the gem and edit it to the specific functionality you were looking for. Up to you then to share (give back) this new feature with the community by submitting a pull request to the initial gem, so your new piece of code can be merged into it. This spirit is great ethically / morally, but also economically, as the ruby ​​developers don’t reinvent the wheel each time but integrate existing bricks in order to focus on the business needs of their users / clients.

Historically, the Ruby community is based on a culture of openness and sharing. In addition to the multiple communities on the web, you will find many physical relays around the world, like the excellent Paris.rb group.

A recognized skill in the Startup ecosystem…

If on one hand languages ​​like Java and C# remain predominant in the corporate world, on the other side Ruby is often acclaimed by the startup environment. Many successful web startups began and continue with Rails (GitHub, Twitter, Basecamp, Shopify …) and some Le Wagon alumni found developer jobs in startups.

…that makes sense within a broader stack

Alan Turing showed that all languages ​​are intrinsically equal in terms of expressiveness, which means that once you know how to program in a language, you can program in all languages. Acquiring the programmer mindset is the hardest part of the game.

And if a job requires you to code in another language, after an intensive week you will quickly be able to see the syntactic analogy between your preferred language and the new one. Actually you will need at least a more complete stack control:

All these concepts are addressed and integrated within Le Wagon’s Full-Stack program and it’s amazing to see what our students acquire in 9 weeks what others take year. Le Wagon’s students, seasoned or wannabe entrepreneurs, bring a great diversity in the projects, and are continuously challenging the expertise of the staff. Definitely refreshing! Not to mention these bluffing results!

To answer a wider need for coding trainings we have created On Demand: online coding classes for entrepreneurs! If you are interested in learning Front-End, Data Science, JavaScript and/or Ruby, check out our awesome online coding classes! Here’s a welcome gift if you’re interested in subscribing.

Let’s build our world!

Sebastien Saunier

CTO du Wagon

Le Wagon

Stories from our community on coding, product and…

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store