Sitemap

A list of all the posts and pages found on the site. For you robots out there, there is an XML version available for digesting as well.

Pages

Posts

Future Blog Post

Published: January 01, 2199

This post will show up by default. To disable scheduling of future posts, edit config.yml and set future: false.

Blog Post number 4

Published: August 14, 2015

This is a sample blog post. Lorem ipsum I can’t remember the rest of lorem ipsum and don’t have an internet connection right now. Testing testing testing this blog post. Blog posts are cool.

Blog Post number 3

Published: August 14, 2014

This is a sample blog post. Lorem ipsum I can’t remember the rest of lorem ipsum and don’t have an internet connection right now. Testing testing testing this blog post. Blog posts are cool.

Blog Post number 2

Published: August 14, 2013

This is a sample blog post. Lorem ipsum I can’t remember the rest of lorem ipsum and don’t have an internet connection right now. Testing testing testing this blog post. Blog posts are cool.

Blog Post number 1

Published: August 14, 2012

This is a sample blog post. Lorem ipsum I can’t remember the rest of lorem ipsum and don’t have an internet connection right now. Testing testing testing this blog post. Blog posts are cool.

portfolio

publications

Studying Logging Practice in Machine Learning-based Applications

Patrick L. Foalem, Foutse Khomh, Heng Li

Published in Information and Software Technology (IST Journal), 2024

📄 Paper | 📚 BibTeX

An Empirical Study on Logging Evolution on Stack Overflow: Trends, Topics, and Challenges

Patrick L. Foalem, Foutse Khomh, Andre Nguimbous, Heng Li

Published in Empirical Software Engineering (EMSE Journal)-Under review (2nd round), 2024

📄 Paper | 📚 BibTeX

Logging Requirements for Continuous Auditing of Responsible Machine Learning-Based Applications

Patrick L. Foalem, Leuson Da Silva, Foutse Khomh, Heng Li, Ettore Merlo

Published in Empirical Software Engineering (EMSE Journal), 2025

📄 Paper | 📚 BibTeX

Empirical Characterization of Logging Smells in Machine Learning Code

Patrick L. Foalem, Leuson Da Silva, Foutse Khomh, Ettore Merlo, Heng Li

Published in SANER 2026 Conference (Registered Reports Track), 2026

📄 Paper | 📚 BibTeX

An Empirical Study of Policy-as-Code Adoption in Open-Source Software Projects

Patrick L. Foalem, Foutse Khomh, Leuson Da Silva, Ettore Merlo

Published in Journal of Systems and Software (JSS Journal)-Under review (2nd round), 2026

📄 Paper | 📚 BibTeX

Empirical Characterization of Logging Smells in Machine Learning Code

Patrick L. Foalem, Leuson Da Silva, Foutse Khomh, Heng Li, Ettore Merlo

Published in Empirical Software Engineering (EMSE Journal) - Under review (1st round), 2026

📄 Paper | 📚 BibTeX

talks

teaching

Teaching Assistant

Teaching Assistantship, Université des Montagnes, 2018

Teaching Assistant — 2018–2021 Courses assisted:

  • Introduction to Python Programming
  • Introduction to Information and Communication Technology
  • Introduction to SQL Databases
  • Introduction to Operating Systems
  • Introduction to Computer Maintenance

INF104 – Introduction to Computer Science

Undergraduate course, Université des Montagnes, Department of Computer Science, 2021

Instructor for the INF104 Introduction to Computer Science course. Topics include computer hardware and software fundamentals, algorithms, data structures, programming concepts, and basic computer organization.

INF304 – Geographic Information Systems (GIS)

Undergraduate course, Université des Montagnes, Department of Computer Science, 2021

Instructor for the INF304 Geographic Information Systems course. Topics include spatial data models, coordinate systems, map projections, spatial data analysis, georeferencing, and the use of GIS tools such as QGIS.

INF306 – Databases

Undergraduate course, Université des Montagnes, Department of Computer Science, 2021

Instructor for the INF306 Databases course. Topics include relational databases, SQL programming, database design, and the fundamentals of database management systems, with practical exercises using MySQL.

INF301 – Computer Architecture

Undergraduate course, Université des Montagnes, Department of Computer Science, 2021

Instructor for the INF301 Computer Architecture course. Topics include computer system design, instruction set architecture, cache organization, virtual memory, input/output interfaces, and multi-core processor systems.

Teaching Assistant – Software Engineering Courses

Teaching Assistantship, Polytechnique Montréal, Department of Computer and Software Engineering., 2021

Teaching assistant for several software engineering and computer science courses:

  • LOG1410 – Software Analysis and Design
  • LOG2400 – Software Analysis and Design
  • LOG3000 – Software Engineering Process
  • LOG3430 – Software Testing and Validation
  • LOG8371 – Software Quality Engineering
  • LOG8430 – Software Architecture and Advanced Design
  • INF3710 – Files and Databases

INF424 – Agile Methods

Graduate course, Université des Montagnes, Department of Computer Science, 2023

Instructor for the INF424 Agile Methods course. Topics include the Agile Manifesto, agile mindset, agile methodologies such as Scrum and XP, and comparisons between agile development and traditional software development processes.

INF2610 – Operating System Kernel

Undergraduate course, Polytechnique Montréal, Department of Computer and Software Engineering, 2024

Instructor for the INF2610 Operating System Kernel course. Topics include operating system structures, process management, synchronization mechanisms, scheduling algorithms, threads, deadlocks, memory management, and real-time systems. The course also explores classical synchronization problems, inter-process communication, and case studies of modern operating system architectures.

LOG3000 – Software Engineering Process

Graduate course, Polytechnique Montréal, Department of Computer and Software Engineering., 2024

Instructor for the LOG3000 Software Engineering Process course. Topics covered include the fundamentals of software engineering processes, the phases of the software lifecycle, development methodologies, requirements engineering, design, implementation, testing, configuration management, and project management.
The course also introduces methods for process representation, empirical analysis of software processes, and techniques for process improvement.