8 sept 2011
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).
Ruby 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…
Avant 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 :
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.
Maintenant 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.
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.
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.
4 mar 2011
Pascal Cardonna est coordinateur multimédia chez Radio France. C’est un passionné de radio, de télévision, de cinéma, d’internet, de réseau sociaux… ! Sur son blog, il publie des interviews filmées de personnes toutes aussi passionnées que lui sur des domaines très divers : community manager, blogueurs célèbres, pompier, étudiants, top models…
Grâce à la magie de Twitter et du networking, nous avons fait connaissance sur la toile. Puis la semaine dernière, en déplacement dans la région, Pascal m’a proposé de se rencontrer et m’a demandé si j’étais d’accord pour qu’il m’interview. J’ai été surpris et honoré par cette invitation. Je me retrouve donc sur le blog de Pascal à côté de grands bonhommes comme Matthieu Blanco, Gonzague… Une telle proposition ne se refusant pas, je vous invite à lire son billet sur l’interview.
Je parle de mon métier, de Backinmind et du Startup Weekend Nice Sophia-Antipolis.
Merci beaucoup Pascal pour cette video et à très bientôt sur Nice !
13 nov 2010
Le 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.
Il 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.
Dans 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.
Le 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 :
Pour réaliser ce projet en 54h, nous étions 7:
Encore 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 !
18 oct 2010
Le weekend dernier, j’ai participé à la troisième édition du Startup Weekend Paris. Le weekend a été très dense, de ce fait j’ai à vous rapporter à propos de l’événement, du projet, de l’équipe, des technologies et méthodes utilisées…
Le Startup Weekend a commencé vendredi soir par un apéro pour faire connaissance. Ensuite, Franck, un des organisateurs, nous a fait faire quelques exercices d’impro sur le sujet de la création de startups pour détendre l’atmosphère. Enfin, nous nous sommes tous rendu dans un grand amphi pour passer aux choses sérieuses (pitch et élection des projets).
Nous étions 116 personnes. 46 projets ont été présentés (liste complète). J’ai moi-même présenté un projet, le #26. L’idée que j’ai présentée est un outil permettant de faciliter au maximum la rédaction des tweets lorsqu’on publie de la veille, sans pour autant l’automatiser (comme le propose TwitterFeed par exemple). Cet outil offre également une analyse du ROI (Return On Influence). On pourrait donc avoir des réponses à des questions comme : Quel est le meilleur moment dans la journée/la semaine pour publier un tweet? Quels thèmes intéressent le plus mes followers? …
Mon projet a finalement été sélectionné. Deux autres projets se sont d’ailleurs ralliés au mien car nos sujets étaient proches. Les participants se sont répartis sur les différents projets, nous nous sommes retrouvé 11 pour « monter une startup » en un weekend! L’équipe était composée de 7 développeurs, 4 marketeux et 1 designer.
Le vendredi soir s’est terminé par un brainstorming et un peu d’organisation. Nous avons finalement décidé de nous consacrer uniquement à la partie stats.
Coté techno, Ruby on Rails a été choisi de manière quasi-unanime. Pourquoi ? Car il n’y avait que des développeurs Rails ! Ce n’est pas du tout représentatif du marché du développement web en France, par contre cela représente très bien le marché des startups en France et plus particulièrement sur Paris. La vague Ruby on Rails est bien là et ça fait plaisir !
Nous avons donc développé en Rails 3 et Ruby 1.8.
Voici la liste des principaux services/techno que nous avons utilisés durant le weekend :
Côté plugins Rails, nous avons utilisé :
Avec du recul, je pense que nos choix ont été plutôt bons. Heroku nous a permis de déployer l’application très rapidement et de ne perdre aucun temps avec l’administration système. Grâce à MongoDB (et Mongoid) nous avons pu nous permettre quelques facilités comme stocker les tweets dans leur totalité sans déformer leur structure. J’ai cependant toujours un doute sur la facilité à faire évoluer la structure des documents mongoDB sur du long terme. Nous avons pu mettre en place l’authentification en quelques secondes grâce à Devise. L’authentification par Twitter fut plus complexe car le plugin, devise-twitter, n’est pas encore stable.
Ce weekend m’a permis de constater que Scrum est fréquemment utilisé dans le monde startup, la plupart des membres de notre équipe connaissait déjà cette méthode agile de gestion de projet. Nous avons donc décidé de la mettre en oeuvre pour le weekend pour l’équipe de dev.

Nous avons adapté la méthode à notre cas. Nous avons fait des sprints de 6h. Nous avons également choisi de commencer le samedi matin avec un sprint pas encore défini afin de ne pas perdre de temps.
Malheureusement, comme le produit a été conçu et modifié par le marketing tout au long du weekend, il n’a pas été possible d’appliquer Scrum comme nous l’aurions souhaité. Nous avons donc supprimé la notion de sprint. Nous avons gardé le concept de user stories, des Post-It sur un tableau, la notion de ‘terminé’ (samedi matin, nous nous sommes entendus sur le fait que pour ce weekend, une tâche terminée serait une tâche qui aurait été testée par un développeur)…
Enfin, ce qui m’a le plus surpris côté organisation c’est le fait qu’il n’y a pas eu de leader durant ce weekend et que personne n’a cherché à l’être. L’équipe s’est auto-organisée. Toutes les décisions ont été prises par l’ensemble de l’équipe et cela a très bien fonctionné.
Je craignais une guerre du pouvoir, j’ai assisté à une alliance pour la réussite ! Bravo l’équipe !
Le weekend est passé très vite. Nous avons peu dormi. Et ce fût rapidement l’heure de rendre la copie.
En un petit weekend, nous avons réalisé Qualifeed. Aujourd’hui Qualifeed permet déjà pas mal de choses :
Bien sur l’idée est de faire évoluer le produit. Nous aimerions que petit à petit Qualifeed se rapproche de la définition suivante :
Qualifeed propose une solution de mesure de l’audience, de l’engagement et de la transformation de vos campagnes social media marketing.
Plus précisément :
Qualifeed fournit une solution de Social Inluence Management et de Social Influence Optimization pour aider les marques, les community managers et les politiques à mesurer et à améliorer de manière continue le ROI (Return On Influence) de leurs campagnes de social media marketing sur Twitter mais également sur les autres outils sociaux. Le Social Influence Dashboard fournit une vision holistique de l’audience, de l’engagement et la transformation des activités.
J’ai beaucoup appris ce weekend !
Tout d’abord, j’ai pu voir que Ruby on Rails est la techno choisie par la plupart des startups web qui se lancent sur Paris. Ce weekend a été une très belle démonstration des possibilités offertes par Ruby on Rails. J’espère que les startups de Sophia vont vite s’y mettre.
Ensuite, j’ai pu rencontrer des gens formidables. C’est incroyable à quel point les gens présents étaient passionnés, compétents et motivés.
Enfin, j’ai été bluffé par la quantité et la qualité du travail que les équipes ont pu réaliser en un weekend. Cela prouve bien que si l’on s’entoure de gens passionnés, on peut déplacer des montagnes !
Bref, ce weekend a été une excellente expérience. J’espère pouvoir participer à nouveau à un tel événement très bientôt !
6 oct 2010
Ca y est, j’ai mes places et mes billets d’avion ! Je serai au Startup Weekend Paris ce weekend !
Le but du Startup Weekend est tout d’abord de réunir toutes les compétences nécessaires à la création d’une startup. Il y aura donc des développeurs, des graphistes, des marketeux, des business devs…
Le vendredi soir chacun peut présenter son idée. Les différents projets sont soumis à un vote afin de sélectionner ceux qui seront concrétisés durant le weekend. Enfin, les participants forment des équipes et commencent à plancher sur leur projet.
Le dimanche soir, les équipes qui le souhaitent peuvent présenter leur service, leur business plan…
Participer à cet événement est important car :
Je serai également présent à la Pré Startup Weekend Party, jeudi à la Cantine, pour faire quelques rencontres et travailler mon pitch (et oui, j’ai un projet à présenter !).
Rendez-vous ce weekend pour une grande aventure !