La communauté Ruby vue par… Thibaut Barrère !


  • Share on Pinterest

Bonjour Thibaut,

On ne s’est jamais rencontré, mais je te vois souvent dans ma timeline Twitter. J’entends souvent parler de toi aussi.
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.
Tu es freelance depuis plusieurs années et ce point de vue m’intéresse !
Si tu le veux bien, j’aimerais en savoir plus sur toi et ta vision de Ruby.

– Peux-tu te présenter en quelques lignes ?

Thibaut BarrèreBonjour ! Je m’appelle Thibaut Barrère, j’ai 34 ans. J’ai créé ma société LoGeek en 2005. En 2010, ma compagne Cécile m’a rejoint pour travailler avec moi.

Nous travaillons sur notre premier produit SAAS, WiseCash, qui aide les freelances et petites structures à anticiper et optimiser leur trésorerie (c’est une appli Rails 3.1 pour l’anecdote).

Mon activité principale en dehors de WiseCash est le consulting : accompagnement technologique, majoritairement avec Ruby et RubyOnRails. Je travaille en particulier sur l’automatisation au sein des entreprises, l’interfaçage entre plusieurs systèmes (legacy, CRM, flux de données…), le traitement de données (ETL, Datawarehouse) et le développement en Ruby ou Rails en général. Je gère généralement la totalité du cycle projet, du recueil du besoin, au développement itératif à la Scrum (je suis certifié Scrum Product Owner), au déploiement et provisioning de serveurs et à la maintenance. Je travaille généralement avec mes clients sur la durée, dans une relation de confiance.

– Comment se passent les relations entre freelances Ruby ? Y-a-t-il des groupes qui s’entraident par exemple ?

J’ai des échanges fréquents par mail, téléphone ou IRC, avec un bon groupe de Rubyistes, freelances ou non. Les relations entre nous sont très bonnes.

Les échanges sont nombreux et on s’entraide, que ça soit sur des sujets techniques (que penses-tu de MongoId ? Backbone.js ? etc), sur des sujets de gestion de projet (pour s’aider à estimer correctement un projet compliqué), pour partager des outils nouveaux, ou encore sur de l’administratif ou du commercial (comment gère-t-on la TVA sur un produit SAAS ?).

On se transmet également les demandes de clients qu’on ne peut pas traiter.

Donc pour les gens que je connais en tout cas : un vrai sens de l’entraide.

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

Le logo du langage de programmation RubyJ’ai débuté en 2004. Ma motivation initiale était de pouvoir compiler, sous Windows, une librairie C++ qui venait de Solaris et dont les outils de build n’étaient pas disponibles sur Windows. Rake et Ruby m’ont permis de recréer ce qui était nécessaire en une cinquantaine de lignes et en moins de temps que je ne l’aurais espéré.

J’ai continué à me servir de Ruby en clientèle (parsing de logs, outils de build, etc.), puis je me suis mis à utiliser Rails en 2005. J’ai réalisé une première application personnelle pour apprendre, puis j’ai proposé à un client d’utiliser la techno pour répondre à un de leurs besoins, et ainsi de suite.

Une force de Ruby est qu’avec une connaissance minime du langage, on peut déjà résoudre des problèmes et apprendre au fur et à mesure selon ses besoins.

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

Logo du framework web Ruby on RailsJe considère Ruby en général comme un avantage concurrentiel très conséquent, pour plusieurs raisons que je vais détailler.

La concision du langage et la productivité que j’obtiens avec Ruby, comparativement aux autres plateformes que j’utilise, est nettement plus importante. La concision, qui paraît un détail sympathique au début, a des ramifications à tous les étages, notamment sur l’écosystème disponible, ou la capacité à refactorer ou comprendre intégralement une application.

L’écosystème de librairies et outils, d’autre part (plugins variés, mais aussi pièces d’infrastructure comme Resque, outils de provisioning de serveur comme Chef) est d’une grande richesse.

Le test automatisé est fortement engrainé dans le monde Ruby, avec une perpétuelle recherche d’amélioration sur “comment bien tester une application” (ce qui me permet de refactorer une application à l’envie).

Finalement, en quelques années, déployer une application Ruby normale est passé du sujet d’expert à quelque chose de facile (ex: Heroku, DotCloud, Passenger…), avec une foultitude d’outils tels que NewRelic, AirBrake, pour instrumenter le tout.

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

Je travaille sur Mac avec TextMate, et j’utilise des VM Windows via VirtualBox quand c’est utile.

J’utilise les gems suivants : Rails 3/2, Ruby 1.9/1.8, Guard, JasmineRice, Rake, Haml, Sass, Resque/DelayedJob, Sunspot (Solr), ThinkingSphinx, API Cache, Redis store (cache), Rufus scheduler, Amazon/ECS, MongoMapper/Mongomatic, RSpec ou Test::Unit, Cucumber, FactoryGirl, Awesome Print, Will Paginate, Prawn / PDF::Writer, Acts as Taggable variés, Nokogiri/Hpricot/libxml, Hoptoad/ExceptionNotifier, Whenever ou autres gems pour cron, Capistrano ou Chef-solo.

Pour les traitements de données ETL, j’utilise généralement ActiveWarehouse-ETL, librairie open-source dont je suis l’actuel mainteneur, ou une variante plus légère.

Les OS et technos varient : cette année j’ai travaillé en Rails 3/MySQL déployé sur Ubuntu, en JRuby+Java+Resque déployé sur Windows Server 2003, en Rails 3+MongoDB déployé sur Heroku, en Rails 2+Ruby 1.8.7 déployé sur SliceHost… Je m’adapte à ce qui est pertinent pour mes clients.

Le mode opératoire est généralement agile : j’ai tendance à utiliser Acunote pour les estimations et les sprints à la Scrum, à travailler à distance, à faire du pair-programming de temps en temps (même à distance), à tester rigoureusement.

Je facture à l’heure passée exclusivement, et je tracke mon temps avec Freckle.

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

Le marché est clairement en manque de ressources, et les offres ne manquent pas pour les rubyistes expérimentés. Le phénomène est aussi présent sur d’autres technos (ex : .Net). Les bons techniques polyvalents capables de comprendre les besoins utilisateurs et de “shipper” sont courtisés de partout.Cela dit, ces deux dernières années, le nombre d’apéro Ruby et autres BarCamp, notamment en région, a augmenté. J’ai personnellement eu plus d’échanges avec des Rubyistes sur cette période. Je rencontre également plus d’entreprises qui utilisent progressivement plus de Ruby en interne, et qui migrent parfois uniquement pour bénéficier du langage et de pièces d’infrastructure comme Resque.Je dirais que la “communauté visible” grandit et est vocale, mais reste de petite taille, comparativement au besoin rencontré sur le terrain. Certaines SSII se forment en interne à Ruby sans pour autant apparaître sur les forums ou les barcamps. Un autre aspect est que je croise bien plus de Rubyistes français sur les newsgroups anglophones que sur ceux en français.Mon impression est que la communauté francophone visible sur le net est en fait petite par rapport au nombre d’utilisateurs réels.– As-tu des idées pour améliorer la situation actuelle de la communauté ruby ? Quel rôle l’association Ruby France doit avoir aujourd’hui ?

Logo Ruby FranceEn préambule, je ne suis pas membre de l’association et je connais peu ses actions actuelles.

Je crois beaucoup, pour développer la communauté, à :

  • l’organisation d’un évènement annuel (qui nécessite une association pour faciliter le regroupement des compétences, de l’énergie et des finances nécessaires)
  • l’aide au montage d’évènements réguliers en régions ou à la connection des gens (comme les apéros ruby qui se multiplient)
  • au lobbying auprès des écoles et universités en informatique, de façon à développer d’avantage de cursus pratico-pratiques autour de Ruby et Rails
– Je te laisse le dernier mot pour conclure :)
Mon dernier mot est que bien que ça fasse longtemps que je programme, je prends toujours beaucoup de plaisir à le faire, que ça soit pour des clients ou sur nos produits. Je suis infiniment reconnaissant à Matz d’avoir créé Ruby, qui m’a permis de faire ce que je fais avec plaisir aujourd’hui.

Si quelqu’un veut me contacter pour discuter, vous êtes le bienvenu => thib@gmail.com

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

Merci à toi pour ton initiative qui donne plus de visibilité à la communauté Ruby en France :)

Vous pouvez retrouver Thibaut sur Twitter.
  • David
    Répondre
    Author
    David David

    Un grand bravo à toi Camille pour cette série d’interviews.

    Ça fait plaisir de lire des témoignages de professionnels sur Ruby on Rails.

  • David
    Répondre
    Author
    David David

    Un grand bravo à toi Camille pour cette série d’interviews.

    Ça fait plaisir de lire des témoignages de professionnels sur Ruby on Rails.