Comment débuter en Ruby on Rails ?

Il m’arrive régulièrement de croiser des gens souhaitant s’initier à Ruby et Ruby on Rails. Il existe une multitude de ressources. J’ai essayé de sélectionner celles qui me semblent vraiment indispensables.
Développeurs Ruby, vous pouvez passer votre chemin, je ne vous en voudrai pas, vous n’apprendrez pas grand chose ici :)

Avant de commencer, faisons un petit rappel. Ruby est un langage de programmation (comme PHP, Java, Python…) et Ruby on Rails est un framework (les fondations d’un site, cela évite de réinventer la roue et permet de bien structurer son code).
Sites web à fort trafic utilisant Ruby on RailsRuby on Rails est un framework web très utilisé par les startups en ce moment (et pas les moindres, voir ci-contre). RoR permet de développer rapidement des sites web tout en respectant un grand nombre de bonnes pratiques. Ce framework très innovant et bien pensé est, depuis quelques années, une source d’inspiration pour de nombreux autres frameworks.
Si vous n’êtes pas sûr que c’est Ruby que vous devez apprendre, voici une conférence qui peut vous aider à faire le choix : Pourquoi Ruby on Rails est génial ?

Vous avez de la chance, il est vraiment possible d’apprendre Ruby et Ruby on Rails en s’amusant ! Vous allez voir…

Tout d’abord, Ruby

Le logo du langage de programmation RubyAvant de commencer à apprendre Ruby on Rails et faire des sites web avec, vous devez tout d’abord apprendre Ruby.

Je vous invite à aller faire un tour sur Try Ruby!. Ce site va vous permettre d’apprendre Ruby en commençant vraiment par les bases, le tout dans une ligne de commande interactive en ligne (pas besoin d’installer quoi que ce soit sur votre machine).

EDIT : Je vous conseille également d’aller jeter un oeil à Rubymonk. Pas encore complet, ce site permet d’apprendre les bases de Ruby encore plus simplement qu’avec Try Ruby !

Vous pouvez facilement installer Ruby sur votre propre machine que vous soyez sur Windows, Mac OS ou Linux. Une fois l’installation faites, lancez la commande « irb » en ligne de commande. IRB est une ligne de commande qui ressemble beaucoup à ce que vous avez pu voir sur Try Ruby (sans le tutoriel). C’est très pratique pour tester des bouts de code. Voici à quoi cela ressemble :

Session IRB Ruby

Ensuite, pour approfondir vos connaissances et les tester, je vous conseille de jeter un oeil à RubyKoans. Là encore, une façon originale d’apprendre un langage. Vous aller devoir completer les trous dans le code, puis lancer les tests pour vérifier vos réponses. Tout est expliqué sur le site.

Enfin, si vous souhaitez aller plus loin, vous devez lire Programming Ruby 1.9 (3rd edition): The Pragmatic Programmers’ Guide. La 3ème édition d’un livre d’une qualité remarquable.

Ensuite Ruby on Rails

Logo du framework web Ruby on RailsMaintenant que Ruby vous est familier, vous pouvez vous attaquer à Ruby on Rails. C’est sans hésiter que je vous propose de commencer votre formation avec Rails for Zombies. Sous ce nom étonnant se cache un site très bien fait, ludique et fun. Sans aucun doute, le meilleur moyen d’apprendre Rails en s’amusant !

Ensuite, vous pourrez renforcer vos bases en lisant les Ruby on Rails Guides. Ils commencent par un tutoriel très simple et vous guideront jusqu’à des notions assez avancées.

Enfin, des screencasts sont aussi à votre disposition pour approfondir des points qui vous intéressent tout particulièrement sur RailsCasts.

« Hum… c’est pas si simple »

Se former seul n’est pas simple et il est fort possible que vous ayez du mal à comprendre certaines choses.

Vous pouvez tout abord rencontrer des développeurs Ruby dans un apéro Ruby près de chez vous (il y en a dans la plupart des grandes villes françaises). C’est un bon moyen de rencontrer des développeurs passionnés qui pourront prendre le temps de vous expliquer quelques points qui sont encore flous pour vous.

Ensuite, si vous avez du mal à vous former seul ou si vous manquez de temps, vous pouvez faire appel à un formateur. Il y a quelques entreprises et indépendants qui font ça très bien. Si ça vous intéresse, envoyez-moi un mail, je pourrai vous en conseiller quelques-uns.

En résumé

Si je ne devais vous donner que 3 ressources pour commencer sans difficultés,  je vous conseillerais le parcours suivant Try Ruby! → Rails for Zombies → Ruby on Rails Guides. Bon apprentissage !

Edit :  Pour vous formez plus rapidement, je vous invite à découvrir la formation Ruby on Rails de Matthieu Segret sur Human Coders Formations.

Si vous avez d’autres supports à conseiller, n’hésitez pas à les proposer en commentaire.

  • http://a13.fr/ Thibault Jouan

    J’ajouterai qu’il est très facile de trouver et d’étudier le code de nombreuses applications rails. Beaucoup sont disponibles en open-source (sur github…), il est donc facile de voir comment « font les autres ».

  • http://www.guirec-corbel.com Guirec Corbel

    L’erreur que j’ai fait au début de mon apprentissage de Rails était de chercher des sources en français. Je pense qu’il ne faut pas hésiter à chercher en anglais et se forcer un peu. C’est vrai pour tout ce qui est développement informatique mais c’est encore plus vrai pour RoR qui n’a pas une très grande communauté francophone.

  • Dorian LUPU

    Je rajouterais aussi les excellents screencasts des Ryan Bates (http://www.railscasts.com). Pour moi ces épisodes ont représenté au début la principale source de bonnes pratiques et astuces. 2 ans plus tard, je continue à les regarder avec beaucoup d’intérêt et plaisir.

  • http://www.camilleroux.com Camille Roux

    Dorian, l’article parle déjà des RailsCasts :) (à la fin de la partie sur Ruby on Rails)

  • Dorian Lupu

    En effet Camille:). En fait, j’ai suivi le conseil de « passer mon chemin  » et je n’ai lu que la conclusion :).

  • http://milesrock.com Thibaut Assus

    Hey, bon article !
    Moi j’ai appris tout seul en lisant http://pragprog.com/book/ruby/programming-ruby
    et
    http://pragprog.com/book/rails3/agile-web-development-with-rails (agile web development with rails)

    Ces 2 bouquins sont les meilleurs pour débuter, et le 2e en plus d’apprendre rails explique la méthode agile de développement si chère aux Rubyistes.

  • http://milesrock.com Thibaut Assus

    Typo :
    en fait il vaut mieux lire :
    http://pragprog.com/book/rails4/agile-web-development-with-rails

    c’est la dernière version ;)

  • Pingback: Ruby, le prochain langage à apprendre ? | Remixjobs blog()

  • Pingback: Entretien Startup Weekend : Ruby on Rails avec Camille Roux | Startup Weekend Bretagne()

  • Nicolas

    Bonjour,

    J’ai découvert un site, encore en version alpha, qui propose l’apprentissage du langage Ruby par un ensemble de petits exercices et de problèmes. Pour l’instant c’est encore loin d’être terminé mais ça à l’air prometteur :

    http://rubymonk.com/

    (site en anglais par contre ;) )

  • Alexandre Dieulot

    Salut, que penses-tu de Learn Ruby the hard way? J’en ai entendu de bons échos un peu partout.
    http://ruby.learncodethehardway.org/book/

  • http://openagile.net Quenec’hdu

    Bonjour,

    Juste pour vous dire que j’ai trouvé excellent votre article et que c’est très ludique pour apprendre les bases de Ruby.

    Manque peut être dans les bases du développement, d’apprendre à écrire un test avant d’écrire le code avec BDD.

  • Geo

    Je complèterais ce très bon article en vous présentant un nouveau venu dans l’univers des travailleurs du web. Spot12 (http://www.spot12.com) est sorti récemment, il a pour vocation de centraliser toutes les informations dont ont besoin les travailleurs du web. Pour trouver des ressources sur Ruby on Rails rendez-vous sur la section Ruby on Rails (http://www.spot12.com/spots/ruby-on-rails) et prenez ce que les autres membres vous donnent. Puis quand vous serez des Rails gourou, donnez à votre tour des infos, partager et notre travail quotidien sera facilité lorsque tout le monde y mettre du sien ;)

  • Pingback: Démarrer en Ruby On Rails | Onefor4()

  • Pingback: Comment recruter un développeur Ruby on Rails ? | Camille Roux()

  • Bertrand V

    J’apprécie beaucoup http://railstutorial.org pour son livre et son tutoriel vidéo complet.

    Le livre est dispo gratuitement en ligne ici en français :
    http://french.railstutorial.org/chapters/beginning#book_menu

    et ici en anglais (à jour) :
    http://railstutorial.org/chapters/beginning#book_menu

    Il est vraiment excellent, et la progression du tutoriel est parfaite. L’installation et le déploiement est très précis, c’est vraiment top.

  • http://www.aureliendebord.com/ Aurélien Debord

    Merci pour l’info pour le site Try Ruby! Je vais tester cela !

  • Pingback: Idée développement | LMS6()

  • Jean-Claude Beaudry

    Bonjour Camille, connais-tu un bon programmeur Ruby au Québec ?

    JC

  • Guillaume LARIVIERE

    Bonjour Camille, merci pour ce super article, c’est toi qui m’a convaincu de m’y mettre ^^
    Tu connais Ruby pour les nuls ? C’est un site que j’utilise pour compléter mon apprentissage depuis la doc anglaise !