Camille Roux

Ingénieur en développement web (Ruby on Rails) sur Montpellier

Articles taggés avec ‘Développement’

RubyLive : Toute l’actualité Ruby en français !

Depuis quelques mois nous assistons à un retour incontestable de Ruby en France. De plus en plus de startups l’utilisent, des apéros Ruby fleurissent à travers la France, plusieurs blogs ont vu le jour récemment… Jamais autant d’articles n’ont été écrits en français sur Ruby.

Screenshot de RubyLiveMatthieu Segret et moi-même avons souhaité apporter une nouvelle pierre à cet édifice. Nous avons réfléchi à un moyen d’agréger ces multiples sources d’informations afin d’aider la communauté. C’est comme ça que nous avons créé RubyLive !

RubyLive est un flux d’actualités maintenu par la communauté (à la manière de RubyFlow). Chacun, une fois inscrit, peut soumettre des articles. Une fois modérés, les articles deviennent visibles, ils apparaissent sur le flux RSS et sont publiés sur nos comptes Facebook et Twitter.
Logo RubyLive : Toute l'actualité Ruby en français !Notre souhait est que RubyLive devienne la source d’information de référence pour tous les développeurs Ruby francophones. Pour cela, nous allons rester à votre écoute. Si vous avez des idées ou des suggestions, n’hésitez pas à nous les soumettre grâce au bouton situé en bas de page. Nous développerons en priorité les fonctionnalités les plus demandées.

Afin que ce site soit et reste d’une qualité professionnelle, nous avons demandé à des sociétés de nous soutenir. Nous sommes heureux de compter parmi nos premiers partenaires : Novelys, Belighted, Entropic Synergies, RemixJobs

Nous comptons sur vous pour nous proposer des news de qualité et faire connaître RubyLive autour de vous !

A tout de suite sur RubyLive.fr !

La communauté Ruby vue par… Jean-Etienne Durand!

Bonjour Jean-Etienne,

On se connaît par la magie de Twitter. Tu es le directeur de Wopata, une des sociétés françaises qui font du développement web en Ruby on Rails, et ton point de vue m’intéresse !
Je souhaite interviewer quelques personnes aux profils divers afin d’avoir un état des lieux de la communauté en France et de réfléchir ensemble à comment la faire évoluer.
Si tu le veux bien, j’aimerais en savoir plus sur ta vision de Ruby.- Peux-tu te présenter en quelques lignes ?

Jean-Etienne Durand - WopataJ’ai 34 ans, je suis ingénieur des Mines de Saint-Etienne, avec une spécialisation en informatique et micro-électronique. J’ai travaillé une dizaine d’années à l’étranger où je me suis consacré à la gestion d’archives audiovisuelles numériques au sein d’une multinationale.

A mon retour en France, je me suis installé à Bordeaux où j’ai fondé Wopata, une entreprise de prestation de services spécialisée dans la réalisation d’applications web (Ruby on Rails) et mobiles (iOS, Android). Wopata est récemment devenue éditeur avec sa propre suite logicielle Pillango dédiée à l’intervention humanitaire.

- Quand as-tu commencé à développer en Ruby ? Quelles ont été tes motivations ?

Le logo du langage de programmation RubyJ’ai commencé à développer en Ruby en 2005 via la version 0.6 de Rails (sic).

Les technologies que j’utilisais au quotidien dans mon travail ne me convenaient plus et je ressentais notamment de la frustration par rapport à l’ORM que nous avions développé en interne. J’ai découvert Rails et Active Record et j’ai tout de suite compris leur potentiel !

- Considères-tu Ruby et Ruby on Rails comme un avantage concurrentiel ? Pourquoi ?

Logo du framework web Ruby on RailsJe ne constate pas de demande d’utilisation d’une technologie précise de la part de nos clients. Certains peuvent être sensibles à une technologie en particulier ; d’autres viennent nous voir parce qu’on s’appuie sur des méthodes agiles.
Par contre, ils nous demandent tous d’être efficaces et surtout flexibles.

Le langage Ruby est à mon sens un de ceux qui répond le mieux à ces impératifs. Je vais prendre l’exemple de la modélisation. Nous n’avons plus besoin de passer par des modèles conceptuels de données. Grâce à la grande flexibilité de Ruby / Ruby on Rails, nous concevons directement les modèles physiques.

Un autre point fort de Ruby c’est sa communauté très active. On a accès à une multitude de gems, de plugins… A Wopata, Ruby est la pierre angulaire de tous nos développements web, en particulier pour Pillango. La réalisation de Pillango a été rendue possible grâce aux Rails Engines qui nous ont permis d’arriver à une architecture très flexible.

- Peux-tu me décrire ton environnement de travail habituel ? Quels gems, langages, techno, OS, IDE, méthodes utilises-tu ?

L’équipe de Wopata compte une quinzaine de personnes aujourd’hui. J’ai donc un peu abandonné la partie technique même si je garde encore quelques heures par semaine pour faire de la veille et du prototypage.
Je peux te décrire l’environnement habituel dans lequel travaille l’équipe.

A Wopata, nous sommes habitués à travailler sous Mac et Linux. Nos développements se font essentiellement sous Rails 3.1.  On utilise aussi RVM et Homebrew comme package managers.

La quasi totalité de nos applications est hébérgée sur le Cloud . Les projets les plus gros pour lesquels on a besoin de configurations spécifiques sont hébérgés sur Amazon EC2 et les projets de taille moyenne sont hébérgés via Heroku, pour simplifier le déploiement.

On utilise les gems mainstream comme Cancan, Devise ou Paperclip. De plus, nous avons nos propres gems, par exemple pour synchroniser les bases de données serveur avec les bases de nos applications mobiles.

Nous n’utilisons pas d’IDE. Nous préférons les éditeurs de texte tels que Textmate et vim.
On se sert de Git pour tous nos projets avec un workflow qui repose sur l’utilisation de branches.

Nous avons recours à une myriade de services externes car notre métier n’est pas tant le développement mais plus l’intégration de briques (Postmark, Websolr).

- Que penses-tu de la communauté Ruby en France ?

Je peux donner mon sentiment sur deux axes: la communauté des développeurs et en tant que recruteur.

Du point de vue des développeurs, la communauté est en pleine construction. Comme tu le sais, il y a des niches très actives à Sophia Antipolis, Lyon, Strasbourg ou Paris mais à Bordeaux on est encore assez isolé même si quelques évènements voient le jour. A noter bientôt le premier apéro Ruby à Bordeaux qui aura lieu tous les mois.

Ayant recruté plusieurs développeurs depuis la création de Wopata, je constate que les formations sur Ruby sont souvent inexistantes. A mon avis, cela s’explique par le fait que les écoles n’ont pas encore toutes compris l’enjeu de ce type de technologie. J’espère que la situation va s’améliorer au fil du temps. J’y contribue modestement en donnant des cours sur Ruby et Ruby on Rails dans une école d’ingénieurs à Paris. Par ailleurs, il existe de bonnes offres d’e-learning comme Rails for Zombies.

- As-tu des idées pour améliorer la situation actuelle de la communauté ruby ?

La communauté des développeurs est très active. Il nous reste maintenant à sensibiliser les chefs de projets, les chefs de produits et autres décideurs qui doivent comprendre ce qu’on gagne à utiliser ces technologies.

A ma connaissance, il n’existe pas d’annuaire de projets référence qui ont été faits avec Ruby on Rails, … et pourtant ils existent ! Il serait intéressant d’avoir des études de cas avec une approche plutôt business que technique.

- Quel rôle l’association Ruby France doit avoir aujourd’hui ?

Logo Ruby FranceNous ne sommes pas membre de cette association, il me parait donc difficile de donner mon sentiment. Toutefois, son rôle fédérateur devrait pouvoir sensibiliser professionnels et écoles.

- Je te laisse le dernier mot pour conclure :)

L’enjeu de la communauté est de montrer qu’avec Ruby et Ruby on Rails on arrive à être efficace et à réaliser de belles choses. Attention, arrêtons tout de même de mettre en concurrence Ruby et Ruby on Rails avec d’autres technologies, afin d’éviter de passer pour une communauté dogmatique et arrogante. Tout le monde est le bienvenu … surtout à Wopata ! Nous sommes actuellement à la recherche de nouveaux talents pour rejoindre l’équipe.

- Merci beaucoup de m’avoir accordé un peu de ton temps.

Vous pouvez retrouver Jean-Etienne sur Twitter

Aujourd’hui Nima Izadi (@Nima_Izadi) et Nicolas Dupont (@lowx512) sont mes invités, ils sont étudiants à Polytech’Nice Sophia. Ils viennent de mettre en ligne un blog, On The Rails Again, pour aider les gens à se former à Ruby on Rails simplement et en français. J’apprécie beaucoup cette initiative et je souhaitais qu’ils vous en parlent !Logo du framework web Ruby on Rails

Nous sommes deux élèves en dernière année d’école d’ingénieur en option IHM spécialité Web à l’école Polytech’ Nice Sophia. Nous sommes tous deux passionnés de Web depuis le début de nos études et notamment par les technologies comme Ruby On Rails ou encore Coffeescript. Nous faisons actuellement une alternance dans l’entreprise Intellicore dans laquelle nous travaillons sur un gros projet Ruby On Rails.
Nous avons fini récemment notre stage (que nous avons également fait ensemble) pendant lequel nous avons du reprendre et améliorer un projet Ruby On Rails.

Blog : On The Rails AgainOn The Rails Again vise, pour le moment, principalement les débutants en Ruby On Rails qui ne sont pas forcément ami avec l’anglais et qui cherchent à comprendre certains aspect de Rails qui ne sont pas évident au début. Nous allons essayer d’apporter des réponses aux questions que nous avons pu nous poser en tant que débutant et pour lesquelles nous avons eu du mal à trouver des réponses.
L’idée est de commencer par les bases mais par la suite traiter des points plus précis et plus compliqué. C’est pour ça que, par la suite, nous pensons également écrire des articles sur tout ce qui tourne autour de Ruby On Rails, autrement dit sur du Javascript, CSS, CoffeeScript Backbone.js etc. Mais pour le moment nous voulons nous focaliser sur l’apprentissage de Rails.

Merci Nima et Nicolas, encore bravo pour l’initiative.
Chers lecteurs, vous pouvez leur proposer des articles ou des idées d’articles sur leur Twitter : @OnTheRailsBlog

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 !

 

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

Retours sur le Startup Weekend Genève #SWGVA

Logo Startup Weekend Genève #SWGVALe weekend dernier j’ai participé à mon deuxième Startup Weekend. Après avoir fait le Startup Weekend Paris, je suis allé à celui de Genève !

J’y suis allé accompagné de Claude Perrin (@klodr) et Florent Mérian (@fmerian). Voulant vivre l’expérience à fond, nous avons fait quelques séances de brainstorming sur Skype les jours précédents afin de trouver une idée. C’est le concept de BackInMind, que nous avons présenté vendredi soir dernier.

Qu’est-ce que BackInMind ?

BackInMind screenshotIl s’agit d’un moteur de recherche indexant sa mémoire sociale. Plus simplement, BackInMind permet de faire des recherches dans les tweets, les checkins Foursquare, les messages Facebook que l’on a écrits ou qu’on a pu lire dernièrement. Afin, de proposer une bonne expérience utilisateur nous avons choisi de fournir une interface à la Google Instant.

Il existe déjà certains acteurs sur ce marché, mais ils sont pour la plupart focalisés sur l’archivage.

Quels ont été les choix technos ?

Logo du framework web Ruby on RailsDans l’équipe, nous étions 2 développeurs. Un étudiant nous a rejoint dans le weekend. Comme nous ne connaissions pas les mêmes technos, nous avons décidé que je prendrais la partie serveur et le second, la partie front.

Nous sommes partis sur du Ruby on Rails 3 côté serveur, hébergé sur Heroku et du YUI pour le JS côté client. La base de données retenue a été Postgres.

Comment le projet a-t-il été géré ?

Business Model Canvas et méthode Agile - BackInMind TeamLe précédent weekend m’avait permis de voir qu’il n’était pas concevable de mettre en place Scrum dans un délai aussi court. De ce fait, nous avons juste été agiles :

  • nous avons fait des points réguliers (Scrum meeting),
  • nous sommes toujours restés proches d’une version démontrable,
  • la notion de « tâche terminée » a été définie au début du weekend,
  • nous avons listé les tâches sur des post-it et maintenu un tableau d’avancement (done, current, todo) à jour.

Pour réaliser ce projet en 54h, nous étions 7:Equipe BackInMind

Qu’ai-je appris ?

Startup Weekend GenèveEncore une fois, le Startup Weekend m’a beaucoup apporté ! J’ai tout d’abord découvert la Suisse et ses habitants avec cet accent qui me manque déjà.

Techniquement, le projet était très ambitieux et nous sommes tout de même arrivé à délivrer une version très acceptable pour une démo. Nous avons pu y arriver d’une part grâce aux choix technos, mais aussi grâce à une très bonne collaboration au sein de l’équipe technique. Nous avons su être pragmatiques, faire de bons choix et bien gérer le temps.

Ce Startup Weekend m’a aussi donné envie de m’intéresser au monde du business/marketing. J’ai pu découvrir qu’il existait des méthodes dédiées aux startups permettant d’assister la conception de business model. J’ai décidé d’approfondir le sujet en achetant ce livre, sur les conseils de Claude : Business Model Generation.

Enfin, j’ai fait une nouvelle fois de belles rencontres. Je pense vraiment que c’est là, la force d’un Startup Weekend.

Résultat, j’ai juste une envie, recommencer !
Sans oublier BackInMind, je réfléchis à participer à celui de Marseille (si vous y allez, faites-moi signe !) et je vais également participer à l’organisation d’un Startup Weekend sur Sophia Antipolis !