February 23-25, 2022
Montreal, Canada

Top 20 sessions

Tests & Quality You have analyzed your code with your favorite quality inspection tool. You have seen the metrics. Some of them are clear, some are not. Now what? What are the next steps? What’s the best way to tackle Technical Debt? In this session, I will discuss all the above based on my 10-years experience
Architecture & Design PatternsPHP What makes a good API? What makes people *want* to use yours? It doesn't matter if it's REST, RPC, or something else - the API design should start with purpose. Let's talk about API evolution, verifiable consistency, clear description, runnable documentation, implementation architecture, and other techniques to minimize the development effort and ease the integration for our clients. Let's also dispel a few myths about HTTP, while we're at it.
PHPPython What's in the .git folder? How are commits stored? How do branches work? We'll dive deep into the objects folder, unpack commits, look at the types of DAG nodes, examine object content, and build a complete visualization of the stored content. We'll also quickly look through Git hooks, Git config, and ref logs. Come experience the zen of git.
HTML & CSSJavaScript Have you struggled to get TypeScript and Vue to play well together? Me too. Vue is a fantastic SPA framework, and TypeScript is a great way for catching errors faster. Together, they can boost your productivity. Join us as we peel back the layers of TypeScript and look at the tricks of the trade to get them playing well together. You'll leave with a solid methodology and code samples to get started with Vue + TypeScript.
JavaScriptMobileInternet of Things PWAs bring the best of both mobile and native apps to user. PWAs equipped with service workers provide features like offline availability, push notifications etc. Now, PWAs are beyond the browsers; in hardware. Consider turning bulb on/off with your PWA, sounds cool? Lets learn how to, in this talk!
CareerManagement When you are in the tech industry, you continually build your knowledge. There are always new frameworks, languages, and tools to be learned. What can you do with all of this learning? Share it, and share it well. Being able to share your learnings with fellow developers is crucial to the improvement of your product and your team. In this talk, you’ll learn strategies and techniques to become a better technical mentor.
Architecture & Design PatternsJavaScript In this age of instant news and information, our products must keep up with the speed of life. Whether a chat app, stock ticker, or online MMORPG, processing and broadcasting data in near-real-time is critical to success. We will examine how Node.js + Redis offers a powerful, resilient tool able to scale to massive traffic. This talk will analyze event driven architecture and use a hands-on group experiment to demonstrate its potential.
Architecture & Design PatternsJavaScript From loading Ajax requests in browsers to have full-blown frameworks; Javascript has come a long way. While moving stuff from backend to frontend the problems of backend are also ported. The Bigger the code gets bigger the problems, more dependencies, eventually all the problems of a huge monolith.
With Microfrontends, we can break this monolith into smaller independent, maintainable apps.
Sounds good? Let’s see how in this talk.
Architecture & Design PatternsPHP Chances are your code already uses one of the HTTP PSRs in some way. In this 'no slides, just code' session we'll take a hands on look at how HTTP Messages (PSR-7) and HTTP Handlers (PSR-15) work, and how they can be properly leveraged.

Take a guided tour through both PSRs, and find out how you can use them effectively in your current codebase.
Architecture & Design PatternsCloud Computing How Serverless technologies can be used to build a real-time pizza tracker?
In this talk we will dive into serverless-applied design-patterns with a live-demo session to answer the following question :
why and how a serverless architecture can be a great fit for realtime and highly scalable use cases?
Architecture & Design PatternsJava & JVM languages Dans mes journées, je fais énormément de refactoring. Je joue avec le code. L'améliore, le rend testable, lisible.

Je me rends compte que dans toute la panoplie d'outils à ma disposition, certains reviennent continuellement. Je vais donc vous faire une petit liste de ceux que j'utilise au quotidien.
Architecture & Design PatternsManagement Agile is still buzzing, even though I still honestly don't understand why. I've seen it happen, seen it develop, and seen how much of agile actually becomes politics; inner politics, and seen how it takes the responsibility away from managers and derides such roles as software architects, encourages people to think more short term and less long term on key issues, etc.

Waterfall model had it's flaws, so does agile. So what's wrong with Agile?
ManagementDocumentation For an engineering team to thrive and evolve, it has to stand on clear core values and principles. Often times, these are implicit and shared only organically. This can be a problem as the team grows.

In this presentation, we’ll take a look at a few principles on which engineering teams can lean on to achieve excellence in building amazing software while developing themselves and scale at the same time.
JavaScriptInternet of Things When you hear the term websockets, a chat applcation comes to mind almost immediately. But websockets and websocket libraries go far beyond the simple application of a chat system. We'll quickly go through some websocket basics before diving deep into advanced applications, from real-time control of hardware to clustered payment handling. You'll never look at websockets the same way !
PHPInternet of Things 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 an Oro Platform app that links hundreds of (sometimes online, sometimes offline) computers spread over as many locations together. Not for the faint of heart !
Architecture & Design PatternsCloud Computing Learn how to simplify building event driven, serverless microservices architectures with Azure Event Grid.
In this session Sam will show you how you can use Azure related events published in Azure Event Grid, that your applications and services can react to. You’ll learn how to react to events by using event handlers, how to publish customer events from your application. Sam will also explain the concepts Event Topics and Event Subscriptions.
Cloud ComputingPerformance Monitoring solutions have multiplied in the past years, resulting in a wide array of tools and software incompatible with each other. In this session you will learn about OpenTelemetry, an observability standard covering traces, metrics and logs. The presenter will show a live demo instrumenting an application and then explore the traces and metrics collected.
Architecture & Design PatternsJava & JVM languages It’s easy to set up a cache in front of a database to improve speed. If the app is the only component that writes to the database, it’s straightforward to keep the cache in sync with the database but that happens rarely. Traditional sync techniques all have issues. Change-Data-Capture is a new approach that fix those issues.

In this talk, I’ll describe an easy-to-setup architecture that leverages CDC to achieve an evergreen cache.
DatabasesDevOps After discovering Kubernetes, you can think it can magically transform your deployment process into a no-event. Unfortunately, we need usually need to handle state. State is found in (at least) two places: sessions and databases.

In this talk, I’ll demo how to update a Spring Boot app deployed on a Kubernetes cluster with a database schema change, while keeping the service up during the entire update process.
PHP Already, PHP 8.1 is upon us, and it is bringing a truckload of new features and modernizations. Enumeration, readonly properties, new initializers, intersection types : we are in for a treat !
This session present all the upcoming incompatibilities, the exciting new features and how to get your code ready for them !

View all 157 sessions