Archives de l’auteur : Marc Ariberti

Une rupture technologique – du PHP au Python

J’ai essayé de rendre la narration de l’histoire la plus accessible possible. Et pour ceux qui aimeraient avoir tous les détails concernant la technique, vous les trouverez dans la deuxième partie de cet article.

L’histoire

Les débuts du projet

L’idée de la refonte du portail TopChrétien ne date pas d’hier et une réflexion de fond a véritablement commencé au début de l’année 2011. A cette époque, nous étions également en train de développer le moteur de ce qui allait devenir TopFormations. Le développement de cette nouvelle section du Top était pour moi l’occasion de tester des nouveaux choix techniques sans pour autant entrer en rupture complète avec la technologie existante sur le Top. Ce test avait pour but de valider sur un projet réel que ce choix serait le bon pour le nouveau portail TopChrétien.

La top coding party

Pour ceux qui ont suivi, nous avons organisé en septembre 2012 une TopCodingParty où nous avons invité sous la forme d’un concours les développeurs et web-designer chrétiens à venir au Top et développer des projets pour des œuvres chrétiennes. Suite à cet événement, nous avons pu faire des connexions avec plusieurs d’entre eux.

Le point de non retour

Les développements de TopFormation s’étant bien passés, je me suis dit que ce choix serait le bon et le moins risqué pour l’avenir du Top. Nous approchions du point de non-retour. En effet, le moment du développement du portail proprement dit approchait à grand pas. Et une fois le travail commencé, il devient très difficile de changer car il faut tout reprendre de zéro.

C’est également à cette période que l’on a cherché à recruter des personnes pour nous aider car le développement d’un tel site est une lourde tache. Nous avons donc envoyé une proposition de travail à plusieurs des personnes que l’on avait rencontrées lors de la TopCodingParty. Nous savions qu’il y avait peu de chance que cette démarche aboutisse, car chacun d’entre eux était bien investi dans leur travail respectif.

une réponse

A notre grande joie, une personne a répondu qu’elle serait intéressée par la proposition. Elle avait déjà à cœur de devenir indépendant et le contrat que lui proposait le TopChrétien lui permettrait d’assurer le démarrage de son entreprise. Il s’agit de Mathieu.

Le détail qui fache

Parmi toutes les conditions posées par le projet, il y en a une qui le dérangeait tout particulièrement et c’est le choix de la technologie. En effet, le choix avait été fait d’utiliser le language PHP. Bien que ce soit un language utilisé par de nombreux grands sites, PHP est un peu considéré comme le language du bricoleur du dimanche et peu utilisé par les grandes sociétés informatiques.

Mathieu de son côté préconisait l’utilisation du langage Python. Ce n’est pas le language utilisé le plus sur le web mais il est utilisé par un nombre non négligeable de startup à succès (youtube, instagram, pinterest…).

Après de nombreuses discussions, Mathieu a accepté le choix du langage PHP malgré ses réticences. Si ça n’avait pas été pour l’œuvre du Top, la réponse aurait été un « non » catégorique.

Une parole inattendue

Lors d’un temps de jeûne et prière que l’on a eu en équipe, nous avons pris un temps pour prier pour le projet en général (peu de personnes étant au courant de cette question du choix de la technologie). Après ce temps de prière, Muriel est venue me voir car elle avait une parole sur le cœur qu’elle souhaitait partager. Dans cette parole, Dieu nous invitait à ne pas avoir peur des choses nouvelles et de frayer des chemins nouveaux dans le domaine des nouvelles technologies.

la torture mentale

Alors que jusqu’ici malgré toutes les discussions le choix était arrêté sur le choix de PHP, je n’étais pas tranquille dans mon esprit à l’idée du choix de la technologie. Après en avoir longuement parlé avec Emmanuel Schulz, nous avons fait un tableau comparatif des différentes technologies pour nous permettre de faire un choix en ayant des critères objectifs. Les critères n’étaient pas uniquement liés à la technologie elle-même mais aussi à l’impact sur le planning, au risque pris pour chacun des choix… Suite à cette étude, le PHP est sorti en tête (bien que de peu) par rapport aux autres choix.

L’un des éléments qui nous gênait le plus dans le fait de choisir un autre langage était celui du délai. En effet, qui dit nouveau langage, dit aussi un temps d’apprentissage. Considérant le fait que Mathieu devait : démissionner, puis ensuite venir nous former, pour que l’on puisse enfin commencer l’architecture et les développements ; ce n’était pas envisageable car on perdrait ainsi 3 mois sur le planning déjà très court.

La visite de Mathieu

Mathieu était intéressé par le projet. Mais avant qu’il donne sa démission, nous avons voulu nous rencontrer face à face afin de donner plus de détails sur le projet. Nous serions ainsi sûrs les uns et les autres que l’on souhaitait bien travailler ensemble. Nous lui avons donc reconfirmé ce jour-là le choix de PHP.

Avant qu’il ne parte du Top pour aller voir son employeur, je lui dit sur le parking sous la forme d’une boutade à moitié sérieuse : « Si tu commences avec nous lundi prochain, on peux partir sur Python ».

Son rendez-vous avec son employeur

Le lendemain il rencontrait donc son patron pour lui annoncer la nouvelle et l’entretien s’est très bien passé. Non seulement il n’a pas été obligé de faire son préavis de 3 mois, mais il a pu également poser à partir du lundi suivant deux semaines de congés.

On lui a donc proposé de venir dès la semaine suivante. Il avait ainsi deux semaines pour nous convaincre que le Python est mieux que le PHP.

épilogue

Au jour où j’écris ce blog, Mathieu a terminé son travail auprès de son précédent employeur et le choix du Python s’est avéré pertinent. Rendez-vous dans quelques mois pour le lancement du site pour que vous puissiez profiter des nouveautés !

Vous pouvez lire l’histoire du point de vue de Mathieu sur son blog.

Les détails techniques pour les plus curieux

Au delà du choix du langage, ce sont de nombreux autres choix technologiques qui ont été faits. Certains avaient déjà été faits avant que Mathieu n’intervienne, d’autres ont été faits car tout ceci nous a vraiment poussé à remettre à plat complètement nos choix.

Voici donc les différentes nouvelles technologies que nous allons utiliser. Ce qui est intéressant c’est que les choix que l’on a fait sont très proche de ceux d’intagram, lisez cet article dans un blog où ils donnent plus de détails (en anglais).

Python à la place de PHP

Faire un comparatif entre Python et PHP sort largement du cadre de cet article (internet regorge d’article à ce sujet). En ce qui nous concerne, voici quelques éléments intéressants.

En préliminaire je rappellerai que la qualité d’un logiciel ne dépends pas de la qualité du langage mais avant tout de la compétence des développeurs. En effet on peut faire un bon logiciel avec un langage pourri et faire un logiciel pourri avec un bon langage.

  • Python a été conçu comme un véritable langage en 1991 à usage général
  • PHP a été conçu en 1995 comme une bidouille pour faire des petits site webs
  • Les deux sont des langages interprétés
  • Faire un néophyte, il est plus rapide d’apprendre PHP que Python
  • La philosophie de Python invite à coder proprement
  • Il n’y a aucune philosophie en PHP
  • La syntaxe de Python est très compacte et globalement plus lisible

Django à la place de Symfony2

Avec le langage viennent également tout un ensemble d’outils. En particulier le choix du framework est important car c’est la boite à outils qui va nous aider à développer le site. Initialement avec PHP nous étions parti sur le framework Symfony2, car c’est celui que j’avais testé avec succès sur TopFormations. En utilisant le python, il a fallu faire le choix d’un framework du monde python. Le choix s’est naturellement porté sur django, car c’est un des frameworks python les plus populaires du moment et c’est celui que Mathieu maîtrise.

Nginx à la place d’Apache

Ce choix n’était pas évident de prime abord. Apache est le serveur web le plus utilisé sur Internet (et de loin). C’est un serveur web rempli d’un grand nombre de fonctionnalités mais le prix à payer est la performance. Nginx prend le parti opposé : en faire moins, mais le faire de manière plus efficace. Nginx est maintenant de plus en plus utilisé sur les sites à fort traffic. En savoir plus… (lien en anglais)

PostgreSQL à la place de MySQL

MySQL est un moteur de base de données gratuit très populaire car il est très simple à installer et utiliser. Par contre il a un certain nombre de lacunes qui sont comblées par son principal concurrent PostgreSQL (lui aussi gratuit). Notamment avec MySQL, la complexité des requêtes est parfois limitée, la gestion des transaction et des contraintes est incomplète et peu performante. Le passage à PostgreSQL était assez naturel pour moi, l’ayant déjà utilisé intensivement par le passé.

Vacances d’été hors-saison

Cet été nous avons choisi de prendre nos congés d’été un peu hors saison et nous sommes donc partis à la fin du mois de juin. Pendant un peu plus d’une semaine nous avons pu voir la famille, profiter de la plage et avoir des places aux Futuroscope à un tarif préférentiel.


Des chevaux sur la plage

Au futuroscope

Visite dans les châteaux de la Loire en remontant sur Paris

Grand lifting pour le Top Chrétien

Dans les mois qui viennent, un grand projet va beaucoup nous occuper. Nous allons en effet donner un grand coup de jeune au portail. Le but étant de rendre tout notre contenu plus accessible, plus fun, et encore plus pertinent pour répondre aux besoins de notre génération. Le projet en est encore à une phase préliminaire et les contours commencent juste à se dessiner. Je vous tiendrai au courant des évolutions dans une prochaine lettre de nouvelles.

Top Formation

C’est le dernier né des projets du Top Chrétien. En effet, il y avait un grand vide sur Internet au niveau de la formation des chrétiens. Cette plateforme innovante rend accessible des formations  de qualité au plus grand nombre, notamment sur des sujets qui sont parfois peu abordés dans les églises : les finances, le couple…
Voici quelques témoignages que l’on a déjà reçus pour la formation sur les finances :
« Je me suis davantage rapprochée de Dieu car ce cours était très stimulant. »
« Dieu a changé ma façon de gérer mes finances, déjà je verse ma dîme (10%) cela m’a ouvert les yeux sur bien des choses, et je bénis le Seigneur pour cette formation. »

Rendez-vous sur : http://topchretien.com/topformations/

Top Coding Party

Qui dit grand projet, dit également besoin en ressources humaines. Même si nous travaillons avec l’aide de Dieu, tout ne se fait pas tout seul ;-). En partant à la recherche de chrétiens qui ont des compétences dans le domaine du Web, nous nous sommes rendu compte que nous en connaissions bien peu.

Il nous est donc venu cette idée de rassembler et mettre en réseau les professionnels chrétiens.

Pour lancer ce mouvement, nous avons lancé l’évènement Top Coding Party. Au travers d’un week-end fun, ce sera l’occasion pour chacun de montrer ses compétences et de se faire connaître au travers de mini-projets qui seront proposés.

Faites passer le mot si vous connaissez des personnes qui sont dans le milieu du développement ou du design web  http://www.topcodingparty.net/

 

Vacances en martinique

Du 8 au 22 avril nous sommes partis pour quelques jours en Martinique. Ce fut l’occasion pour moi de rencontrer au grand complet la famille de ma femme Célia et de découvrir ainsi une partie de ses origines. Ce fut une très belle expérience, d’abord le fait de rencontrer ma belle famille puis le fait de découvrir cette magnifique île qu’est la Martinique. Ce fut pour moi la possibilité de connaître certaines traditions comme la dégustation du traditionnel matoutou*, ainsi que de nombreux autres plats et boissons tout aussi délicieux. J’ai aussi eu l’opportunité de rencontrer certains bénévoles et partenaires financiers du Top. Je garde de très bons souvenirs de tout cela et espère y retourner très bientôt.

* Il s’agit d’un plat traditionnel Martiniquais composé de crabe cuisiné au Colombo que l’on déguste à pâques en se réunissant sur la plage.

S’isoler pour mieux se concentrer

Du 5 au 9 mars, nous avons vécu une semaine toute particulière. En effet, afin de travailler sur la prochaine version du portail Top Chrétien nous nous sommes isolés avec Emmanuel Schulz pour réfléchir à l’avenir. Nous nous sommes donc enfermés pendant une semaine dans le studio du top et avons fait chauffer nos cerveaux.

Le mardi nous avons été rejoint pour la journée par David Bonhomme et Jonathan Path qui ont pu nous apporter leurs conseils d’experts dans les domaines du webdesign, de l’ergonomie et des tendances du web.

Notre outil principal, comme dans tout brainstorming qui se respecte, a été le tableau blanc.

De nombreuses idées sont sorties de cette semaine et c’est une véritable petite révolution qui va sortir d’ici un an. Mais c’est Top Secret pour l’instant !

Une prochaine séance de ce type est prévue en Juin où nous rentrerons plus en détails dans l’architecture technique du système et c’est alors que les développements pourront commencer.

 

 

Je profite de ce blog pour rappeler que nous sommes toujours à la recherche de développeur et ingénieur afin de nous aider dans la mission. Les idées qui sont sorties sont belles mais les projets déjà en cours et la gestion du quotidien nous laissent malheureusement peu de temps pour avancer ici. Si vous vous sentez concernés par ce message, n’hésitez pas à répondre à l’appel de Dieu !

De nouveaux serveurs pour le Top

Le 29 février 2012 fut un temps fort pour le portail Top Chrétien et il fallait bien une année bissextile pour célébrer ce changement. En effet c’est ce jour là que le Top a déménagé.

Après avoir été hébergé pendant plus de 12 ans chez notre partenaire Suisse Mégaphone, le Top a élu résidence dans le nord de la France chez OVH.

Le déménagement n’a pas été une mince affaire à plus d’un titre, pour les raisons suivantes :

  1. Plus de 30 000 personnes se connectent chaque jour sur le portail, et il n’est pas concevable que le service soit complètement indisponible pendant le transfert.
  2. Les technologies au départ et à l’arrivée ne sont pas exactement les mêmes.
  3. Le portail Top Chrétien est un site très complexe rempli de nombreuses subtilités qu’il faut arriver à transférer.

Au final l’opération s’est plutôt bien passée, deux semaines de préparation et le transfert final en lui même a pris environ une heure en tout début de matinée entre 7h et 8h. Pendant ce temps les internautes ont tout de même pu continuer d’accéder au contenu du site, mais ne pouvaient pas se connecter (pas de commentaires sur les articles, mais d’accès à la messagerie…).

Jesus.net – coup d’envoi de l’équipe internationale

Vous avez peut-être déjà un peu suivi notre développement international. Dans ce cas vous avez entendu parlé de Jésus.net. Il s’agit du réseau de partenaires internationaux pour l’évangélisation par Internet dont le Top est un des principaux instigateurs.

Les relations avec nos partenaires (de plus en plus nombreux) devenaient de plus en plus complexes et il devenaient nécessaire de se structurer pour mieux fonctionner. L’idée ici n’est pas de créer une nouvelle grosse organisation pour éviter de se trouver freiné par des lourdeurs ; mais au contraire de faire une mise en commun des forces de chacun de façon intelligente.

Au cœur de cette équipe se trouvent donc : l’équipe du Top, Agapè Hollande, un partenaire polonais et un suisse. C’est ce noyau central qui va déterminer la vision de Jesus.net et de s’assurer de la bonne gestion des partenariats.


Réunion de travail intensive

Pour ma part je me trouve au sein de l’équipe « Operations », notre rôle au sein de Jesus.net est de construire des boîtes à outils (sites internet,…) que nos partenaires pourront utiliser dans leur ministère.


Ces journées ont été ponctuées de divers soucis techniques et même la chaudière nous a lâché par -10°C dehors !

Heureusement que nous avions la cheminée et quelques stères de bois !

TopFormation : grandir en tant que disciple

Le Top Chrétien regorge de ressources mais il manquait un outil de formation. C’est maintenant chose faite avec le lancement de Top Formation. L’idée a germé dans la tête d’Eric Célérier et du pasteur Paul Goulet il y a plusieurs années et après de nombreux tâtonnement le concept commence à se préciser.

Le principe est de proposer une série de chapitre sur un thème à étudier, avec à chaque fois : un enseignement vidéo, des questions à méditer (autour d’un verset biblique) et une application dans votre vie personnelle.

Pour ma part j’ai fait le développement de la plate-forme qui sert de moteur aux formations. Elle a été conçue de manière à être simplement réutilisable pour d’autres types de formations et transposable dans d’autres langues (nous avons déjà des américains et des hollandais prêts à prendre notre technologie). Ce développement a également été l’occasion d’utiliser le framework Symfony2 afin de voir si il pourrait être utilisé pour développer la prochaine version du portail Top Chrétien.

Je vous laisse découvrir la bande annonce de la formation sur les finances pour vous mettre en bouche :

Cette formation est disponible en test privé, cliquez ici pour vous inscrire à cette formation.