Green IT : cinq étudiants de l’EPITA remportent le challenge Design4Green 2017
Formant l’équipe « Compiler c’est 12 », Jean T., Lucas M., Thomas D., Théodore W. et Denis D., cinq étudiants en 3e année du cycle Expert de l’EPITA, ont remporté la nouvelle édition de Design4Green, un challenge de 48 h dédié à la Green IT et organisé simultanément dans 5 pays du mercredi 22 au vendredi 24 novembre. L’occasion pour Lucas et Théodore de revenir sur cette performance qui, en plus de leur permettre de se hisser devant près d’une centaine d’équipes concurrentes, leur a fait gagner un séjour à Amsterdam.
Joël Courtois, directeur général de l’EPITA, en compagnie de Denis, Théodore, Thomas et Lucas
Pouvez-vous rappeler le concept de Design4green ?
Théodore : Il s’agit d’un challenge autour du Green IT, soit les concepts d’écologie rattachés aux technologies. Le but cette année était de faire un moteur de recherche sur le support d’un site Web pour des dentistes : nous avions une base de données de dentistes avec un certain nombre d’informations fournies et nous devions donc concevoir le moteur de recherche le plus performance et écologique possible, le tout en 48h.
Comment un développeur peut-il créer un moteur de recherche écologique ? De quels moyens dispose-t-il pour y parvenir ?
Théodore :Techniquement parlant, il y a pas mal de choses, mais de manière plus globale, cela passe surtout par un certain nombre d’optimisations, côté serveur comme côté Front. Côté Front, cela se fait sur de l’optimisation de bande passante, sur la constitution du code généré, sur le choix d’utiliser ou non JavaScript ou encore sur la minification des fichiers envoyés afin d’envoyer justement le minimum possible de données nécessaires à l’utilisateur du moteur selon sa requête. Ensuite, en Back End, le choix du langage est aussi important : une fois celui-ci décidé, il faut alors choisir le framework à mettre en place, ce dernier étant un acteur majeur pour faire en sorte que la solution soit rapide ou pas et économe en « charge serveur ». D’autres éléments rentrent ensuite en compte, comme la mise en cache ou le fait de préparer un serveur proxy – ce que nous n’avons pas fait car mettre un proxy allait à l’encontre du sujet initial selon nous.
Lucas : Par exemple, mon rôle a consisté à gérer l’aspect base de données en générant l’entité que nous avons créée. J’ai aussi géré une bonne partie du Front et son optimisation sur la majorité des pages. J’ai également écrit des scripts d’optimisation côté Back End.
Pourquoi avoir choisi d’y participer ?
Théodore : Quand l’école nous a inscrits, on ne savait pas à quoi s’attendre : on y est donc allés sans apriori. Par contre, une fois le sujet entre les mains, on a tout de suite été emballés ! On y voyait une bonne opportunité d’utiliser dans une logique écologique des technologies que l’on côtoie en entreprise dans le cadre de nos alternances.
Lucas : Le Green IT est très intéressant, d’autant qu’on n’a pas forcément l’habitude d’en faire tous les jours. Bien entendu, il m’arrive de m’y plonger au travail, mais rarement à un tel niveau. Réussir à faire des pages très légères, avec du Front et du Back End optimisés à ce point, sans oublier ce qu’il se passe entre les deux… c’est super intéressant. Cela nous a même permis de découvrir et d’apprendre de nouvelles choses sur le sujet.
Le Green IT a-t-il vocation à devenir une question centrale dans les entreprises ?
Lucas : De fait, l’écologie et le développement durable représentent une question importante pour la société aujourd’hui. Les entreprises doivent donc se la poser à leur tour. Surtout que, au-delà de l’aspect écologique, elles ont tout à gagner à se lancer dans le Green IT qui, au fond, implique surtout de consommer moins de ressources. Cela donne lieu à des sites plus rapides, plus performants et moins chers à maintenir !
Le plus grand défi lors du challenge ?
Théodore : Une fois le sujet tombé, il a fallu faire rapidement un choix pour avancer le plus vite possible. On a alors convenu de partir sur une technologie spécifique que quatre d’entre nous connaissions assez bien pour travailler dessus efficacement : le framework Symfony. Du coup, cela a poussé le cinquième membre à davantage s’occuper du Front et à optimiser cette partie du projet. C’est là où, selon moi, résidait le plus gros défi, en plus du mode rush : faire en sorte que toute l’équipe reste soudée, malgré les quelques accrochages – qui ne sont pas rares dans ce genre d’exercice et peuvent même être salutaires.
Lucas : Il fallait partir sur quelque chose de plus basique, avec beaucoup de choses à faire « à la main » plutôt qu’à l’aide d’outils « classiques ». On devait éviter de prendre des raccourcis et c’est ce qu’on a su faire.
Vous attendiez-vous à remporter le concours ?
Théodore : On s’attendait à faire un bon résultat, mais pas forcément à finir en tête. À vrai dire, on espérait tout de même terminer dans les cinq premiers. Ce n’était donc que du bonheur de voir le classement définitif !
Lucas : Vu le travail fourni, on était plutôt confiants. La surprise fut bonne !
Théodore : D’ailleurs, l’annonce du gagnant se faisant par une sorte de grande conversation Skype en anglais, on n’a pas compris tout de suite notre victoire, la faute à un connexion capricieuse et une prononciation approximative du nom de notre équipe !