Après une thèse en physique des milieux condensés soutenue à l’Institut Néel à Grenoble, Hadrien Grasland a rejoint notre communauté pour un CDD de deux ans dans le cadre du projet européen AIDA2020. Nous avons pensé intéressant de faire partager un regard « neuf » (mais acéré, comme on pourra en juger) sur l’environnement dans lequel nous travaillons tous les jours.
Tu es arrivé à l’IN2P3, plus précisément au LAL, début 2016. Peux-tu nous décrire brièvement ton parcours précédent ?
Programmeur autodidacte depuis l’enfance, j’ai essayé d’élargir un peu mes horizons dans mes études pour ne pas devenir un hyperspécialiste.
Le résultat : CPGE -> L3-M1 de physique générale -> M2 dispositifs quantiques (spin-/op-/élec-tronique et autres nanodispositifs) -> Thèse expérimentale sur la supraconductivité avec une forte composante de développement logiciel (contrôle-commande, traitement de données, et simulation).
Arrivé à ce dernier stade, j’ai abouti à la conclusion que j’appréciais le milieu de la recherche en physique, mais que je souhaitais que mes efforts de développement logiciel ne soient plus considérés comme un aspect secondaire de mon activité. Donc je me dirige maintenant vers une carrière d’ingénieur de recherche spécialisé en développement.
Quelle est ta mission principale ?
Participer à la parallélisation de frameworks et algorithmes de tracking HEP, en essayant autant que possible de mettre les expériences d’accord sur des solutions communes.
Quels sont tes outils et technologies préférés en informatique ? Comment se situent-ils par rapport à ta mission ?
Mes outils préférés, ce sont les langages de programmation que j’utilise, et je n’essaierai pas d’énumérer tous ceux que j’apprécie avec leurs avantages et inconvénients respectifs. Au travail, j’utilise principalement C++, et pour nos besoins (gros logiciels, beaucoup de développeurs, longue durée de vie, haute performance, compatibilité avec une grosse masse de code existant) c’est plutôt un bon choix.
En matière de technologie, je suis intéressé par tout ce qui est parallélisme et concurrence pour des raisons évidentes. Si je devais citer deux technos que je trouve très intéressantes dans ce domaine, ce serait HPX pour la programmation CPU et OpenCL pour tout le reste. J’aurai probablement l’occasion d’utiliser les deux au travail dans les années à venir.
Comment ressens-tu ta place au laboratoire, au sein du service informatique et de ton équipe projet ?
Jusqu’ici, tout va bien. Je me sens un peu isolé dans mon projet pour l’instant par rapport à d’autres projets comme LSST où l’activité au LAL est déjà bien démarrée et les gens du SI interagissent beaucoup, mais comme j’ai l’habitude de travailler seul ce n’est pas bien gênant.
Comment ressens-tu les relations et échanges entre le service informatique et les expériences ?
J’ai l’impression que ça dépend beaucoup des expériences et de la nature des projets. Certaines expériences semblent plutôt laisser les informaticiens gérer leurs projets de façon autonome, tandis que d’autres préfèrent interagir plus étroitement avec ces derniers (demandes plus précises, retours plus fréquents). Et puis on ne gère pas un projet de contrôle-commande comme on gère un projet de traitement de données.
Es-tu sensible au contexte de la recherche qui est menée ici ?
Un peu, mais je pense ne voir que le bout de la partie émergée de l’iceberg.
As-tu côtoyé des physiciens ? À l’IN2P3, au CNRS ?
Oui, durant mes études et dans mon travail actuel. Jusqu’à présent, j’ai principalement travaillé dans des laboratoires CNRS, donc c’est un milieu avec lequel je commence à être assez familier. Par contre, l’IN2P3 est un milieu nouveau pour moi, venant plutôt d’un milieu de physique de la matière condensée.
As-tu découvert ce qui existe au sein de la communauté pour t’aider à accomplir ta mission ?
J’ai du mal à cerner assez la question pour y répondre... Disons que pour ce qui est de me tenir informé, j’ai l’impression d’assez bien connaître les canaux de communication existant à différentes échelles (projet, labo/campus, région, France). Et qu’à l’échelle individuelle, je commence à me faire mon carnet d’adresses de spécialistes de tel ou tel sujet, au LAL et ailleurs, avec qui je peux aller discuter en cas de besoin. Mais je ne connais pas encore très bien les ressources de communication plus orientée "groupe".
Tu es en contact direct avec les informaticiens du CERN. Perçois-tu une différence dans les méthodes de travail avec les informaticiens de l’IN2P3 ?
Le CERN aime voir les choses en grand, pour le meilleur et pour le pire. L’avantage, c’est qu’il y a une infrastructure très complète et accessible pour gérer les gros projets (mailing lists, JIRA, visioconf, etc). L’inconvénient, c’est que la taille de l’organisation et des collaborations rend la communication laborieuse, ce qui tend à produire des structures sociales esquivant cette dernière au possible, anarchiques ou dictatoriales. Les tentatives actuelles de faciliter cette communication, en multipliant les réunions et en les mettant en visioconférence par exemple, ne me semblent pas très efficaces.
Après, la comparaison dans ma tête s’effectue plutôt avec les structures de petite taille dont j’ai l’habitude (équipe, service...). Je ne connais pour l’instant pas assez bien l’IN2P3 en tant que structure pour me faire une idée de sa propre organisation interne.
Tu es en CDD. Est-ce que cela fait une différence par rapport à être titulaire dans ta manière d’aborder ton travail ?
Ça joue sans doute, par exemple dans ma propension à me lancer dans des projets complexes (...que je crains de ne pas finir), ou des tâches annexes comme de l’enseignement (...dont je sais qu’elles seront peu valorisantes quand je devrai négocier mon prochain contrat). Mais au fond, ce n’est qu’un facteur parmi d’autres. Le fait d’être nouveau venu dans mon projet ou d’être un peu géographiquement excentré dans ce dernier, par exemple, a probablement une influence nettement plus importante sur mon activité.
Après deux mois dans le grand bain, quels sont pour toi les défis majeurs auxquels doit faire face le développement de l’informatique en physique des hautes énergies ?
La communication entre les gens, la manière dont ils s’organisent socialement, me semble être un sujet important. On ne peut pas fonctionner efficacement à une centaine de personnes comme on fonctionne à quatre, et ce n’est pas le genre de problème qu’on peut régler en se concentrant uniquement sur les barrières technologiques.
Comme défis plus classiques, on peut aussi mentionner l’immensité toujours croissante du volume de données à traiter et stocker, ainsi que l’hostilité grandissante du politique envers la recherche fondamentale avec ce qu’elle entraîne en termes de financement et de stabilité du personnel.
Si tu avais à recommander la lecture d’un seul bouquin aux informaticiens développeurs de l’IN2P3, ce serait lequel ? Un site à fréquenter régulièrement ? Une technologie à surveiller ?
Bouquin recommandé : Ergonomie Web (Amélie Boucher, Eyrolles). Une des meilleures introductions au sujet de l’ergonomie logicielle (pas seulement web) que je connaisse, or c’est un sujet auquel tout développeur devrait être sensible à mon sens puisque les logiciels sont toujours conçus pour des utilisateurs.
Site web à suivre : le(s) site(s) de MOOCs favori(s) du lecteur. Plus on en sait, mieux on est équipé pour faire face aux surprises du lendemain. :)
Technologie à surveiller : il se passe des choses très intéressantes dans le comité de normalisation C++ en ce moment, avec l’arrivée prochaine des concepts et des nouveaux mécanismes de concurrence et parallélisme. On sera malheureusement probablement tous à la retraite d’ici que les compilateurs mainstream supportent tout ça, mais entre ces évolutions du langage et les innovations d’HPX, je pense que C++ est bien parti pour assurer encore davantage sa position de langage de référence pour tout projet qui requiert hautes performances et abstractions puissantes.
Pour terminer ce petit "rapport d’étonnement", justement, qu’est-ce qui t’a le plus étonné en arrivant à l’IN2P3 ?
Je dirais la porosité de la barrière entre physique et informatique, et le fait que pas mal de gens parviennent à garder un pied de chaque côté. À ma connaissance, dans les autres voies que j’envisageais après ma thèse, ce serait peu commun d’avoir quelqu’un comme David Rousseau ou RD [1] qui a à la fois une bonne compréhension de la physique, une vision d’ensemble de la manip, et une connaissance assez poussée du logiciel utilisé pour traiter les résultats. Mais dans la communauté HEP, et à l’IN2P3 en particulier, le cas semble assez répandu.
Propos reccueillis par Christian Helft