I. Introduction▲
C’est toujours une grande joie lorsqu’un développeur francophone est nommé Champion Java. La rédaction de Developpez.com s’est rapprochée de Sébastien Blanc (SB) pour qu’il nous explique en quoi cela consiste et qu’il nous fasse partager sa vision du métier en 2020.
II. Sébastien Blanc ?▲
En quelques mots, qui es-tu ? Quel est ton métier, et comment le définis-tu ?
Bonjour, je suis Sébastien Blanc, j’ai 16 ans d’expérience en tant qu'ingénieur informaticien orienté Java EE. Depuis quelques mois, je suis le directeur de l'expérience développeur (Europe, Middle-East and Africa). Le titre est un peu pompeux, mais de manière simple, ma mission est de « dorloter » les développeurs et de leur faire découvrir les dernières tendances en matière de développement informatique.
Quel est ton parcours ?
Après un parcours d’étudiant un peu chaotique, j’ai finalement eu mon diplôme d’ingénieur en 2004 après des études en sciences économiques.
J’ai démarré ma carrière aux Pays-Bas en travaillant pour une petite SSII de 30 personnes. J’ai beaucoup appris durant cette période, j’étais essentiellement en mission chez des assurances et des banques sur des projets Java EE, enfin J2EE à l'époque.
Pendant cette période, j’ai également commencé à m'intéresser au projet Open Source Grails et aussi à y contribuer en publiant des plugins Grails permettant de faire des applications Web mobiles. Cela m’a permis de faire des conférences pour en parler. Je ne me suis plus arrêté depuis.
En 2011, je décide de rentrer en France. Après un bref passage chez Sopra et en prestation chez Amadeus, j’envoie une candidature spontanée à Red Hat qui est en train de monter une équipe sur un projet mobile. Mon travail dans la communauté OSS va me permettre de rejoindre facilement l’entreprise.
Donc, depuis 2012, je travaille pour Red Hat, tout d’abord pour l’équipe Aerogear puis Keycloak. Dans cette dernière équipe, la communauté explosant, je deviens à temps plein « l'évangélisateur » de Keycloak. Ce rôle me plaît beaucoup et je rejoins finalement en début d’année l’équipe des évangélistes de Red Hat.
Quel est ton quotidien en tant qu'évangélisateur ?
Alors il y a un « avant covid19 » et un « pendant le covid19 ».
Avant la pandémie, l’essentiel de mon activité consistait à voyager pour aller à des conférences, mais aussi faire des workshops, des présentations chez nos clients. Tout ceci demande évidemment beaucoup de préparation. J’aime beaucoup l’expression de Matt Raible (évangéliste chez Oka et Java Champion également) qui dit qu’on est des « example programmer ». On doit préparer des démos ou bien des tutoriels qui restent relativement simples, mais qui montrent tout le potentiel de la technologie qu’on veut mettre en avant.
Dans l’équipe Keycloak, c’était plus facile, car je maîtrisais complètement la solution, maintenant, il faut constamment que j’apprenne de nouvelles technologies, comme Knative, Tekton. Et je ne dois pas seulement la connaître en surface, je dois la connaître suffisamment pour pouvoir la « vendre » aux développeurs.
Depuis le début de la pandémie, les voyages se sont bien évidemment arrêtés. La partie « préparation » n’a pas changé, elle s’est même intensifiée. Par contre, au lieu de voyager, maintenant, on fait des présentations en ligne et en direct la plupart du temps. Je me suis donc transformé en Youtuber (pour le plus grand bonheur de mon fils). Il a fallu en une très courte période se former à ce véritable nouveau métier, en apprenant les nouveaux outils comme OBS, le nouveau matériel, l’écran vert, l’éclairage, etc. Mais tout cela me passionne beaucoup.
Tu participes de façon active à la communauté. On te croise dans de nombreuses conférences. Tu peux nous en parler ?
Parler en conférences (ou sur YouTube live en ce moment LOL) est sûrement la chose que je préfère. Avant de devenir ingénieur, j'ai longuement hésité à faire instituteur, comme mon père. L’idée de transmettre et d’enseigner sa connaissance me fascine et me rend tout simplement heureux. Avec les conférences, j’ai trouvé le bon compromis en partageant ma passion avec les participants.
En dehors de ça, j’adore les conférences, car j’y retrouve mes « amis de conférences ». En effet, j’ai de très bons amis, parfois depuis plus de 10 ans comme Ixchel et Andres que je ne connais que par l'intermédiaire des conférences. On se voit toute l’année dans différents pays et continents.
Et finalement, j’adore les conférences, car j’y rencontre la communauté, les gens me partagent leur retour d'expérience sur nos produits, me font part de leurs suggestions. Parfois, on va même faire du « Pair Programming » sur une Pull Request qu’ils viennent de soumettre, etc.
Quelles sont les technologies qui te motivent actuellement ?
Alors, je ne dis pas cela, car je travaille pour Red Hat, mais je suis vraiment très très excité par le projet Quarkus en ce moment. Quand j’ai découvert le projet l’année dernière (car ils avaient bien caché le projet même pour les employés) je me suis senti comme un développeur junior qui découvre une nouvelle technologie et qui va passer un weekend entier dessus. C’est ce que je faisais en 2004, j’allais sur le site theserverside et j’essayais toutes les technos qui y étaient présentées.
Avec Quarkus, pareil, j’ai passé un weekend entier à m’amuser avec et à être impressionné par chacune des features. Et pour un évangéliste, Quarkus est la techno parfaite pour impressionner son public durant une présentation, car ça démarre super vite et en mode développement on peut changer le code, rajouter des classes ou bien même des dépendances sans jamais redémarrer l’application.
À côté de ça, je m'intéresse aussi de plus en plus à Kubernetes. J’avoue que pendant des années j'appréhendais, pensant que c'était très complexe et applicable pour la plupart des projets, ce sont d’ailleurs les arguments classiques qu’on entend contre Kubernetes.
En fait, si on passe un peu de temps à comprendre les concepts de base et qu’on se documente un peu sur le sujet (je conseille d’ailleurs « Kubernetes in Action ») on se rend compte que ce n’est finalement pas si compliqué que cela et on découvre la puissance offerte.
Du coup, on s'intéresse assez rapidement aux projets qui se basent sur les briques de base de Kubernetes, comme Knative ou bien encore Tekton.
As-tu des passions en dehors de l’informatique ?
Je pratique le Kobudo, un ancien art martial d’Okinawa, ça me fait beaucoup de bien après une journée derrière l’écran. C’est un art martial où l’on apprend des techniques et des katas avec une multitude d’armes différentes. Il faut sans cesse répéter les Katas, tout comme les codes des katas.
Bon, ça reste de l’informatique, mais j’aime beaucoup jouer aux jeux vidéo, un peu moins maintenant, car plus trop le temps. J’aime particulièrement les FPS avec un gros coup de cœur pour Half-Life. Je m'intéresse également au retrogaming et je suis très fier de cette table d’arcade que j’avais réalisée il y a quelques années.
III. Ta contribution au monde Java▲
Peux-tu nous parler de Keycloak ?
Keycloak est un serveur de gestion d’identités Open Source. De manière simplifiée, Keycloak permet au développeur de déléguer toute la partie gestion des utilisateurs, ce qui inclut l’authentification, l’autorisation à une partie tierce. Le développeur n’a plus qu’à installer/configurer une librairie (ou bien un adaptateur dans la terminologie Keycloak) dans son application pour mettre en place sa gestion d’identité.
Ce projet est très populaire, car, soyons honnêtes, la sécurité n’est pas le domaine préféré des développeurs. Elle sera souvent mise en place de façon bancale alors que c’est un aspect crucial du développement et de la mise en production. Donc, lorsque j’explique aux développeurs qu’ils n’auront plus besoin de se soucier de cela, ils sont très attentifs lors de mes conférences.
D’avis général, Keycloak n’est pas le projet open source auquel il est le plus facile de participer, principalement pour des raisons logistiques.
On a eu de nombreuses contributions aux projets par la communauté, par exemple toute la partie adaptateur Spring Boot/Spring Security provient de la communauté.
Par contre, en effet, on est assez stricts sur ce qu’on accepte ou non comme contribution. Ce qu’on veut éviter c’est de surcharger le serveur Keycloak avec des fonctionnalités qui sortent du périmètre ou bien qui ne règlent qu’un cas spécifique d’usage.
On est assez stricts également sur la manière dont une contribution doit être faite et notamment en matière de tests : chaque contribution doit contenir des tests unitaires, mais également des tests d’intégǵration, ce dernier point « refroidit » un peu les contributeurs. C’est un aspect qu’on essaye de rendre plus simple, en documentant mieux notre framework de tests d'intégration par exemple.
Mais on peut contribuer en choisissant un ticket déjà ouvert sur notre jira, il y a de quoi faire, croyez-moi et cela peut par exemple être au niveau de la documentation, donc pas seulement au niveau du code.
D’ailleurs, comment et pourquoi participer à des projets open source ?
Comment ? Pour la plupart des projets, il faut commencer par s’inscrire à la mailing-list du projet, puis parcourir les tickets ouverts et en choisir un qui nous paraît faisable. Ensuite, on peut faire un petit message sur la mailing-list pour dire qu’on a décidé de travailler sur ce ticket. Une fois le ticket fixé, il suffit de faire un Pull Request. Commence ensuite une seconde phase de review, il faut être patient, certaines PR peuvent mettre des mois avant d’être acceptées.
Pourquoi ? Car on peut ! Non, ce que je veux dire c’est que l’Open Source permet de participer activement à un projet. Si vous découvrez un bug, au lieu de râler sur Twitter et bien vous pouvez régler le problème vous-même et cela profitera à toute la communauté.
Quel est le futur de Java selon toi ? À quoi faut-il s’intéresser ?
Java et la JVM sont en forme, le « java is dead » paraît bien loin. L'intérêt que Microsoft porte à Java depuis ces derniers mois en est la preuve et à mon avis, ils vont bientôt arriver avec leur JVM ou leur clone de GraalVM. Car c’est là que ça va se jouer maintenant. GraalVM a ouvert la voie à la compilation native, rendant les applications Java, avant si coûteuses en mémoire et pas super rapides à démarrer, des candidats sérieux pour le Cloud Natif. Et vu qu’il y a bien plus de développeurs Java que de développeurs Go, on peut raisonnablement penser que cette tendance ne va pas s'arrêter.
Quarkus a également apporté cette idée de faire le gros du travail lors de la compilation et non plus pendant le runtime.
Un autre secteur qui pourrait voir Java débarquer du coup est tout ce qui est en rapport avec le Deep Learning (deep4j, Tensorflow for Java) qui était jusque là le territoire de Python.
IV. Communautés▲
C'est quoi un Champion Java ? Qui sont les autres champions français ?
Vaste question qui revient souvent, même au sein de la liste de discussions internes des Java Champions. Contrairement à ce qu’on pense, les Java Champions ne sont pas seulement des cadors du langage ou de la JVM (comme Remi Forax ou José Paumard). Les Jcs, ce sont avant tout des personnes qui s’engagent dans l'écosystème Java (et sa périphérie) et poussent la communauté vers le haut. Cela peut-être en étant JUG leader (Java User Group), organisateur de conférence ou bien un blogueur régulier sur Java...
La petite souris nous a indiqué que c’est Ixchel Ruiz qui a proposé ton nom. Peux-tu nous en dire un peu plus ?
Ixchel Ruiz et son mari Andres Almiray (lui aussi Java Champion, eh oui, il y a des couples de Java Champion) font partie de ce que j’appelais précédemment dans l’interview « des amis de conférences ». Je les connais depuis 10 ans, on s’est connus par la communauté Groovy/Grails, Andres est l’inventeur du frameworks Griffon (outil de RAD pour application Swing se reposant sur les principes de Grails). Ixchel, en plus d’être une ingénieure brillante est également intéressée par les « soft skills » et l’inclusivité tout comme moi. Je soupçonne d’ailleurs que c’est mon travail auprès des enfants et le code qui l’ont poussée à me proposer auprès des autres Java Champions.
Tu travailles donc chez RedHat/IBM où tu côtoies régulièrement Emmanuel Bernard, un autre champion Java...
Alors comme tu le sais, chez Red Hat on est quasiment tous en télétravail. Du coup, quand je croise Emmanuel, ce n’est pas vraiment dans le cadre du boulot, mais plutôt lorsqu’on est en conférence, comme pour Devoxx France par exemple. Il n’y a vraiment que cet été qu’on a travaillé ensemble pendant une semaine dans les locaux de Paris, lors d’un « face-to-face » Quarkus orienté autour de la sécurité.
On te croise souvent dans des conférences. Tu es un peu une célébrité. Et pourtant tu restes modeste. Ce nouveau titre va-t-il changer quelque chose ?
Je n’ai pas vraiment l’impression d’être une célébrité :) même si à DevoxxFR 2018, mes enfants qui m’accompagnaient n’en revenaient qu’on ait mis 45 minutes à traverser le hall des exposants, car je m’arrêtais tous les 2 mètres pour discuter avec des connaissances.
Ce titre m’honore et me pousse à être encore plus présent dans la communauté pour la faire vivre.
Tu es également très impliqué sur Scratch et plus spécifiquement sur l’apprentissage du développement auprès des enfants. Peux-tu nous en dire un peu plus ?
J’ai découvert l’informatique grâce à mon père instituteur et au plan « Informatique pour tous » dans les années quatre-vingt. Mon père m’a enseigné le langage Logo avec la tortue, cela a été le déclic pour moi et j’ai su que je voulais devenir programmeur. Ce déclic, Seymour Papert, le créateur de Logo, l’appelle le « jaillissement de l’esprit », c’est aussi le titre d’une conférence que je fais avec mes enfants.
Scratch est le petit frère de Logo, il a été développé par l’équipe de Seymour Papert au MIT. On assemble des blocs pour créer des scripts qu’on applique à des lutins (des sprites en anglais). C’est vraiment génial comme langage et je m’amuse moi-même avec, je vous conseille tous d’essayer.
Et donc, de façon plus large, j’essaye de transmettre aujourd’hui aux enfants cette passion pour la programmation que j’ai eue dès mon plus jeune âge. J’ai commencé avec mes propres enfants, je suis également intervenu dans leurs écoles.
Avec l’équipe de RivieraDev (la conférence du sud dont je suis l’un des organisateurs) on organise des Devoxx4Kids. Mais l’année dernière, nous avons également entrepris une nouvelle initiative. Au lieu d’acheter des « goodies » pour les participants de la conférence, nous avons affecté ce budget à l’achat de matériel informatique pour les écoles primaires de la région de Nice. Nous avons aussi organisé une après-midi de formation pour les enseignants.
On est très fier et on compte bien continuer l’année prochaine (cette année étant un peu compliquée au vu de la situation).
Que penses-tu de Developpez.com et de sa communauté autour de Java ?
Elle reflète à mon sens l’extrême bonne santé de la communauté Java francophone qui est vraiment reconnue mondialement.
V. Remerciements▲
Toute l’équipe de Developpez.com se joint à moi pour féliciter, de nouveau, Sébastien Blanc pour sa récente nomination en tant que Champion Java. Nous lui adressons également nos remerciements pour avoir accepté de participer à cette interview et nous avoir transmis sa vision du métier.
Et comme d’habitude, merci aux équipes de Developpez.com qui ont participé à cet article, et en particulier escartefigue pour sa relecture orthographique.
VI. Annexes▲
VI-A. Liens▲
Quelques interviews des Champions Java des années précédentes.
- Interview de Jean-Michel Doudoux, un Champion Java https://thierry-leriche-dessirier.developpez.com/articles/interview/jean-michel-doudoux/
- Interview d'Emmanuel Bernard, un Champion Java https://thierry-leriche-dessirier.developpez.com/articles/interview/emmanuel-bernard/
- Interview de Julien Dubois, Java Champion et créateur du projet JHipster https://thierry-leriche-dessirier.developpez.com/articles/interview/julien-dubois/