Hello there! I am a Computer Science engineer and part-time researcher, currently a full-stack engineer working on the software to control a robotic arm for percutaneous treatment of cancers at Quantum Surgical in Montpellier, France (2025 – ).
My professional background is in Human-Computer Interaction (HCI) and Software Engineering (SE):
R&D engineer in Paris on developping the software for an embedded digital TV recorder (2012 – 2014)
PhD on architectures and languages for User Interfaces (UI), supervised by Stéphane Huot in the Loki team at Inria Lille (2015 – 2019)
Researcher and teaching assistant in algorithmics, software engineering and Web development at Centrale Lyon (2019 – 2022)
Postdoc researcher on UI for territorial concertations in the SENS and SELMET teams at INRAE and CIRAD in Montpellier (2022 – 2024)
I really enjoy crafting innovations in software, making nice talks to share them, and bringing them all the way to end users. After 10 years of multitasking in public academic research, I have greatly reduced my active involvements to focus for impact with my work. My main achievements so far have been:
edge264, an open-source H.264/AVC video decoder improving speed and code size over the state of the art, to challenge programming practices in the Open Media community [FOSDEM'24, FOSDEM'25] and help further reduce the energy footprint of video playback.
Being very concerned about ecology, I have been a willing member of the Sustainable Development and Societal Responsibility local committee at Centrale Lyon, and have co-chaired the French working group on HCI and ecology. I work hard to explore unconventional paths, most of my spare time going into compulsively crafting code then sharing it with engineering communities.
On a personal note my current hobbies are choir singing 🎶, improv theater 🎭, gymnastics 🤸♂️, and knitting 🧶.
Experimental software decoder for the H.264 video codec, which I keep developing in my spare time to research new programming practices and to make a useful contribution to the open source community.
Producing an analytical and action framework based on interdisciplinarity, using the concepts of ecosystem services associated with pastoral areas and the concept of multifunctionality of pastoral activity, to strengthen the participation of societies in defining the future of pastoralism.
Interactive collection of metaphors (2022 – 2024)
Developing an online interface and visualizations to collect and display a network of metaphors related to the soil during “metaphoring” workshops.
Developing sustainable and productive agricultural systems while increasing soil carbon sequestration, and raising awareness on the role of soil management to mitigate greenhouse gas emissions. I worked on GUIs to run and analyze a multi-agent model simulating agriculture-forest interactions in Senegal.
Website supporting per-student formative evaluations of competencies. It includes a complete pipeline to fetch grades from teachers, and two dashboards for students and teachers.
Server and online interface supporting a week-long teaching activity, in which students compete in groups to optimize the energy production of a wind farm. This activity is very much appreciated by students, and has been presented as a flagship of Centrale Lyon's innovation. The platform is now autonomous and hosts 3 events per year.
Three visual prototypes of an IDE interface with a richer communication with compilers, along with an exhaustive list of cases where they could be useful.
Publications
For the most part my research has focused on reducing complexity when programming interactive systems. In the case of graphical interfaces, this complexity is due to the large number of objects and behaviors to manage, and I have proposed models [EICS'19, EICS'17] and principles [EICS'22] to give more concise mental representations. In the case of data structures, this complexity is due to the abstraction effort required to navigate between visual representation and code, and I have initiated a tool allowing to work directly on visual graphs [EIAH'21]. Finally, in the case of compilers, the complexity is due to the numerous transformations that lead from the source code to the executable file, and I explored the idea of a human-compiler communication to improve its understanding [PPIG'12].
International peer-reviewed conferences
CHI'24
T. Raffaillac, N. Boukhelifa, E. Crouzat, F. Stark, J.-P. Müller, J. Lasseur. Supporting Interdisciplinary Research with Cards-based Workshops - A Case Study on Participatory Planning for Mountain Pastoralism. Extended Abstracts of the 2024 CHI Conference on Human Factors in Computing Systems, May 2024, art. 531, pp. 1–8. DOIPDFvideo
EICS'22
T. Raffaillac & S. Huot. What do researchers need when implementing novel interaction techniques?. Proceedings of the ACM on Human-Computer Interaction, Volume 6, EICS, June 2022, art. 159, pp. 1–30. 🏆 27% DOIPDFslides
EICS'19
T. Raffaillac & S. Huot. Polyphony: Programming Interfaces and Interactions with the Entity-Component-System Model. Proceedings of the ACM on Human-Computer Interaction, Volume 3, EICS, Juin 2019, art. 8, pp. 1–22. 🏆 33% DOIPDFslides
EICS'17
T. Raffaillac, S. Huot & S. Ducasse. Turning Function Calls Into Animations. Proceedings of the 9th Symposium on Engineering Interactive Computing Systems, EICS, Juin 2017, pp. 81–86. 35% DOIPDFslides
PPIG'12
T. Raffaillac. Exploring the design of compiler feedback. Proceedings of the 24th Annual Workshop of the Psychology of Programming Interest Group, PPIG, Nov. 2012, pp. 139–150. PDFslides
National peer-reviewed conferences
IHM'23
T. Raffaillac, N. Boukhelifa, E. Crouzat, F. Stark, J.-P. Müller, J. Lasseur. Development of a multi-agent simulation interface for the joint management of mid-mountain pastoral territories. Adjunct proceedings of the 34th Conference on l'Interaction Humain-Machine, April 2023, art. 6, pp. 1–6. (work in progress)DOIPDFposterslide
IHM'18
T. Raffaillac & S. Huot. Application du modèle Entité-Composant-Système à la programmation d'interactions. Proceedings of the 30th Conference on l'Interaction Humain-Machine, IHM, Oct. 2018, pp. 42–51. 33% DOIPDFslides
Theses and dissertations
PhD
T. Raffaillac. Améliorer les langages et bibliothèques logicielles pour programmer l'interaction. Doctoral thesis from the University of Lille. PDFslides
MSc
T. Raffaillac. Exploring the design of compiler feedback. Master thesis from KTH Royal Institute of Technology. PDFslides
Workshops, demonstrations, posters, etc.
Rochebrune'23
T. Raffaillac. Interacting with numbers. In the 29th journées de Rochebrune 2023, Jan. 2023. (workshop)PDFslides
HuFaMo'22
M. Savary-Leblanc, X. Le Pallec, P. Palanque, C. Martinie, A. Blouin, F. Jouault, M. Clavreul, T. Raffaillac. Mining human factors general trends from+ 100k UML class diagrams. Companion proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems, HuFaMo, Oct. 2022, pp. 913–922. (workshop)DOI
EIAH'21
P. Baron, L. Roche & T. Raffaillac. Visualisation automatique de graphes pour l'apprentissage des algorithmes. Proceedings of the 10th Conférence sur les Environnements Informatiques pour l’Apprentissage Humain, EIAH, June 2021, pp. 372–376. (poster)PDFvideo
Didapro'20
T. Raffaillac, F. Chavanon & R. Vuillemot. Utilisation d’un juge en ligne pour l’évaluation automatique des programmes des étudiants. In the 8th colloque Didapro-DidaSTIC, Feb. 2020. (poster)PDF
Didapro'20
T. Raffaillac, F. Chavanon & R. Vuillemot.. Mise en place d'une plateforme de programmation compétitive comme support de TDs. In the 8th colloque Didapro-DidaSTIC, Feb. 2020. (course)PDFGitHub
EICS'17
T. Raffaillac. Language and System Support for Interaction. Proceedings of the 9th Symposium on Engineering Interactive Computing Systems, EICS, June 2017, pp. 149–152. (doctoral consortium)DOIPDFslidesposter
Invited talks
2025-02-02
More innovations in H.264/AVC software decoding. FOSDEM 2025, Brussels, Belgium. 40min video
2024-02-04
Innovations in H.264/AVC software decoding. FOSDEM 2024, Brussels, Belgium. 30min video
2023-06-20
Comment (ré)concilier les Interfaces Humains-Machines avec les Transitions ?. Monthly seminar of the SENS research unit, Montpellier, France. 45min slides
2023-04-19
Le numérique pour mieux produire (agroécologie - protection des cultures - productions animales durables - phénotypage rapide in situ). DigitAgora 2023, Montpellier, France. (round-table) 50min slides
2022-12-15
Scientific writing. Yearly PhD seminar from SENS, Valflaunès, France. (course) 2h notes
2022-09-01
L'informatique en 2040 (un exercice de design spéculatif). Sustainable Development and Societal Responsibility committee, Centrale Lyon, France. 30 min slides
2017-05-19
Animations in Pharo Smalltalk. Pharo Days, Lille, France. (demo) 10min video
2016-08-25
Early ECS in Pharo Smalltalk. ESUG 2016, Prague, Czech Republic. (demo) 10min video
Teaching
I really enjoy teaching and innovative educational activities. In 2019 at Centrale Lyon I volunteered to develop the software for an innovative week-long educational event held several times a year, the WEEX éolienne. Then in 2020 I developed a website to display individual skills assessments as part of the implementation of the Competency-Based Education at Centrale Lyon. I have also organized competitive programming trainings since 2015, in Lille, Lyon and Montpellier, and gave advanced courses on the topic. In 2021 we raised Centrale Lyon to the top rank among the French institutions on the international training platform Kattis, reached the 4th place at CodinGame Fall Challenge 2021, then got the 54th and 64th places at the major European competition SWERC 2021.
PeriodCourseLevelInstitutionHours
2019 – 2022
Algorithms and data structures (teaching assistant)
5 editions of a week-long multidisciplinary pedagogical event
Eng. 1/2
École Centrale de Lyon
92
2019 – 2022
Students projects and mentoring (supervisor)
6 projects (2 to 9 months), 1 intership (3 months), mentoring of 3 students
Eng. 1/2/3
École Centrale de Lyon
56
2018 – 2019
Introduction to human-machine interfaces (teaching assistant)
programming Graphical User Interfaces with JavaFX, event-based programming, user interface mockups, usability evaluation and heuristics
DUT1
Lille University/IUT A
64
2018 – 2019
Advanced algorithms (teaching assistant)
recursive and iterative algorithms, recursive and advanced data structures
DUT2
Lille University/IUT A
64
2018 – 2019
Introduction to computer systems (teaching assistant)
coding numbers and text, computer architecture, operating systems, scripting and the terminal, processes and files
DUT1
Lille University/IUT A
64
2017 – 2018
Web technologies (teaching assistant)
client-side Web technologies HTML/CSS/JavaScript
Bachelor1
Lille University
36
2017 – 2018
Algorithms and complexity (teaching assistant)
divide and conquer, dynamic programming, greedy algorithms, complexity analysis, P/NP and reduction
Master1
Lille University
36
Academic service
Board member and webmaster for AFIHM (French Association for Human-Computer Interaction) (2023 – 2024)
Co-chair of the French working group IHM & écologie (2023 – 2024)
Reviewer for CHI'24 and EICS'24
Reviewer for CHI'23 and EICS'23
Member of the French working group glihm (Software Engineering and Human-Computer Interaction) (2021 – 2023)
Reviewer for CHI'22 and EICS'22, session chair at EICS'22
Member of the Sustainable Development and Societal Responsibility local committee at Centrale Lyon in 2021-2022. I worked mainly on extracting teaching measures from the COP2 agreement that was signed by the director, and helped promote and structure the first course on Ecological Transition.
Reviewer for CHI'21 and IHM'20'21
Reviewer for CHI'20
Reviewer for IHM'19
Reviewer for IHM'18
Reviewer for IWST'17 and ManLang'17
Signs of life
This section contains stuff that doesn't fit anywhere else. I believe technical mastery is essential to tackle impossible societal challenges, so I dedicate a good amount of time to organizing local training sessions for contests and challenges. These events are a lot of fun and a good way to test the skills of prospective students. My main platform for contests training is Kattis, where I hold the 2nd place in France.
Minimalist 2D game with time-altering mechanisms, created with Clément Pillias for the 50th Ludum Dare Jam. I did the eerie music, the sounds and the sprites.
Second participation as a coach, with teams ECL 2 (54th/97) and CentraleMegaStomp (64th/97). A remarkable result for Engineering students as well as first-timers!
Running a club for students from February to April, partly during a Covid lockdown, with sessions alternating between competitive programming and live music coding with FoxDot.
Pacman-like game created with Clément Pillias and Nicole Pong for the Global Game Jam 2021. I did the UI, level design and incremental music (although due to a bug you cannot hear the full version).
Online IDE including a Python interpreter, coded at the start of the Covid outbreak to allow students to ask for help and show their code remotely (viewed as a mosaic on my side). It lacked modules so students would only use it to show code, but it was super helpful to let them feel supported throughout this event.
Short game created with Yoann Dufresne and Matthieu Falce for the Ludum Dare Jam 35. As usual I did the artwork and music. Beware the game is meant to be oppressing...
Short movie promoting the Computer Science student association at the annual associations fair of Ecole Centrale Marseille. A must-watch if you've scrolled down this far :)
Tutorial to compress a video exported by Premiere Pro, using the software StaxRip. The parameters would correct the flaws introduced by Premiere (its disastrous deinterlacing filter) and output in a format ready for integration in a Web player.
Simultation of an electrostatic lens by shooting electrons in a simple finite element mesh, created for the TIPE exam at the end of the Classes Préparatoires.
Interactive viewer for 3D objects stored in files. This program ended a 3-year obsession to create a 3D engine, and was my last BASIC program before playing with more modern languages.