Logiciel

« La plupart des professeurs d’informatique ne sont pas de bons programmeurs. Il existe des exceptions, comme Daniel Lemire, mais elles sont rares. » (Casey Muratori)

Je prends le développement logiciel au sérieux. On peut trouver la plupart de mes contributions logicielles sur GitHub.

Capture d’écran d’un échange sur Twitter. Damian Gryski : « Academic implementations are, with very rare exceptions, total junk and only one step above ‘works on my laptop’. » Kelly Sommers répond : « Not all. Most of @lemire papers come with great code, sometimes in multiple languages! » Damian Gryski conclut : « @lemire is the very rare exception ;) »

Contributions choisies :

Certains des billets de mon blogue ont mené à des améliorations au sein de logiciels bien connus.

Plusieurs de nos articles scientifiques ont aussi eu un effet notable.

Publications récentes

Vous pouvez trouver mes travaux sur arXiv, sur Google Scholar, sur DBLP, sur le portail ACM, sur R Libre et ailleurs.

Je donne régulièrement des conférences. Ma conférence à QCon San Francisco 2019 a été identifiée comme “best voted” avec un taux de satisfaction de 98% ce qui est beaucoup plus élevé que la moyenne.

Projets

fastfloat

Routines rapides de lectures de nombres à virgule

SIMDJSON

Traiter des gigaoctets de documents JSON par seconde

SIMDUTF

Routines Unicode : des milliards de caractères par seconde

Les bitmaps Roaring

Bitmap compressés et véloces, largement déployés. (photo: Edge Earth)

Laboratoire

Nous avons la chance d’avoir un laboratoire entièrement équipé avec un technicien dédié. Nous disposons d’une ferme de serveurs qui a été utilisée dans le monde entier pour des expériences sur la performance des logiciels (par exemple, par des chercheurs comme Agner Fog). Nous disposons également de plusieurs stations de travail puissantes et de magnifiques tableaux blancs !

Étudiants

Marina Lopez s’adressant à des collègues réunis autour d’une grande table de travail avec ordinateurs portables, à l’Université TÉLUQ

Un diplômé en toge aux côtés de Daniel Lemire, devant le mur de la collation des grades 2022 de l’Université TÉLUQ

Quelques diplômés récents, par diplôme et du plus récent au plus ancien :

Doctorat

Année Diplômé Mémoire ou thèse
2025 Fatma Miladi
codirection avec Valéry Psyché · dblp
Agents conversationnels pédagogiques basés sur l’IA générative pour améliorer l’apprentissage en ligne
2024 François Lewis
codirection avec Patrick Plante
Pertinence de l’ajout d’une composante sérieuse personnalisée à un jeu vidéo dédié à la rééducation en lecture d’élèves ayant des difficultés
2023 Pierre Marie Ntang
codirection avec Serge Robert · dblp
Visualiser pour comprendre : application à la programmation vectorielle
2022 Gary Germeil
codirection avec Richard Hotte
La crédibilité du comportement d’un personnage non-joueur dans un jeu de type cartes à collectionner
2020 Tarek Khei
codirection avec Richard Hotte; directeur de l’intelligence artificielle et du logiciel chez Iristel
Établir les correspondances entre les artéfacts d’un système d’information
2019 Xueping Dai
codirection avec Li Zhen Cheng et Jean-Claude Mareschal
Caractérisation du bruit électromagnétique dans les tunnels miniers profonds et application de la méthode de débruitage
2018 Erick Aokou Koffi
architecte des données chez Metro
Approche systémique de la conscience de la situation pour la réduction des erreurs de décision en environnement complexe : cas des projets informatiques
2018 Badis Merdaoui
codirection avec Richard Hotte; architecte en technologie de l’information chez Saputo
Simulation probabilistique d’acquisition des langues secondes
2017 Samy Chambi
codirection avec Robert Godin; ingénieur logiciel chez Collective-i · dblp
Les index bitmap compressés
2016 Jing Li
codirection avec Yuhong Yan · dblp
Full Solution Indexing and Efficient Compressed Graph Representation for Web Service Composition
2010 Hazel Webb
codirection avec Owen Kaser; enseignante à UNB · dblp
Properties and Applications of Diamond Cubes

Maîtrise avec mémoire

Année Diplômé Mémoire ou thèse
2026 Hana Hbaieb Application de la réalité mixte pour améliorer l’efficacité de la compréhension de la conception architecturale
2024 Nicolas Mathon Évaluation d’Apache Ozone et de son intégration du protocole de consensus RAFT avec la librairie Apache Ratis afin d’obtenir un système distribué fiable et cohérent
2024 Jean Philippe Dionne
médaille d’or du Gouverneur général du Canada
Générateur de textes aléatoires automatiquement lemmatisés
2023 Blandine Courcot
codirection avec Nicolas Bélanger; médaille d’or du Gouverneur général du Canada · dblp
Suivi et modélisation du potentiel hydrique du sol dans un contexte de stress climatique
2023 Roger Guévin-Kamena Réglage fin par ensemble convergent de divers modèles transformers pour l’analyse du sentiment
2022 Carl Verret
médaille d’or du Gouverneur général du Canada · Les Affaires
Analyse d’un nouvel algorithme et conception d’une librairie en C# permettant la conversion des nombres décimaux en nombres à virgule flottante
2022 Marina Lopez
codirection avec Nicolas Bélanger
Proposition d’une plateforme de gestion des données de recherche et son adoption par les chercheurs en environnement et informatique dans le contexte de la recherche en foresterie au Québec
2022 Jean-François Grenier
GitHub · blog
Segmentation sémantique par réseaux neuronaux des espèces indésirables dans la culture du bleuet sauvage
2021 Carine Croteau
professeure d’informatique au cégep de Victoriaville · GitHub
Recherche et analyse de solutions performantes pour le traitement de fichiers JSON dans un langage de haut niveau
2020 Zeeshan Ahmed
ingénieur des données chez Four Eyes Financial · GitHub
Preserving Consumer DNA Privacy For Finding Relatives In A Malicious Two Party Computation
2013 Ikhtear Sharif
expert en sécurité informatique chez IBM
Performance evaluation of fast integer compression techniques
2013 Djamel Garar Compression dans les entrepôts de données pour l’amélioration des performances
2012 Eduardo Gutarra
Senior Associate chez JPMorgan Chase · dblp
Multi-column Bitmap Indexing
2006 Steven Keith
architecte d’applications chez Innovatia Inc. · dblp
Efficient Storage Methods for a Literary Data Warehouse

Maîtrise professionnelle (sans mémoire)

Une sélection d’étudiants.

Année Diplômé
2025 Antoine Tohme
2024 Ernso Decelien
2023 Zakia Chaibeddra
bourse Alexander-Graham-Bell
2022 Nicolas Boulet-Lavoie
2020 Achille Alain Kamdem Djoko
développeur chez Bell Canada
2020 Hakim Berraki
concepteur de solutions à la Société de transport de Montréal
2020 Abdelkader Kaddour Brahim
2018 Massamba Fall
analyste principal chez Promutuel · GitHub
2017 Maxime Boisvert
directeur de l’ingénierie chez Shopify
2017 Shany Carle
professeur d’informatique au cégep de Victoriaville

Pierre Marie Ntang en toge, aux côtés de Daniel Lemire, devant le mur de la collation des grades 2024 de l’Université TÉLUQ

Quelques ancients étudiants:

Étudiants au doctorat en cours de supervision:

Étudiants à la maîtrise en cours de supervision:

Stagiaires post-doctoraux récents:

Assistants de recherche récents (premier cycle):

  • Nick Nuon, été 2023 et 2024, récipiendaire d’une bourse de recherche de premier cycle du CRSNG.
  • Nicolas Boyer, été 2021 et 2022, récipiendaire d’une bourse de recherche de premier cycle du CRSNG. Nicolas est développeur logiciel chez Avid.
  • David Favreau, automne 2021.
  • Yoann Le Rouzic, été 2020. GitHub
  • Io Andes Daza-Dillon, été 2019, récipiendaire d’une bourse de recherche de premier cycle du CRSNG. Io est consultant chez Savoir-faire Linux. GitHub
  • Jérémie Piotte, automnes 2018 et 2019, récipiendaire d’une bourse de recherche de premier cycle du CRSNG. Jérémie est Senior Manager (Machine Learning Engineering) chez Unity Technologies GitHub
  • Niko Girardelli, hiver 2018. GitHub

Invités de recherche récents :

Mentorat

Services

Je suis éditeur de la revue Software: Practice and Experience (Wiley) depuis 2021. Cette revue a été fondée en 1971 et elle a publié plusieurs articles fondamentaux en informatique.

Avant les événements de 2020, j’organisais à Montréal des séries d’ateliers ouverts au public: le technolab et le tribalab. En 2019, j’ai été le président d’EDA 2019 (Business Intelligence & Big Data) tenue en octobre 2019 à Montpellier, France. En juin 2018, j’ai participé au séminaire Dagstuhl 18251 intitulé “Database Architectures for Modern Hardware”. En 2018, j’ai été reconnu par la revue Software: Practice and Experience comme “distinguished referee”. J’ai été éditeur associé de la section informatique au sein de la revue Heliyon (Elsevier) de 2015 à 2020.

J’ai récemment fait partie des comités scientifiques suivants :

  • WSDM 2027: The 20th International Conference on Web Search and Data Mining (February 15-17, 2027, in Hong Kong, China) – Senior Member
  • CIKM 2026: 34th ACM International Conference on Information and Knowledge (November 7-11, 2026 in Rome Italy) – Senior Member
  • ECMLPKDD 2026: European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases (September 7-11, 2026 in Naples Italy)
  • WSDM 2026: The Nineteenth International Conference on Web Search and Data Mining (March 10-14, 2026, in Boise, Idaho, USA) – Senior Member
  • CIKM 2025: 33rd ACM International Conference on Information and Knowledge (October 21-25, 2025 in Boise, Idaho) – Senior Member
  • BIGDACI 2025: 10th International Conference on Big Data Analytics, Data Mining and Computational Intelligence (23-25 July 2025 in Lisbon, Portugal)
  • SIGIR 2025: The 48th International ACM SIGIR Conference on Research and Development in Information Retrieval (13-18 July 2025 in Padua, Italy)
  • ECMLPKDD 2025: European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases (15-19 September 2025, in Oporto, Portugal)
  • WSDM 2025: The Eighteenth International Conference on Web Search and Data Mining (March 10-14, 2025, in Hannover, Germany) – Senior Member
  • ECMLPKDD 2024: European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases (September 9-13, 2023, in Vilnius, Italy)
  • SIGIR 2024: The 47th International ACM SIGIR Conference on Research and Development in Information Retrieval (Washington D.C., USA, 14-18 July, 2024).
  • ECMLPKDD 2023: European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases (September 18-22, 2023, in Turin, Italy)
  • SIGKDD 2023: 29th SIGKDD Conference on Knowledge Discovery and Data Mining (Long Beach, California, August 6 2023)
  • SIGIR 2023: The 46th International ACM SIGIR Conference on Research and Development in Information Retrieval (Taiwan, July 23rd to 27th, 2023).
  • EDA 2022: 18e journées EDA Business Intelligence and Big Data (Clermont-Ferrand,France, 27-28 octobre 2022)
  • SIGIR 2022: The 45th International ACM SIGIR Conference on Research and Development in Information Retrieval (Madrid, Spain, July 11-15, 2022)
  • DOLAP 2022: 24th International Workshop on Design, Optimization, Languages and Analytical Processing of Big Data
  • WSDM 2022 15th ACM International WSDM Conference (Phoenix, AZ, USA, Feb. 2nd to March 4th, 2022)
  • ASD 2021: 13th edition of the Conference on Advances in the Science of Data (Blida, Algeria, 24-25 October 2021)
  • CIKM 2021: 30th ACM International Conference on Information and Knowledge (Gold Coast, Queensland, Australia, 1-5 November 2021)
  • ECML/PKDD 21: European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases (Bilbao, Spain, 13-17 September)
  • EDA 2021: 17e journées EDA Business Intelligence and Big Data (1-2 July 2021)
  • SIGKDD 2021: 27th International Conference on Knowledge Discovery and Data Mining (Singapore, Aug 14-18, 2021)
  • SIGIR 2021: 44th International ACM SIGIR Conference on Research and Development in Information Retrieval
  • DOLAP 2021: 23nd International Workshop On Design, Optimization, Languages and Analytical Processing of Big Data
  • WSDM 2021:14th ACM International WSDM Conference (Jerusalem, Israel, March 8-12, 2021)
  • EDML20: Second Workshop on Evaluation and Experimental Design
  • RecSys 2020: 14th ACM Recommender Systems Conference (Rio de Janeiro, Brazil)
  • BBIGAP'2020: Second International Workshop for Business Intelligence & Big Data Applications
  • ECML-PKDD 2020: European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases (Area Chair)
  • CIKM 2020: 29th ACM International Conference on Information and Knowledge
  • DaWak 2020: 22nd International Conference on Big Data Analytics and Knowledge Discovery
  • SIGIR 2020: 43rd International ACM SIGIR Conference on Research and Development in Information Retrieval
  • DOLAP 2020: 22nd International Workshop On Design, Optimization, Languages and Analytical Processing of Big Data
  • ADBIS 2020: 24th European Conference on Advances in Databases and Information System (August 25-28: Lyon, France)
  • CIKM 2019: 28th ACM International Conference on Information and Knowledge Management (Nov 3-7, 2019: Beijing, China)
  • RecSys 2019: 13th ACM Recommender Systems Conference (September 2019; Copenhagen, Denmark)
  • BBigAP 2019: 1st International Workshop on BI & Big Data applications, In conjunction with the 23rd European Conference on Advances in Databases and Information Systems (ADBIS 2019) (September 8, 2019; Bled, Slovenia)
  • DOLAP 2019 - 21st International Workshop On Design, Optimization, Languages and Analytical Processing of Big Data (March 26, 2019; Lisbon, Portugal)
  • CIKM 2018 - Twenty-Seventh ACM International Conference on Information and Knowledge Management (October 22-26, 2018; Turing, Italy)
  • ASD 2018 - 12th edition of the Conference on Advances of Decisional Systems : Big data & Applications (May 2018; Marrakech, Morocco)
  • RecSys 2018 - 12th ACM Recommender Systems Conference (October 2018; Vancouver, Canada)
  • WABiD* 2018 - 1st International Workshop on Advances on Big Data Management, Analytics and Security (September 2018; Budapest, Hungary)
  • WWW 2018 - Twenty-seventh International WWW Conference (April 23-27 2018; Lyon, France)
  • DOLAP 2018 - Nineteenth International Workshop On Design, Optimization, Languages and Analytical Processing of Big Data (March 26–29, 2018; Vienna, Austria)
  • CIKM 2017 - Twenty-Sixth ACM International Conference on Information and Knowledge Management (November 6-10, 2017; Singapore)
  • SPIRE 2017 - 24th International Symposium on String Processing and Information Retrieval (September 26-29, 2017; Palermo, Italy)

J’ai été un examinateur externe sur les thèses de doctorat suivantes :

  • Azim Afroozeh à la Vrije Universiteit Amsterdam (2026) – dirigé par Peter Boncz.
  • Lockman Saleh à l’UQAM (2025) - dirigé par Hafedh Mili et Mounir Boukadoum.
  • Jaël Champagne Gareau à l’UQAM (2024) - dirigé par Éric Beaudry.
  • Nathan Maurice à la Sorbonne, France (2024) - dirigé par Lionel Lacassagne.
  • Nigel Medforth à l’Université Simon Fraser (2022) - dirigé par Robert Cameron.
  • Luca Versari à l’Université de Pise (2021) - dirigé par Roberto Grossi.
  • Kareem El Gebaly à l’Université Waterloo (2018) - dirigé par Jimmy Lin, Lukasz Golab et Ashraf Aboulnaga.
  • Mohammed Shaaban à l’Université Pierre et Marie Curie (2017) - dirigé par Patrick Garda.
  • Mehdi Boukhechba à l’UQAC (2016) - dirigé par Abdenour Bouzouane et Charles Gouin-Vallerand.
  • Hicham Assoudi à l’UQAM (2016) - dirigé par Hakim Lounis.
  • Khaled Dehdouh à Lyon 2 (2015) - dirigé par Omar Boussaid.
  • Martin Leginus à l’Université Aalborg (2015) - dirigé par Peter Dolog.
  • Ahmad Taleb à l’Université Concordia (2011) - dirigé par Todd Eavis.

J’ai évalué les mémoires de maîtrise suivants:

  • Benjamin Lapointe-Pinel de l’UQAR, Canada (2024) - dirigé par Steven Pigeon.

En 2020, j’étais l’un de deux évaluateurs externes du programme de maîtrise en informatique à l’UQAC.

J’ai servi comme membre de comité d’évaluateur au sein d’organismes subventionnaires :

  • FRQNT: comité d’évaluation 03F (informatique théorique) depuis 2007.
  • FRQNT: comité d’évaluation 309 (subvention d’équipe en informatique) depuis 2006.
  • CRSNG: comité d’évaluation du programme de subventions d’outils et d’instruments de recherche dans les sciences informatiques (2012-2015)
  • CRSNG: comité d’évaluation des subventions à la découverte en Sciences informatiques, comité 1507 (2018-2021), co-président du comité en 2019-2020 et 2020-2021.
  • CRSNG: comité d’évaluation de Horizons de la découverte (2022)

En 2022, j’ai fait partie du sous-comité universitaire sur le génie et les technologies de l’information, au sein du comité sur l’implantation des mesures de l’opération main-d’oeuvre du gouvernement du Québec.

Livres

Java pas à pas

Couverture de Java pas à pas

Programmation avec Python: des jeux au Web

Couverture de Programmation avec Python: des jeux au Web

La science des données: Théorie et applications avec R et Python

Couverture de La science des données: Théorie et applications avec R et Python

Maîtriser la programmation: Des tests à la performance en Go

Couverture de Maîtriser la programmation: Des tests à la performance en Go

Mastering Programming: From Testing to Performance in Go

Couverture de Mastering Programming: From Testing to Performance in Go

Faster Than You Think: Essays on Thinking Better and Building Faster

Couverture de Faster Than You Think: Essays on Thinking Better and Building Faster

Média

Articles et entrevues

Conseil

J’ai travaillé comme consultant depuis 1998. En tant que consultant, j’ai construit des logiciels personnalisés, j’ai résolu des problèmes de performance profonds, j’ai offert des sessions de formation spécialisées, j’ai conçu des algorithmes novateurs. J’adore travailler avec l’industrie sur des problèmes importants. Je propose les services commerciaux suivants.

  • Conférences. Je suis ravi de parler à votre équipe des avancées récentes en logiciel ou d’autres sujets pertinents. Mes conférences sont bien accueillies. Mes tarifs varient de 5 000 $ à 15 000 $ par engagement, en fonction de la durée, du format (virtuel ou en personne) et des frais de déplacement, qui sont généralement couverts séparément.
  • Formation. Je fournis une formation avancée exclusive et de haute qualité pour votre équipe. Pour les sessions de formation d’entreprise en ingénierie logicielle, mes tarifs se situent entre 3 000 $ et 5 000 $ par jour, en fonction de la personnalisation, de la durée (demi-journée ou journée complète) et du nombre de participants.
  • Consultation. Si vous avez des problèmes spécifiques dans votre entreprise, je serai ravi de venir vous aider. Mes honoraires de consultation sont de 400 $ par heure, avec des frais supplémentaires pour les déplacements. Lorsque c’est possible, je préfère proposer des services à forfait fixe (par exemple, 5 000 $).
  • Logiciels open-source sponsorisés. Certains de mes travaux open-source ont été sponsorisés par des entreprises privées et développés selon leurs besoins. Les sponsorisations pour les projets open-source peuvent être structurées en niveaux mensuels ou en contributions uniques pour des fonctionnalités spécifiques, allant de 1 000 $ à 10 000 $ ou plus, en fonction de l’ampleur. J’encourage les entreprises à me sponsoriser sur GitHub, surtout si elles bénéficient de mon travail. Les niveaux de sponsorisation supérieurs sur GitHub sont destinés aux entreprises et incluent des avantages spécifiques.

Me joindre

  • [email protected]
  • Université du Québec (TÉLUQ), 5800, rue Saint-Denis, Bureau 1105, Montréal (Québec) H2S 3L5 Canada
  • sur rendez-vous