February 26-28, 2025
Montreal, Canada

Sessions

The list of presentations is subject to change without notice.
Top 20 My wish List
HTML & CSSUX & UI Le Dark Mode (mode d'affichage sombre) est aujourd'hui largement plébiscité, que ce soit sur mobile ou sur écran de bureau, mais concrètement quelles sont les meilleures techniques pour proposer des thèmes de couleur à nos visiteurs ? Dans cette présentation, nous parlerons de modes d'apparence, de couleurs système, de @prefers-color-scheme, de color-scheme, de light-dark() et de @prefers-contrast.
DevOps.NET .NET Aspire is the brand new framework from Microsoft for opinionated observability and deployment in the cloud. Come see how the pieces fit together, how to upgrade an existing site, and the benefits of OpenTelemetry. You can add as much or as little .NET Aspire to your app, and even use it only in dev.
Cloud Computing The biggest pain point of moving to the Cloud is… Nope! Not security! It is cost control!

Many organizations fail at this because they have a reactive approach (analyzing invoices at the end of the month and paying the bill) rather than a proactive one (performing predictive analysis and cost estimates continuously).

In this talk, I will show you 10 strategies. You will be surprised to know that they are not all technical.
Architecture & Design Patterns Let’s dive into the controversial side of tech trends, as not all trends benefit developers. We’ll discuss how some might be misleading despite their prevalence in the industry. Our goal here is to spark meaningful debates and challenge conventional wisdom.
JavaScriptTests & Quality Refactoring code without tests is risky. But to write tests, you often need to refactor the code first. How do you deal with that paradox?

I will show how to reduce the risk, even when missing tests. We will focus on refactorings I’ve found particularly useful when dealing with legacy codebases. You may know some names but probably don’t know the proper moves. Let me teach you how I do it.

Examples will be in TypeScript.
Architecture & Design Patterns Changeset evolution is a concept that originated in the Mercurial version control system and has slowly been adapted to git. When working and reviewing a series of commits, it can be helpful to be able to change each individual commit in the series, without adding new commits on top. This produces cleaner history and eases the burden of reviewers during the backs-and-forths of the review process. We'll look at Jujutsu and git range-diff.
DatabasesJava & JVM languages See a demonstration of how developers can quickly build microservices with Micronaut and GraalVM Native Image. Discover how combining GraalVM Native Image and Micronaut can lead to efficient, highly performant, and optimized applications targeting environments like Kubernetes or serverless platforms. Learn to access an Oracle Autonomous Database (ADB) using the Micronaut framework with Micronaut Data—and how to use Micronaut, AOT, and GraalVM
DevOps In this talk, we will discuss the most common ways software fails and some of the most unusual ways too. I will provide valuable lessons, tips, and advice so you can avoid the same mistakes, reduce the risks, or fail confidently. This talk is for anyone who has ever worked in production and/or responsible for deploying and maintaining software. If you have ever brought down production or are afraid of it, this talk talk is for you.
.NETMobile Learn how to streamline native feature interactions in cross-platform .NET applications. We'll explore how different OSes handle native user features, like iOS FaceID and Android Biometry, and how to decouple them for platform-agnostic functionality. Through a real-world example of managing Biometry APIs, you'll discover how to abstract development without compromising performance or user experience.
AccessibilityTests & Quality Accessibility is vital in web development. This session covers using Cypress and Axe Core for practical testing. Learn to set up these tools, integrate them into CI/CD, and address challenges. Through real examples, you’ll see how to detect and fix accessibility issues early. Attendees will leave with strategies to ensure their web applications meet standards and offer an inclusive user experience.
Architecture & Design PatternsUX & UI In this talk, we will be discussing strategies for integrating new design directions and design systems into existing, legacy products. We will deep dive into strategies such as defining your goals and setting a roadmap, working collaboratively with design teams, the importance of design systems, leveraging technical tools like feature flags and Storybook, and how to overcome technical debt and resistance to change.
Architecture & Design PatternsNetworks In this session, we'll dive into the complexities of error handling in event-driven architectures (EDA). We'll explore how to effectively detect and manage errors in asynchronous systems using choreographed sagas and dead-letter queues. You'll learn practical strategies to address common pitfalls, such as infinite loops and unmonitored DLQs, ensuring your system remains robust and resilient.
Tests & QualityArtificial Intelligence Integrating AI into your application transforms the traditional software development and DevOps lifecycle. Unlike standard code, LLM outputs can vary for the same input, leading to different accuracy levels. This affects both pre-deployment testing and post-deployment monitoring. To achieve and maintain quality, you will learn to apply ML/LLM Ops practices from data science within your software development and DevOps lifecycles.
Artificial IntelligencePython Learn about advanced profanity detection patterns beyond simple keyword search. My session will cover data collection and training of a profanity detection model, and it's integration with live Speech-to-Text AI technologies. We will also look at the challenges around handling live data.
Architecture & Design PatternsPHP Working with APIs? Great! Did you have to solve surprisingly similar issues in different projects? Did project complexity force you to break the established guidelines for structure, filtering, validation, or pagination? How often have your endpoints, versioning, and evolution stood the test of time? Let's talk about the real examples of solutions I implemented in various APIs. Smile at changing requirements thinking - I've got it!
PHP API Platform est un framework permettant de créer très facilement des API REST (hypermedia) et GraphQL très populaire dans l'écosystème Symfony.

Depuis sa version 4, API Platform est également compatible avec Laravel.

Simplicité d'utilisation, respect des standards, documentation d'API automatique extensibilité, support aisé de pattern comme CQRS ou du DDD tactique, API asynchrone...

Faisons un tour d'horizon du framework.
DevOpsJava & JVM languages Do you regularly spend your nights trying to make sense of cryptic error messages? In this example-driven presentation we go through more advanced topics of Observability, and dive into the toolsets available to you to instrument your JVM-based app so that it can tell you what it is doing and why. We will explore how to instrument apps without vendor lock-in using Micrometer, OpenTelemetry, Grafana, OpenZipkin, Prometheus, OpenMetrics, etc.
Architecture & Design Patterns Avez-vous déjà demandé à un architecte: Quel est la meilleure architecture? Ou Quel est la meilleure technologie (storage, hosting, framework, ...)?

Est-ce que vous avez eu la réponse classique: "Ça dépend"?

Dans cette présentation je vous présenterai les outils qui vous permettrons de prendre de bonnes *décisions* sur des *faits* pour solutionner de *réels* problèmes à l'aide de solutions *adaptées* selon les *contraintes*.
Tests & QualitySecurity Do you use JWT access tokens to secure your web API? If you are, are you absolutely certain that your API only accepts access tokens issued by your service?

In this session, I’ll expose some shocking tricks that can bypass improperly configured token validation. You’ll see how easy it can be to fool your API. But don’t worry, I’ll also walk you through how to write tests that ensure your application is protected against these exploits.
Cloud Computing.NET As developers we know what our application needs from the cloud, so we should be the ones creating the cloud infrastructure for the app. Pulumi is an IaC tool that lets you use general purpose coding languages like C#, TypeScript, and others. So in this session we'll look at how to use C# and Pulumi together for writing Infrastructure as Code to create Azure services and then deploy our apps to it.
HTML & CSSJavaScript We've strayed too far from the simplicity and power of HTML forms. It’s time to undo the damage. Once relegated to basic data collection, forms offer a surprising depth of functionality that's being rediscovered by developers and embraced by modern frameworks like Astro, Fresh, Remix, and Next.js.

Let’s rediscover the power of HTML forms and how they should be leveraged in modern web application development.
PHP In this talk I explain how to use Xdebug to get more productive writing PHP code, focussing on the improvements in Xdebug 3.2 and 3.3, and the upcoming 3.4, to make the debugging experience better and easier to set up.

Beyond that, this session also goes through a few complicated scenarios that are harder to debug, and shows solutions to these conundrums. I will also focus on the new features, such as native path mapping.
HTML & CSSJavaScript If your head has spun in the last few years trying to keep up with the latest evolutions of HTML and CSS, you’re not alone. In this talk, we'll dive into the latest HTML and CSS features that are reshaping UI development. Learn how these features are reducing our reliance on JavaScript in the 'front' of the frontend and moving some accessibility concerns, dynamic positioning, robust animations and more to the browser.
Architecture & Design Patterns Systems grow and change over time. You can have intentional design, or accidental design.

In this session we will walk through approaches that leverage product context to keep architecture aligned with the needs of the product. We will look at strategic DDD, C4 modeling, and architecture decision records.

Leave this session with simple techniques that you can apply immediately to start blending product with architecture.
MobileUX & UI Want to take your mobile app to the next level? We'll explore the small but powerful details that elevate apps from good to great. Through real-world examples and code, we'll cover animations, gestures, native APIs, seamless keyboard interactions, and frictionless authentication flows. Whether you're after quick wins or advanced techniques, this session will give you practical tips to enhance your app’s user experience.
Java & JVM languages Spring Boot 3.x and Java 21 have arrived, ushering in an exciting era for Java developers! Join me, Josh Long (@starbuxman), as we explore Spring Boot’s future with Java 21. Discover easy scaling for applications and codebases, and insights into the Spring Boot ecosystem: AI, modularity, seamless data access, and production-ready tools like Project Loom, GraalVM, and AppCDS. Dive into the latest Spring Boot advancements to build faster, scalable,
PHPUX & UI PHP is traditionally known as a server-side language. But what if you could use PHP to build desktop applications that run on Windows, Linux, and macOS?

This talk will delve into two different solutions to create true cross-platform, desktop apps with PHP. We'll explore NativePHP, a tool that allows developers to build desktop apps using PHP and Electron and show how to integrate WebView directly with PHP using FFI or a custom extension.
Artificial Intelligence In this session, we will explore the process of building single-purpose micro-agents and orchestrating them to form a versatile super agent. This approach leverages the strengths of each micro-agent, which possess their own planning, reflection, and self-critique capabilities, to collectively tackle complex tasks.
HTML & CSSUX & UI Depuis que Flash est mort, CSS et JavaScript reprennent peu à peu le flambeau des animations sur le Web.
Cependant, ces dernières années ont connu de formidables progrès et il est aujourd'hui possible de réaliser des animations CSS à la fois simples, performantes et variées (suivre des tracés, déclencher des animations lors du scroll ou de l'apparition dans la fenêtre, au changement de page, etc.) !
AccessibilityArtificial Intelligence Accessibility is more than just a checklist—it's a web fundamental. However, incorporating AI tools like GitHub Copilot into your workflow presents both new possibilities and unique challenges. In this case study, I’ll share my experience using GitHub Copilot to build accessible web components for Adobe Express. Join me to learn how to leverage AI tools like Copilot effectively, without losing sight of the critical role you play as a developer
Architecture & Design Patterns.NET Vous souvenez-vous de l'époque où les CLI étaient à la mode ? (Re)Découvrons les applications CLI et leur pertinence encore aujourd'hui.

Au menu :

• Le secret de la création d'interfaces de ligne de commande conviviales.

• Des conseils pour rendre vos applications CLI irrésistibles, même pour les fans d'interface graphique.

À la fin de cette session, vous aurez hâte d'ouvrir votre terminal et de commencer à coder !
Startup Whether you're a freelancer or managing a small agency, growing a business in the web industry can be challenging. The lull between projects often tempts many to hastily onboard any potential client that comes your way. One of the biggest mistakes that you can make is to take on just anyone as a client during these discouraging times. This session will uncover effective strategies to filter clients, boost your confidence, and charge more.
Cloud ComputingSecurity Cloud providers have shifted some security concepts out of coding into configuring cloud infrastructure. This makes cloud security an endeavor now worthier of investing time in.

While there are common secure patterns and mechanisms, some provider specifics are what can causes issues.

This session will present a selection of the most security friendly cloud architecture patterns, with highlights on quirks that hinders security.
Artificial Intelligence This talk explores AI's impact on software development, focusing on productivity enhancement. It covers AI applications like code completion, bug detection, refactoring, and test generation. Through demos and examples, attendees learn to use AI tools for various coding tasks across languages and environments. The session aims to equip developers with AI-driven strategies to boost efficiency and skills.
Artificial Intelligence AI coding promises a developer utopia, but the reality can feel like a wild west shootout. This talk ditches the hype and dives into the real-world challenges of building with AI. Discover the inner workings of popular prompt engineering techniques (Chain-of-Thought and In-Context-Learning), learn how to recover from unexpected AI behaviour, and gain the tools to wrangle the power of AI for your projects! Take a deep breath before attending.
Tests & Quality Arrr, git hooks be a mighty fine tool fer smooth sailin' through yer development seas! Ye can use 'em to check yer commit messages, keep yer code shipshape, or even set yer sails fer more complicated tasks. In this here tale, we be plunderin' the depths o' git hooks, showin' ye how to harness their power without fallin' into any troublesome traps!
PHP You've heard about PHP NTS vs ZTS, PHP-FPM and FrankenPHP, Swoole and OpenSwoole, ReactPHP and AMPHP, Fibers and ext-parallel, ... There is a lot of options beyond the usual request-response-cycle for concurrency in PHP and we gonna explore the differences of these options.
.NET Améliorer votre application en consommant des API REST peut être fastidieux. Avec de la chance, chaque API offre un SDK, ce qui conduit à un enfer de dépendances et à différents modèles de développement. S’ils n’en offrent pas, vous devez implémenter l’authentification, l’autorisation, la sérialisation et la gestion des erreurs! Rejoignez-nous pour découvrir comment vous pouvez générer votre propre client API REST grâce à OpenAPI et Kiota.
Architecture & Design PatternsPHP Server-to-server communication via HTTP requests seems simple but can be unexpectedly complex. This talk explores challenges from understanding HTTP to mapping requests to your domain and ensuring a great DX when building SDKs. Learn how to overcome these issues using SOLID object-oriented practices and tools like php-http/discovery and symfony/http-client, while addressing the infamous PSR-7 challenges in consuming HTTP APIs.
Cloud ComputingJava & JVM languages Containerization enables scalable, portable, resilient, and (cost-)effective applications. This session explores how Spring Boot developers can optimize for containerized environments:

* Best practices for building images
* Integration testing with TestContainers
* Cloud Native Buildpack support for JVM-based apps & Java native images

Come to this session to learn how to unlock the *full* potential of containers for your Spring Boot apps!
Cloud ComputingTests & Quality GitHub Actions enable developers to automate builds and deploy code. Actions are an essential building block for continuous delivery pipelines. We will examine Github’s pre-built Actions and workflow syntax. Attendees will learn how to build custom Action’s and how to avoid common pitfalls.
JavaScriptPerformance The Core Web Vitals - Largest Contentful Paint, Interaction to Next Paint, and Cumulative Layout Shift - were chosen because they are a close proxy for how good or bad a user experience is. There are some things to be aware of... Are they available on all page types, or across browsers, when do they become available, how do we capture them, etc.

In this talk we'll understand what the Core Web Vitals are and how to make use of them.
Architecture & Design Patterns.NET Découvrez comment nous avons simplifié notre architecture en passant de "Clean Code" à une approche basée sur des endpoints plus performants. Apprenez à créer des features avec MediaTr en définissant des commandes/requêtes, des réponses, des validateurs et des handlers, tout en utilisant des librairies comme FluentValidation pour un code clair et maintenable.
.NETArtificial Intelligence Unlock the power of Machine Learning by coding your own models from scratch! In this session, we’ll break down complex ML concepts into easy-to-understand steps. You'll start with a simple linear regression and move on to neural networks without relying on pre-trained models like GPT. By the end, you'll have the skills and confidence to implement Machine Learning in your projects. Join us to demystify ML and empower your ML journey!
DatabasesData Science There isn’t time to learn everything from your own mistakes. Every disaster story provides a lesson we can use to do better next time. In this interactive session, I'll share my disaster stories related to data and I want you to share your as well. Come to learn or to share! We can all commiserate over the horror stories and all leave a little wiser!
DatabasesData Science As a Data Engineer, optimizing database performance is crucial. This talk covers factors affecting query performance, including the database engine, data structures, algorithms, query optimizer, indexes, and data access methods, along with hardware innovations. You'll leave with practical insights to make informed decisions, boost performance, and minimize costs for your team’s operations.
DevOpsNetworks Consistency in deployment is key, not just between dev, test, staging and production, but across different releases as well. Containerization helps, but gets you only part of the way there. So we'll dive into tools & techniques to deploy new installations, updates and software releases in a consistent way, showing even thousands of machines can be kept up-to-date by using the right architecture and flow.
DevOpsHuman Intelligence Development has become more complex. Building and running a distributed architecture, ensuring observability, and balancing speed and quality aren’t easy. Just being agile and practicing DevOps to increase productivity doesn't really solve the problem.

Learn how great teams measure and improve the developer experience and create a healthy and joyful engineering culture. Don't focus on productivity; focus on what makes this craft fun for devs.
Tests & QualityUX & UI I am an even-tempered person. But when I use poorly designed software or painfully slow apps, I turn into a monstrous beast. Authenticate AGAIN? I can’t find ANYTHING! ANOTHER ERROR!

Users today are massively frustrated by the sites and apps. They are furious when they can’t quickly do what they want. Yes, they blame us. How do we make products that help users easily accomplish their goals? How do we rage-proof our work? I’ll show you. how.
SecurityUX & UI Most people struggle to access digital products. Basic tasks like sign-up, login, and password recovery frustrate and enrage users. People constantly fail at them. More security can make it harder for people to use our products. We must keep bad actors out, but we also want approachable products. And dev teams struggle with user experience. Teams can lessen user pain and help people get beyond the access barrier. I'll show you how to start.
Java & JVM languagesPerformance Profilers are great tools in your toolbox, like debuggers, when solving problems with your Java application. I'll tell you some of their problems and a technique to cope with them in this talk.

There are many open-source profilers for Java, but they all have problems, I'll show you which and how to deal with them in this talk.
AccessibilityHTML & CSS If you've been building websites for a while you "know" that some things require JS and that's just the way it is. Turns out, spec writers and browser makers both are working hard to find common JS patterns and implementing them in CSS and HTML. Things like accordions, auto-suggest, smooth scrolling, dialogs are all available without JS.

In this talk I walk through common patterns and explain how they can be implemented in CSS and HTML.
JavaScript Yes, you can run multiple threads in JavaScript, using worker threads! This talk will first of all explain how JavaScript feels multi-threaded, but is actually single-threaded. It will discuss in which cases this is a problem, and then delve into the main course: worker threads and how they solve the problem of multiple threads. It will also discuss how to communicate between the threads using atomics, shared memory, and other constructs.
.NETPerformance I ported the game DooM from C to C#. Having to deal with strange file types, alternative ways of (re)allocating memory, data structures being passed around as void* pointers and the likes, it's tempting to use unsafe code in C#. Turns out, that's not needed!

Let's look at how C translates to C#, and how C# adds safeguards to avoid shooting yourself in the foot. Or learn how taking on a crazy project like this can make you a better developer.
Java & JVM languagesTests & Quality Having problems creating a maintainable set of integration tests for your enterprise Java application? With the Testcontainers project, convoluted and complicated integration tests can be a thing of the past!

This talk will showcase the basics of Test containers, how to create quick integration tests for some common scenarios and will use a Jakarta EE runtime to test sample enterprise Java applications.
Artificial Intelligence This session covers how embedding models can retrieve relevant method matches more effectively than traditional search. We’ll explore real-world examples, like migrating identity providers, where we can use embeddings to identify all HTTP authorization headers across libraries. Additionally, we’ll cover how the top-k selection technique improves search speed and accuracy, by leveraging code-as-data models which use Lossless Semantic Trees.
Python Python "batteries included" comes with powerful loop constructs, but knowing how to use them correctly can be tricky. This talk introduces the itertools module, which offers functions designed to make your loops smarter rather than harder.

We'll explore a variety of itertools functions with real-world examples.

By the end of this presentation, you will have a set of itertools functions to create more efficient and powerful loops in Python.
PHPHuman Intelligence Naming is a central issue in computer science. To make code more understandable, a simple solution emerges from the collaboration of domain experts and the source code itself: a dictionary. By leveraging techniques from the linguistics of invented languages, this vocabulary becomes a foundation for constructing words, phrases, and eventually an entire literature. In essence, it entails creating a language specific to the code.
.NETPerformance Entity Framework makes data access in .NET applications as easy as defining some classes, adding a connection string, and writing some LINQ statements. Behind the simple facade, Entity Framework gives us multiple options for tuning our data access and improving performance. In this talk, you will learn how to tune EF Core for better performance and when to avoid it entirely!
JavaScript Native ESM support for Node.js was a chance for the Node.js project to release official support for enhancing the module loading experience, to enable use cases such as on the fly transpilation, module stubbing, support for loading modules from HTTP, and monitoring.

We will look at the architecture of ESM loading in Node.js, and discuss the loader API that supports enhancing it. We will also look into advanced features
Artificial IntelligenceHuman Intelligence Let's think a bit deeper and beyond the scandals with Cambridge Analytica, Facebook, VW- and see how our responsibilities go far beyond just delivering quality software adhering to requirements.

Moral implications, hard choices, ethical dilemmas with the blurred line between right and wrong - I'll share examples and try to make you think of what we can do in practice for leading an ethical professional life having a positive impact to society.
Architecture & Design PatternsPHP Let's take a deep dive in the world of event sourcing, projections and queues and see how a real world app ties these (and much more) together in a Symfony based app that links hundreds of (sometimes online, sometimes offline) computers spread over as many locations together. Not for the faint of heart !
DatabasesPerformance The optimizer is the "brain" of the database, interpreting SQL queries and determining the fastest method of execution. This talk uses the explain command to show how the optimizer interprets queries and determines optimal execution. The talk will assist developers and administrators in understanding how Postgres optimally executes their queries and what steps they can take to understand and perhaps improve its behavior.
Artificial Intelligence Learn about advanced techniques in retrieval-augmented generation (RAG) going beyond simple vector databases. LLMs need guidance! My session will cover the spectrum from chunking and vectorization to sophisticated query transformations and the integration of agents, highlighting the role of prompt engineering and fine-tuning in optimizing RAG pipelines.
DevOpsJavaScript Tired of rolling back the feature because a hotfix is coming through? Want to get away from code freezes to fit an arbitrary deadline? Feature flags allow us to release code when we're ready and then turn it on when business is ready. There's subtleties and nuance here. Join us on this journey with feature flags, talk about the options for cloud-based services vs. built-in systems, and best practices for testing and retiring feature flags.
Architecture & Design Patterns Let's dive into the fascinating world of the state machines —a powerful paradigm in software development that brings order and clarity to complex application logic.
At its core, the state machine pattern represents a systematic way of modeling an entity's behavior by defining a finite set of states, transitions between these states, and actions triggered by those transitions.
PHPGo FrankenPHP est un serveur d'application moderne pour PHP écrit en Go et intégrant le populaire serveur web Caddy.

FrankenPHP donne à PHP des superpouvoirs : mode worker, 103 Early Hints, HTTPS automatique, support de HTTP/2 et HTTP/3, compression moderne avec Brotli et Zstandard, métriques Prometheus, extensions en Go, distribution d'applications PHP sous la forme de binaires...

Découvrons comment fonctionne la bête !
Artificial Intelligence Retrieval-Augmented Generation (RAG) is a technique that helps reduce LLM hallucinations by grounding responses in external, accurate data sources. However, taking a RAG beyond PoC is not easy. In this talk you'll learn about the challenges of naive RAG implementation, and what can help you build realistic RAG. We’ll cover topics like re-ranking, metadata filtering, BM25 and hybrid search, and evaluating RAG systems beyond a “vibe check”.
Architecture & Design PatternsHTML & CSS The NCSA Mosaic browser's launch in 1993 marked the birth of the modern web, which evolved from static hypertext to dynamic content and rich web applications. This session explores key shifts in web architecture from the 1990s to today, highlighting successful strategies, missteps, and driving factors. Attendees will gain insights into historical patterns and lessons, equipping them to face future web development challenges with confidence.
Architecture & Design PatternsJavaScript When you're just starting out, often web dev classes and tutorials start with "design a schema". This one, tiny mistake may be the root cause of billions of dollars lost, time wasted, and unnecessary complexity embedded in countless applications
The problem: coding "back-to-front"
Let me show you how the simple idea of coding "front-to-back" can reduce complexity, increase security, and help keep your codebase performant and maintainable
DevOpsStartup I will present a case study on implementing low or no-cost solutions for metrics, observability, and logging. Developers will learn how to leverage open-source and cost-effective tools to maintain visibility into their systems, improve debugging, and ensure reliable performance while minimizing costs.
Architecture & Design PatternsJavaScript You may be missing out on what your type system can do for you. And I don’t mean learning TS shenanigans!

I will show you how you can use types to represent your domain in a fine-grained, self-documenting way. We will make impossible states unrepresentable. We will encode business rules without writing a single line of runtime code!

With real-world examples, let’s dig into a more functional approach to modeling your app—without any monad!
Architecture & Design PatternsPHP Everyone and their dog knows and uses object oriented programming. While OOP is very useful, we pretty often focus on getting elaborate class hierarchies, intertwined with inheritance, frameworks, DI, libraries... What if I told you, that lots of these abstractions can be simplified with... plain functions? We won't even need to talk about Functional Programming, just functions! Let's solve a problem by not having it in the first place!
Human Intelligence De nombreux professionnels se retrouvent face à un dilemme : doivent-ils approfondir leur expertise technique ou passer à des rôles de leadership ? Cette session se penche sur la manière dont les développeurs peuvent trouver du sens dans leur carrière, qu'ils aspirent à diriger des équipes ou à rester dans le technique. À travers un atelier introspectif, ils apprendront à élargir leur zone de confort et s’épanouir pleinement, sans FOMO.
StartupHuman Intelligence
In a fast-changing world, organizations risk "Technical Death" as their products age, resulting in the "Innovators Dilemma." Agile frameworks can create rigidity, leaving them stuck. This talk offers practical strategies and tools like idea funnels and microteams to balance maintenance, innovation, and customer focus, helping companies move beyond traditional agile and stay competitive.
Tests & Quality Everybody was Git Fu developing, those bugs came fast as lightning.
In fact it was a little bit frightening, but they fought with expert rebasing.
There were funky Developers from funky everywhere.
They were merging bend up, they were merging bend down.
It is a special developer art, and everybody knew their part.
For my friend, ain’t your head is detached. Then I'm guiding you to a clean state.
Want to sing along and master your Git Fu?
Architecture & Design PatternsPHP Sending notifications, synchronizing data with third-party services, or performing time / memory heavy tasks are use cases that lend themselves well for asynchronous programming. Thanks to the Symfony Messenger, you'll not only learn how to dispatch, route, serialize and process async messages ; but also learn how to monitor them, perform logging, retry failing jobs, deal with priority queues and even tests asynchronous messages in a Symfony app.
JavaScriptArtificial IntelligenceEcommerce Tired of generic chatbots? Unlock personalized AI shopping assistants with OpenAI's Function Calls API. Learn to build chatbots that tap into your product catalog, understand customer preferences, & deliver tailored recommendations, boosting engagement. From CEOs envisioning the future to developers building it, this talk empowers everyone to embrace AI-driven commerce.
Architecture & Design Patterns REST relies on specific endpoints, limiting the client to predefined queries. GraphQL, however, allows the client to choose the data it needs, simplifying the backend while empowering the client. It can even provide a unified API for multiple microservicesI. In this talk, we’ll explore what GraphQL is, how it works, and how to build GraphQL applications.
This presentation talks about the serious infrastructure cost minimization, the measurable and significant carbon-emission reductions by discussing real use cases of Greenification projects at CGI globally. It will demo examples of Green-Coding and Green IT modernizations, discuss some practical solutions and the proposals of Green Certifications for the Tech industry (similar to EnergyGuide / EnergyStar).
DevOpsSecurity Manage risks associated with your software dependencies through software supply chain security best practices and their automation across all SDLC phases. The growing ecosystem of tools such as in-toto, cosign, guac and grafeas allows us to envision a future where these threats can be addressed by organizations, regardless of their size and means.
We will demonstrate an end-to-end solution using such tools.
.NETPerformance The .NET Garbage Collector (GC) is great. It gives our applications the illusion of having unlimited memory, so we can focus on writing code instead of manually freeing up memory. But how does .NET manage that memory? What are hidden allocations? Are strings evil? What are generations? Frozen and pinned objects? HELP!!

In this talk, we’ll go over the base concepts of .NET memory management.
JavaScript If you want to write custom eslint rules, babel plugins, or other code parsers, you need to use Abstract Syntax Trees (AST). But they are generally scary for developers due to their complexity. In this talk, we will go through a real situation to parse some typescript React code using an AST and the Typescript Compiler API.
.NET Really, I don't know how to write React! I do know server-side ASP.NET Core, HTML and JavaScript. Which is all you'll need to build rich front-ends that feel like they are running client-side. Welcome, HTMX!

You can learn the basics of HTMX within a few minutes, and start using its rich collection of features to build any UI experience - usually a few HTML attributes are enough. In this session, we'll look at how you can get started with both.
PHP My PHP journey started with frustration and doubt. From outdated hosts to clunky frameworks, I questioned my skills. But with Composer, Symfony, and PHP's evolution over the last 15 years, I've overcome these challenges and now proudly embrace PHP as a powerful tool. As PHP got better, I did too: PHP 8 is great, the ecosystem is healthy, no reason to be ashamed anymore :)
Security Un grand modèle de langage (en abrégé LLM) est un type de programme d'intelligence artificielle (IA) capable de reconnaître et de générer du texte. Avec le succès des grands modèles de langage et une utilisation de plus en plus importante, l’année 2024 a déjà montré bien des faiblesses en matière de sécurité.
Cette session aura pour but de vous aider à comprendre les endroits à protéger, classés en TOP 10. La sécurité de ces IA va vous concerner
Artificial IntelligencePython Comment utiliser l'IA générative sans tomber dans ses pièges ? Ce talk explore son rôle dans la production cinématographique, télévisuelle et marketing, en mettant en lumière réussites et échecs. Nous verrons comment elle peut aider à analyser des documents, valider des informations et automatiser des processus, tout en gardant le contrôle. Au-delà des solutions off the shelf, des exemples concrets montreront comment en tirer le meilleur parti.
JavaScriptTests & Quality Early defect detection is essential for quality software. This session explores shift-left in testing with Cypress component testing. I’ll show how component-level testing reduces the need for extensive E2E tests, saving time and resources. Attendees will learn to set up Cypress for component testing, overcome challenges, and realize benefits like increased test stability and faster execution times, including integration into CI/CD pipelines.
Architecture & Design PatternsMobile React-Native, Flutter, .NET, how do they work behind the scenes? Uncover the core fundamentals and architectures that enable these tools to turn multi-platform code into native iOS and Android apps. Learn the key questions to answer when selecting the right framework for your next project.
Architecture & Design Patterns OpenTelemetry (OTel) is a vendor-neutral, open standard for observing distributed applications. With OTel, you can trace individual requests and view specific metrics about the system's current state. It's like a superset of traditional logging and can be used with or instead of log statements. In this session, we'll review the basics of OpenTelemetry, discuss why you should consider using it, and see a demo of using it across backend services.
AccessibilityHTML & CSS The web is now more dynamic than ever, with visual cues and notifications serving as crucial tools for communicating updates and content changes. Yet, making these notifications accessible poses a nightmarish set of challenges. We’ll explore the rules and recommended methods for incorporating live regions to create inclusive experiences. Ultimately, we’ll find ways to replace live regions all together with more persistent and robust UI patterns.
DatabasesJavaScript Did you know you can use JavaScript to create stored functions and stored procedures in MySQL? Join me in this session where we will discuss the benefits of using JavaScript to create stored functions and procedures, give a high-altitude overview of how JavaScript is converted to a language MySQL can understand, demonstrate multiple examples, and show some debugging techniques.
Architecture & Design PatternsCloud Computing HashiCorp's Packer is a versatile, extensible tool that is great for generating machine images for multiple cloud providers from a single source package. I will demonstrate how easy it can be, with some minor configuration per provider, to centrally manage a single source of truth and maintain nearly identical machine images across different providers, with particular emphasis on AWS and Digital Ocean
JavaScript JavaScript has a new primitive for reactive programming: Signals. Almost all the major frameworks have adopted them and there is even a TC39 proposal to add signals directly into the language. But what do they do?

In this talk we will dig deep into the (imho) poorly named Signal, discuss how they are used in modern programming, demystify them by implementing our own in JS, and address the current status of the ECMAScript Signals proposal.
.NET Have you ever wondered how a compiler works? Well, no more! In this session we will explore how a compiler works: which steps are invoked in which order and what are the intermediate results? We will also explore how we can use these results for other use cases like an interpreter, code analysis or other tools.

If you are ready to completely geek out over how one of the tools you use every day works, come join Henry and find out!
PHPTests & Quality Keeping good code quality is always a challenge (even harder if you share your work with the world). It becomes crucial for every project maintainer to define and execute technical quality standards, to make not only their, but all the project's users' lives easier. Based on my experience in maintaining Sylius, I will present a variety of techniques to ensure good DX in your project (from testing to low-level technical requirements)
Java & JVM languages Dans un monde JVM back-end pleinement dominé par Spring, on voit depuis quelques années apparaître de nouveaux venus qui tentent d’apporter des visions différentes sur les frameworks web. A travers une courte session de live-coding, je vous emmène découvrir Ktor & la librairie Exposed, des solutions 100% Kotlin proposées par Jetbrains pour construire un micro-service simple et performant pour attraper tout plein de pokémons.
PerformanceUX & UI Quel que soit le développement et le résultat souhaité, l’équipe doit pouvoir finaliser son code sur le périphérique final. Celui-ci peut être un navigateur, un téléphone, une tablette, etc. À travers des démonstrations, nous verrons les ressources disponibles et faciles d’utilisation pour modifier et déboguer les différents langages du back office et front office pour ne pas avoir un rendu cassé lors de la livraison.
StartupHuman Intelligence In this talk, we will be discussing how to lead your engineering team(s) to be as high performing as possible. We will be looking at studies that explore the proven characteristics of highly effective teams such as psychological safety, dependability, structure and clarity, and the behaviours of their managers to enable high performance, such as fostering a culture of team empowerment, open communication / collaboration and constant improvement.
DevOpsHuman Intelligence Tests, monitoring, these help us assert the known knowns of our systems. But what about the known unknowns? Or, especially in complex distributed systems, the unknown unknowns? What can we learn from the space program? What can we learn from the Apollo 11 landing? How can we prepare for the unknown and build our adaptive capacity?
DatabasesDevOps In IT, efficiency is everything.

How did a single team at OVHCloud reduce its critical databases infrastructure size from 390 machines to just 27 by still dealing with the same amount of databases?

In this talk, you’ll learn the importance of efficient database design and how you can increase performance and decrease workload to ensure your information system is ready to scale with your business.
.NETMobile In this session we will be using the open-source Uno Platform to help us quickly get a full-fledged application up and running for Windows, Android, iOS, WebAssembly, macOS, and Linux.

We will go from design mockups all the way to a finished app!
JavaScriptArtificial Intelligence GitHub Copilot is everywhere. It’s on GitHub.com, in Visual Studio, Visual Studio Code, GitHub Codespaces and more. Did you know you can extend Copilot?

In this hands on talk, you’ll learn:
- the architecture of a Copilot extension
- how to leverage the Copilot extension preview SDK to build GitHub Copilot extensions
- how to build out your first Copilot extension

We’ll wrap things up by taking a peek at a real world example.
Tests & QualityPython ??Debuggers are indispensable tools for all Python developers, empowering them to conquer bugs and unravel complex systems. But have you ever wondered how they work? Curious about the implementation of features like conditional breakpoints and single stepping?

Join me for a talk in which we create our own debugger with conditional breakpoints, single stepping, and a Python-based debugging shell and learn a lot about debuggers along the way.
JavaScript Meta's wildly popular single-page application framework React is only increasing the major version number when there is really something new. It’s time: React 19 is there, and it comes with several new features, such as server components and new hooks. However, the new release is also breaking backwards compatibility in a few places, deprecating APIs. This session will guide you through the major new possibilities of React 19, demos included.
Cloud ComputingInternet of Things Have you ever ingested data from thousands of IoT devices? Join this session to learn about Azure Data Explorer. We'll start by exploring how a previous solution used hourly, daily, weekly and monthly batch-processing runs to create pre-aggregated datasets and all of the problems this solution brought. From there we'll follow the evolution of the platform, ending at a solution that uses ADX: less code, faster, cheaper and more performant!
DatabasesJavaScript In this talk, you’ll learn what the difference is between Local-first and Offline-first and why you may want to choose local-first instead of the traditional web development model. We'll dig into how WebAssembly can help as we create a simple web application that uses Postgres in the browser via PGLite. For the data sync with the server, we'll use ElectricSQL.
SecurityDocumentation La loi 25 est une législation adoptée au Québec en 2021 pour renforcer la protection des informations personnelles des utilisateurs. Elle force les entreprises à demeurer claires et transparentes sur la pratique de collection, utilisation et protections de ces données.

Est-ce que votre entreprise ou votre site web est conforme??
DevOpsPerformance cGroups on their own are a complicated thing, but throw in there systemd and they become even harder. Now add to that, that there are 2 different ways to setup cgroup hierarchy and 2 versions of cgroups and the whole thing becomes almost impossible to understand.

Marian will try to guide you in this journey of properly setting up cGroups, when using SystemD
DevOpsArtificial Intelligence Dans cette session, nous allons explorer comment mettre en place un pipeline CI/CD complet qui automatise le testing de bout en bout, le packaging et le versionnage des modèles, garantissant ainsi une transition fluide de la phase de développement à la production tout en maintenant un haut niveau de contrôle et de qualité.
PHP At some point of your career you'll probably end up working on a majorly outdated version of a framework and prehistoric version of PHP. What happens when you're finally given the go-ahead to upgrade?

This talks tells the story of a major upgrade I worked on. I'll share the tools used, things that went well and the lessons learnt.

The talk will leave you with practical advice for planning and executing a major upgrade.
JavaScriptSecurity Explore how vlt, the next-gen JavaScript package manager built by the former npm team, tackles modern supply chain security threats. With features like a GUI for dependency graph visualization and the innovative Dependency Selector Syntax (DSS), vlt is designed to empower developers. Learn how deep insights from npm’s ecosystem, including security flaws like “manifest confusion,” influenced the creation of a safer, smarter package manager.
DatabasesInternet of Things Did you know you can run MySQL on a Raspberry Pi and replicate the data to the cloud?

In this session, we will cover how to install MySQL on a Raspberry Pi, give a brief overview of how to store data on this MySQL instance, demonstrate an application that can visualize that data, and finally, how you can replicate that data to a MySQL instance running in the cloud.
Databases Do you store data in a MySQL or PostgreSQL database in JSON? One of the more amazing functions is JSON_TABLE(), which temporarily lets you transform that data from JSON into a relational table for processing with SQL (Aggragates, CTE, Windowing Functions, comparators). Great news, eh? Well, the bad news is that the documentation is not exactly helpful, and there are more than a few tricks to make life easier that you will see in this session.
PerformancePHP You’ve likely used lazy objects in your projects through Doctrine or Symfony without realizing it. Though technically complex, lazy loading is essential for building non-trivial applications. In this talk, we'll dive into the low-level mechanisms that delay object initialization until necessary. The goal isn't daily use but to explore both practical and theoretical aspects for the day when this knowledge becomes essential.
Java & JVM languagesPerformance Netty is an open source Java networking framework that enables developers to build high performance systems. Netty is a key building block for open source projects like Netflix Zuul, Apache Pinot, and Micronaut. In this presentation, we will examine how Netty is being used in the real world. We will discuss Netty’s core capabilities and how to apply them. And finally, we will learn how to avoid common pitfalls when working with Netty and Java.
JavaScript Learn about new features and key initiatives in the latest versions of Node.js, and discover the direction of the Node.js project with a focus on the Next-10 team's work. Gain practical knowledge on how to leverage new technology within Node.js and find out how you can get involved and make an impact. This talk will provide a comprehensive update on all aspects of Node.js.
JavaScriptInternet of Things As IoT devices evolve into devices capable of advanced processing at the network edge, using Node.js in these systems makes more and more sense. I'll share a typical journey starting with manual installation of Node.js applications on edge devices to automated deployment using cluster management tools. Along the way I’ll share my gas station edge device built with Node.js, Next.js and a Raspberry PI 4.
Cloud ComputingJava & JVM languages Kubernetes won the containers orchestration war. But has it made deploying your apps easier?
Let's explore some of Kubernetes extensive app developer tooling, but mainly what the PaaS space looks like in 2025; 18 years after Heroku made it popular.
Is Heroku still around? What about Cloud Foundry?
And what are those new comers (fly.io, railway, porter.sh, etc.) worth?
Did the Cloud giants replace them all?
SecurityArtificial Intelligence There's a deluge of new AI Agents coming online, especially in the realm of customer support. LLMs are powerful, but they are non-deterministic. How do ensure that they are trustworthy, especially as they get plugged into APIs?

I'll dismantle the myth that AI agents replace human agents, and I'll discuss the principle of end user in control in bot design. I'll also talk about a new standard proposed by the IETF that will solve this problem.
Architecture & Design PatternsPython 20 years ago, the Python community was rightly proud of clear, transparent, obvious code. With growth of the language and the community, we have forgotten the importance of this. I'll discuss some of the technologies that make it too easy to write unclear, obfuscated Python code shrouded in implicit dependencies: decorators, active records, metaclasses, and more. And I will discuss ways back to the true path: how can we make our code clear again?
Architecture & Design PatternsUX & UI Ready to master multi-tenant magic? Discover how to customize UIs for different tenants without duplicating your backend. Learn the secrets of DNS, NGINX, and templating sorcery, and become the hero of your web app saga. Keep your backend lean, your tenants happy, and your skills legendary!
Human Intelligence Embark on an insightful adventure through Middle Earth to uncover leadership treasures hidden within its epic landscapes. This journey draws from Tolkien’s timeless tales, offering a fresh lens on navigating the challenges and opportunities of leadership in our professional quests. Discover how the virtues of courage, resilience, and unity can light our paths, inspire growth, and transform us into the leaders we aspire to be.
Architecture & Design PatternsHuman Intelligence Un système informatique est un gros casse-tête dont l'image change tout le temps. Votre boulot en tant qu'architecte est de vous assurez que les bonnes pièces sont faciles à bouger. Le système doit survivre à l'épreuve du temps est s'opérer à un coût raisonnable. Comment y arriver? En dessinant des rectangles et des flèches sur une diapositive pour s'en assurer. Non. Mais ça ne veut pas dire que je n’en fais jamais.
Security Penetration tests are a critical step in securing web services, but often much of their effort is wasted reporting simple things that can easily be fixed in advance. We will look at common security issues that are found in pentests at all levels in the deployment stack, concentrating on those that can be resolved quickly and easily in one place (in any language), and show how to fix them, freeing up expensive pentester resources.
Java & JVM languages Les CLI (Command Line Interface), tout le monde les utilise et elles existent depuis la nuit des temps.

Je vous propose d'utiliser un langage qui ne paraît pas, au premier abord, le plus intuitif pour faire une CLI : Java !

Venez m'accompagner lors d'une session de live coding permettant de mettre en lumière comment créer une CLI en Java avec Picocli et Quarkus en partant de zéro !
DatabasesArtificial Intelligence Since the creation of my presentation, Postgres and the Artificial Intelligence Landscape, artificial intelligence use has exploded, with much anticipation about its future. This talk explores many of the advances that has fueled this explosion, including multi-dimensional vectors, text embeddings, semantic/vector search, transformers, generative AI, and Retrieval-Augmented Generation (rag). It then covers how databases and how the valuable data
Architecture & Design PatternsDocumentationStartup “How much will it cost?” they asked before providing any specifications.

The truth is that businesses today still need cost estimates, they need plans and they sure as hell want to see what you’re capable of before hiring you and your team to build their next project.

In this talk we’ll discuss the pre-development phase: strategies for getting requirements, planning, designing, proposing and winning project bids.
PerformancePHP The 1brc is "a fun exploration of how quickly 1B rows from a text file can be aggregated with Java", but let's face it, we should be able to do this in PHP too, right? Let's see how fast we can actually aggregate 1 billion rows in PHP and learn about optimising the performance of PHP software along the way.
Tests & QualityPython Python has come a long way thanks to MyPy. In this topic you will learn how to adapt any Python code to My - so it becomes reliable and helps you identify intrinsic issues - many of which you had no idea you were ignoring all along. This talk is based on the experience of converting Snyk's Deepcode Python code base from zero to 100% MyPy safety.
Artificial IntelligencePython L’apprentissage par renforcement (Reinforcement Learning) est une approche de l'intelligence artificielle dans laquelle un agent apprend à prendre des décisions dans un environnement afin de maximiser une récompense cumulée. Le sujet aborderait les principes de base de cette approche, en s'appuyant sur des exemples pratiques avec Python et la librairie OpenAI Gym. Cette dernière offre une plateforme pour développer et tester des algo de RL
Architecture & Design PatternsTests & Quality Discover the pillars that form the foundation of a solid quality strategy: from code reviews to automated testing, from ideation to delivery, not forgetting the debates between purists and pragmatists. We’ll explore how to balance theory with the chaotic reality of development, and how to structure a quality approach that doesn’t just check boxes but propels your applications toward excellence.
PerformanceSecurity The ways that we can deliver HTTP has improved in occasional leaps, from 1.0, 1.1, a big step to 2.0, and now 3.0. A big obstacle has been TCP, which isn't great for HTTP, but we are stuck with it – or are we? QUIC is a reimagining of TCP that runs over "the other protocol", UDP, and integrates HTTP/3 and TLS 1.3, giving us a step up in performance and security. Discover how it works, how to set up your servers and apps, and deploy it today.
Artificial IntelligencePython RAG integrates external knowledge sources to improve performance by retrieving relevant documents during inference, making it ideal for tasks that require dynamic, up-to-date information. In contrast, Fine-tuning adapts pre-trained models to specific tasks through supervised learning, optimizing performance within static, well-defined domains. We analyze the trade-offs in terms of data requirements, deployment flexibility, cost, and use cases.
Architecture & Design PatternsJavaScript Microservices are widely discussed, but what does a successful implementation look like? Sander Hoogendoorn shares his experience from leading iBOOD's transition to a clean microservices architecture.

In this talk, he covers key architectural decisions, patterns, and the creation of the open-source framework Easy.ts, offering practical insights and real-life examples to help others navigate their own tech transformations.
Artificial IntelligenceHuman Intelligence By 2028, 75% of enterprise software engineers will use AI code assistants, transforming coding and agile development. Agile, created over 20 years ago, faces new challenges in the AI era. Do we need sprints when AI prioritizes tasks in real-time? What about cross-functional teams with virtual specialists available? Explore developers' evolving roles and the need to rethink collaboration strategies as AI becomes our coding partner.
Artificial IntelligencePython Have you ever encountered code having so many conditions and processing scenarios that it was impossible to maintain and extend t?
What about replacing it with a self-improving automatically generated algorithm?
With the rise of ML algorithms, artificial neural networks and LLMs, programming complex business rules and classification services can be successfully replaced with ML-based solutions. Let's see how to do it in your project!
Architecture & Design PatternsCloud Computing What is "Resiliency" and why do we need to account for it when building software? In this talk we will discuss some of the considerations and tradeoffs to make when designing resilient applications and how to make sure that our systems are available for our customers.
PHPArtificial Intelligence In this presentation, you will see a case study illustrating the process of building an application based on RAG (Retrieval Augmented Generation) in PHP using a large text model (LLM) to efficiently find precise answers in a database of unstructured text data. I will also show how to use LLM in PHP on a local server and how to approach testing the generated results.
DevOpsSecurity The development of mobile applications needs to be agile, but it also needs to be secure. In this talk we’ll look at how to make application security scanning a part of the continuous delivery process to ensure your users will receive a secure product without compromising the delivery deadlines.
Java & JVM languagesSecurity Join me in this talk where I will showcase how you can rely on Keycloack (open-source identity management solution) and the Eclipse MicroProfile API to simplify the security aspects of your applications by doing a live demonstration of securing enterprise Java Microservices under 40 minutes!

See a live demonstration of a small application that uses the Eclipse MicroProfile APIs to correctly integrate it with Keycloak with OpenIDConnect
JavaScriptSecurity Reproducibility is key to securing the JavaScript package ecosystem. In this talk, discover how `reproduce` will help you to verify a library’s build steps against it's published package counterpart, offering a practical alternative to theoretical SBOM & crypto-provenance security efforts. Learn then how reproducibility democratizes the verification & linking of source to artifacts, enhancing transparency & trust between disparate origins.
DevOpsJavaScript CDKTF is one of Terraform's best-kept secrets. CDKTF by Hashicorp allows you to write infrastructure code using programming languages like Typescript and Go while still leveraging the power and the community of Terraform. We'll look at

* Primitives of CDKTF (Stacks and Constructs)
* Reuse Terraform modules in CDKTF
* Common gotchas on translating HCL to Typescript
* Understanding CDK synthesis workflows.
* Setup a multi-stack CDKTF project
DevOpsSecurity We keep hearing the mantra to shift left, to turn our developers into security experts, to reduce and eliminate vulnerabilities. Given the prevalence of old flaws being checked into new codebases, this approach clearly isn't working the way we want. What went wrong? Was the idea flawed? Let's talk about where we are, how we got here, and how we can shift left the right way.
AccessibilityDevOps A holistic approach to ensuring accessibility is part of your product’s lifecycle and delivery is the right choice.

Learn about what you can do in your role to move accessibility left in the software development lifecycle.
JavaScriptArtificial Intelligence GenAI is transforming the app landscape, but you don't need a PhD in AI to benefit! This talk goes beyond theory, revealing practical, "sneaky" ways to integrate GenAI into your existing projects. Learn to automate mundane tasks, personalize user experiences, and boost efficiency without disrupting your workflow. Real-world examples & engaging demos will inspire you to unlock the power of GenAI today!
Security But if C++ is unsafe and C/C++ are the foundation for everything else, then are we doomed? Maybe! But we do not have to be. Also C/C++ is memory safe today - if you want it to be - or do you believe in Santa Clause? In this talk I will analyze where we actually stand and whether anything beyond Rust can survive. That is I will deep dive into failure modes of the industry in general, rather than calling on a specific boogeyman.
Java & JVM languagesTests & Quality Frustrated by slow Spring Boot tests, or skipping integration tests because they're too slow? They don’t have to be! I’ll share recipes that make integration tests nearly as fast as unit tests. We’ll explore how to balance performance and reliability when testing HTTP clients, JSON serialization, transactions, messaging, and more, so you can speed up your tests without sacrificing accuracy. Don’t miss this session packed with practical solutions!
Java & JVM languages Does Spring sometimes feel like magic to you? It doesn’t have to. In this presentation, I'll demystify the workings of the Spring Framework through real-world examples. We'll see key elements such as the BeanFactory, the Bean Lifecycle, the ApplicationContext, BeanPostProcessors, and proxying. By the end of this session, you'll have a solid understanding of Spring’s core components and be able to confidently troubleshoot issues when they happen.
Java & JVM languagesArtificial Intelligence This presentation introduces AI basics for beginners, covering fundamental concepts and potential impacts. It then focuses on Spring AI, a tool simplifying AI integration in applications. The talk covers Spring AI setup, integration with Spring Boot, and implementation of common AI tasks like chatbots and sentiment analysis. Attendees will gain understanding of AI fundamentals and practical skills for incorporating AI into Spring applications.
Tests & QualityPython Mock objects are a great trick for testing code that cannot be tested any other way. Unfortunately, a lot of developers have interpreted that to mean that mock objects should be used for testing any and all code. This leads to tests that are not very thorough, tightly coupled to the code under test, hard to understand, and hard to modify. I'll discuss some techniques that help you write better tests -- most importantly, fakes and stubs.
Human Intelligence Ever feel like process changes or change initiatives aren't quite getting the results you had hoped for? Turns out that there is much more to how a team or organization delivers products than isolated optimizations can help with.

Enter the world of Systems Thinking.

Come and learn what Systems Thinking is and why it is important to software.
.NETInternet of Things Did you know you could build IoT solutions with .NET? We'll explore how the .NET ecosystem allows you to create custom applications for popular boards. Through an open-source framework, we’ll break down the layers that connect your IoT devices to cloud solutions like Azure IoT Hub, demonstrating how .NET can power smart, scalable IoT development.
Architecture & Design PatternsHuman Intelligence KEYNOTE PROPOSAL

Developers strive to learn from personal experience, community knowledge, & current "best practices". Sometimes it all works, sometimes it doesn't. Today's hotness can become tomorrow's technical debt. But don't we look great!

The presenter examines past technology choices that went the way of crocheted vests & parachute pants. Also up for discussion are current tech offerings that show signs of moving to the bargain bin.
Tests & QualityArtificial Intelligence In this emerging AI era, delivering AI-based applications no longer requires data scientists. This shifts responsibility for AI output quality to QA and software engineers. Traditional tools and methods, however, are inadequate for measuring quality in these applications. Learn how to apply data science best practices to develop and maintain high-quality AI solutions.
JavaScriptTests & Quality I will show how the two most popular modern web application testing tools, Cypress and Playwright, approach the same problem differently. We will see how to write end-to-end, API, and component tests using both tools and how to execute them on a continuous integration system. Instead of declaring a winner, we will see the advantages of each test runner.
Phoenix LiveView est un framework qui a complètement révolutionné le développement web "Server-Side Rendered". Grâce à ses pages connectées, il est maintenant facile de créer des applications web riches, interactives et temps réel sans s'embourber de technologies complexes. Joignez-vous à moi pour une séance de "live coding" pendant laquelle je vous montrerai comment ce framework élégant a su conquérir le coeur de toute une communauté.
Tests & Quality Let’s explore the fine line between human interaction and code through the delicate exercise of code review. This mystical art involves telling a colleague that something could have been done better or that a variable isn't well-named. This talk will guide you on how to conduct effective code reviews, provide constructive feedback, and enhance code quality while fostering collaboration and empathy within the team.
Building your CLI toolkit is like crafting your own lightsaber—a deeply personal, powerful, and highly rewarding journey to wield the Force of the terminal. Let me guide you through the art of designing a "Jedi-grade" toolset, from selecting the right components to mastering advanced techniques.

Whether you’re a Padawan or a seasoned Jedi Master, this talk will help you unlock the full power of the CLI. May the terminal be with you!
.NETArtificial Intelligence RAG is transforming information retrieval by integrating the pre-training of LLMs with your data, leading to novel insights and real opportunities for application features. This session aims to equip you with the knowledge to effectively implement RAG within your line-of-business apps. We'll focus on C# code samples, utilizing the Microsoft OpenAI Client to demonstrate building applications that will delight your users.
Architecture & Design PatternsDocumentation A picture is worth a thousand words, they say - but unfortunately it is not always the case. If done right, diagrams are a treasure - but we've all seen and suffered from spaghetti diagrams and ones bringing confusion rather than clarity and added value.

Let's see what makes a diagram effective, what are the techniques and principles for creating good diagrams - and how everyone can get better at using this powerful communication tool.
Human Intelligence Complexity is all around us. We are, we are part of, and we build dynamic complex systems.And yet we have trouble grasping it! In this talk we'll dive into the intricacies of complexity. Join me to explore its formal definition, concepts like reversibility and reductionism, and the profound effects of non-linearity. We'll delve into the human and organizational perspective on complexity, and how changes and incidents are shaped by it.
JavaScript Imagine the convenience of executing TypeScript files directly with Node.js using `node file.ts`. Just a few years ago, this concept seemed like a distant dream. Today, it stands as an exciting experimental feature. This narrative dives into the journey of transforming this dream into a reality.
JavaScriptArtificial Intelligence Need the power of AI without compromising data privacy? Gemini Nano delivers! This compact, multi-modal AI model runs entirely offline – on your device or in the browser – enabling secure and private AI applications. Analyse sensitive financial data, process medical images, or transcribe confidential audio notes without sending data to the cloud. Build powerful Applications using Gemini Nano while staying off the network!
PerformanceData Science If you collect any kind of real-time data, you're probably interested getting alerted when this data goes out of whack, but setting static thresholds has the downside of having a lot of false positives. Using Anomaly Detection can help determine normal patterns and alert you when those go out of whack.
In this talk we'll look at some of the methods of detecting anomalies in your data.
PHP Version migration includes adding features, backward incompatibilities, and changed behaviors. These changes might initially be silent and go unnoticed, but slowly affect edge cases. They are numerous, varied and permanant. In this session, we'll review overlooked PHP 8 changes : how they are announced, how they appear in the code, and how we still get surprised by them when they manifest. We’ll also cover how to deal with them.
Java & JVM languages Beaucoup d'eau a coulé sous les ponts depuis Java 17. Et beaucoup de nouvelles fonctionnalités ont été ajoutées à Java 21, la dernière LTS. Nous allons programmer en direct à travers celles que vous devriez Indéniablement connaître.
Cloud ComputingPerformance Me croiriez-vous si je vous disais que votre gérant d’épicerie peut vous aider à gérer vos serveurs web ? Avec leur expérience des longues files aux heures de pointe, les supermarchés ont perfectionné l'art de gérer les flux de clients pour maximiser la satisfaction. Comprendre comment appliquer cette théorie, la loi de Little, à vos configurations d'autoscaling pour viser un bon niveau de service tout en maîtrisant vos coûts d’infrastructure.
DevOpsArtificial Intelligence Discover automated code remediation with the OpenRewrite refactoring engine, a deterministic, rule-based system. By manipulating the Lossless Semantic Tree (LST) representation of code, OpenRewrite ensures accurate, style-preserving transformations. We’ll demonstrate how AI enhances this process by performing impact analysis, searching through codebases, and assisting in refactoring, ultimately providing a scalable solution for modernization.
Java & JVM languages In the realm of Java programming, understanding memory management and garbage collection mechanisms cannot only be helpful for optimizing performance and resource utilization but also in general will help you to use the right garbage collector for your application. This session will be about memory allocation, object lifecycle, and garbage collection strategies within the Java Virtual Machine (JVM). Attendees will gain insights into memory alloca
HTML & CSS Have you ever felt perplexed by CSS, struggling to understand why the browser put the element where it did, and why it didn’t just follow the clear instructions you wrote? Do you think CSS is hard to work with?

By getting a better understanding of the concepts that underlie the language, you’ll learn to “see the matrix”. There’s normal flow, stacking context, offset parents… What are these things and how do they impact your design?
Cloud ComputingDevOps If you have ever experienced OOM(Out-of-Memory) situation you know that it is now a nice place to be.

This talk will walk you trough the basics of how the Linux OOM Killer works. How you can control it and what actually caused OOM on a linux machine.

You will see real world examples and also what preventative measures can be taken.
PHP Is a tool like PHPStan or Psalm part of your development process? If so, are you getting the most out of it?

This talk will look at how we can write our code in such a way as to get the most out of static analysis. We’ll look at some of the tools and extensions that plug into PHPStan to take the analysis to the next level.

Finally, we’ll see how static analysis allows us to refactor safely.
Security Threat modeling is an unpopular process among security professionals and developers as it usually requires manual drawing of systems diagrams and can be perceived as abstract since it only identifies potential risks. In this presentation, a more tactical approach to threat modeling will be presented. You will learn how threat modeling can orient security tests based on potential threats and how automation can ease the analysis of complex systems.
Human Intelligence One of the biggest challenges developers face is an ever-changing landscape. In the time it took for you to read this abstract 3 brand new frameworks will be launched. It can be daunting and cause of stress. Fortunately, learning new tech is a skill which can be learned. We'll walk through strategies which will allow you to quickly assimilate new tech.
HTML & CSSJavaScript Many web developers choose features based on if they're supported in all major browsers for maximum reach. What if you didn't need to wait for support from all browsers? In this session, we'll explore the idea of using WebAssembly as a polyfill for the browsers that don't yet have the desired feature. As an example, we'll create a Web Component that uses WebAssembly to convert an image to a different type, on the fly, if needed.
Artificial Intelligence Et si nous pouvions utiliser les LLM aussi simplement que n'importe quelle librairie de notre stack de développement préférée ?

Je vous propose de découvrir qu'il est désormais possible, simplement, d'intégrer les LLM au sein de vos applications.

Nous passerons par toutes les étapes afin que vous puissiez comprendre quelle approche vous convient le mieux.
Customiser un prompt, rajouter vos données, mettre des filtres, ...
Databases Valkey is less than a year old but has come as a strong replacement for Redis (they changed to a non-open source license). Valkey is an open-source in-memory storage, used as a distributed, in-memory key–value database, cache and message broker, with optional durability. Valkey is memory-based, and because of its design, Valkey offers low-latency reads and writes, making it particularly suitable for use cases that require a cache.
Databases This talk explores the evolving landscape of vector search in databases, a significant shift in data retrieval. Once limited to specialized systems, vector search is now being integrated into mainstream databases like PostgreSQL, MySQL, and Elasticsearch. We'll cover vectors, embeddings, indexing strategies, hybrid search approaches, and performance metrics, offering insights into vector search impact on data retrieval and AI apps.
Artificial IntelligenceData Science This talk will explore the cutting-edge advancements in computer vision as we enter 2025. We’ll delve into the role of multimodal large language models (LLMs) and their integration with visual data to enhance understanding and interaction. We’ll examine state-of-the-art object detection techniques like RT-DET and foundational models like SAM2, and explain the concept of grounding. Participants will gain insights into the latest trends.
Tests & QualitySecurity Discover how CodeQL, a powerful static analysis engine, can scan your codebase for vulnerabilities. Learn how to integrate CodeQL into your CI pipeline for automated security checks. We'll compare CodeQL to Semgrep and LLM-based engines, highlighting strengths and weaknesses. Get hands-on experience with CodeQL and take away best practices for implementing it in your development workflow. Improve your code security and reduce risk with CodeQL.
Java & JVM languages Attention: If you love to maintain legacy code than this session is not for you.
You probably know the hassle of maintaining code that was written long time before you entered the project or company. Often the developers who wrote it are not even in the company anymore. So how do you know if the code is still used? This session will give you an idea about what you can do to get rid of dead code.
Imagine being able to create extensible software allowing plugins to be written in nearly any language to execute arbitratry, untrusted code in a safe way. This is now possible thanks to Wasm and the Extism project.

In this talk, we'll write a Wasm plugin with Extism in Javacript, Rust and Go and demonstrate how to effortlessly integrate it into an application written in JavaScript, Python, PHP, Go, Ruby, ... in just a few lines of code!
PHPEcommerce Sylius 2.0 is already with us! This e-commerce framework based on Symfony has already been on the market for a while, and recently it reached a huge new milestone. As a long-time Core Team member, I will present the biggest changes and opportunities this new release brings, for both PHP and Symfony developers interested in E-commerce.
.NET On November 12, 2024 .NET 9 was released. As a part of this new version with 1.5 years of support, the web frameworks ASP.NET Core and Blazor were updated. This session will showcase the major new features that were added, including many live demos. Especially when currently using .NET 8, an upgrade to .NET 9 is optional due to the shorter support window, so you should know whether the new possibilities are worth the migration.
PHP During this presentation, we are going to look at the new features that are going to be introduced in PHP 8.4. Join me to have a look at Property Hooks, Asynchronous Visibility, Improved HTML5 parsing, and many other features.

At the end you will have a good understanding about all the new and exciting features that are part of the PHP 8.4 release
.NET Among the challenges developers face are naming things, cache invalidation, and off-by-one errors. But the one we never talk about is date logic! Date logic is full of fallacies and challenges that we as developers often hand-wave away, only to be bitten later! In this talk, we will explore and explain some of the common fallacies and challenges, such as daylight savings, non-standard timezones, and the challenge of presenting back to the user.
JavaScript We've all got Javascript fatigue. There are new libraries, frameworks, meta-frameworks and even runtimes. Against this backdrop of constant churn is the unlikely hero we all need - HTMX. At the outset, this library looks like a practical joke. But HTMX is a well-thought-out library. We'll understand the basics such as triggers, targets, swaps and indicators. We'll even build highly interactive applications using animations and Server-Sent Events.
Tests & QualityArtificial Intelligence I want to show you the secret weapon I have used for the past year. The GitHub Copilot lets me write full tests quickly, fills the gaps in my knowledge of 3rd party tools, and even writes clear descriptive commit messages. But it is not a "press the button to do it all". You need to guide the AI to do the right thing, which takes experience, but most importantly, you need to decide _what_ you want the AI to do, step by step. Remember: AI is
.NETMobile XAML is great for WinUI-based cross-platform apps… but it’s so hard to debug. In this talk, we’ll look at how to walk around these difficulties by leveraging C# for Markup, and how to use it to translate complex XAML into easily debuggable C# code.
Internet of Things I will introduce the current state of privacy in smart home products, exploring how many devices rely on cloud services that collect and share user data. The presentation will focus on Home Assistant, a local-first, open-source platform that allows you to automate and control your smart home while keeping your data private. Beginners will learn how to build a privacy-focused smart home without compromising on convenience or functionality.
Architecture & Design PatternsCloud Computing Set sail with us as we navigate the complex waters of migrating a critical task queue system, all without causing a single ripple of downtime. This session will explore the reasons why we switched systems, and the strategic use of feature flags and robust observability in ensuring a seamless transition. We share our lessons learned so that you can gain insights that can guide your own system migrations.

Buy tickets

Montreal 2025 sponsored by

Become a sponsor