Un post un peu particulier aujourd’hui, puisqu’il ne parle pas de gastronomie, mais de technologie. Assez régulièrement, lors de discussions avec d’autres entrepreneurs, on nous demande sur quelle techno est développé notre site et pour quelles raisons nous avons opté pour tel langage. Le choix des technos est en effet une question non négligeable dans le développement d’une startup sur le web. Choix d’autant plus difficile lorsque l’on n’est soi même pas développeur, que l’on n’a pas toutes les cartes en mains pour prendre sa décision. On pourrait considérer que la techno est uniquement l’affaire des développeurs, qu’à eux seuls appartient la décision. Il s’agit au contraire d’une question à aborder en équipe et c’est en équipe que nous avons fait le choix de développer Super Marmite avec Ruby On Rails et MongoDB. En effet, s’il est important que les développeurs soient à l’aise avec les technos, il est légitime pour le reste de l’équipe de s’interroger sur les impacts des choix technologiques sur les différentes phases du projet : « Quelle charge de travail est nécessaire pour développer telles fonctionnalités ? Pourrons-nous tenir les délais ? Faire facilement évoluer la plateforme ? Recruter de nouveaux développeurs ?… »

Pourquoi donc le choix de Super Marmite pour Ruby et MongoDB ?

Ces deux technos ne sont pas encore fortement implantées en France. MongoDB est notamment récente. Détaillons les atouts de chaque solution séparément, car leur choix est indépendant.

Pourquoi Ruby avec son framework Ruby on Rails ?

Ruby est un langage concis. il se veut le plus simple possible à écrire et à comprendre. Limitant les lignes de code il rend aisés la résolution des bugs et le développement des fonctionnalités voulues. Ruby on Rails (RoR) est quant à lui un framework web qui suit les mêmes principes que le langage sur lequel il repose. Il permet ainsi de développer très rapidement des applications complètes avec peu de lignes de code. Un autre aspect important de RoR est qu’il a été construit sur une très forte culture du test et aide énormément à la réalisation de tests unitaires par les développeurs. Ce point est intéressant car il favorise la bonne qualité de code, celui-ci étant régulièrement testé au cours des développements.

Pourquoi MongoDB ?

MongoDB est une base de données SchemaLess très flexible. On peux l’utiliser pour toute application web à l’heure actuelle. Elle permet ainsi d’éviter de bloquer complétement la base de données lors des phases de migrations liées aux évolutions d’un site Internet. La migration peut se faire plus facilement. Elle est conçue aussi spécialement pour une gestion en cloud et une augmentation simple du nombre d’instances. Enfin MongoDB possède en interne une gestion de la géolocation 2D, aspect particulièrement pertinent dans le cadre de Super Marmite car il permet de gagner un temps précieux en nous évitant l’utilisation d’un outils tiers supplémentaire.

Avant de clore cet article, afin de donner un éclairage sur les évolutions de certaines technologies sur le marché, les profils des entreprises qui les utilisent et des développeurs qui les maîtrisent, nous citerons un article de Corentin dans ReadWriteWeb qui constate que parmi les technologies utilisées au Startup Weekend, Ruby On Rails arrive largement en tête avant de noter que c’est la technologie la plus prisée des star tups de la Silicon Valley et qu’il n’est pas ou peu enseigné dans les écoles d’ingénieurs françaises (de nombreux développeurs s’étant donc auto for més grâce à des livres et internet.)

Post to Twitter