March 7-9, 2018
Montreal, Canada

Top 20 sessions

Architecture & design patterns Much of the software we write is built to support a business process, this generally means validating and storing user data into a database. Often this is a mismatch with the actual business process, which is more reactive and task oriented. In this talk we'll look at using business events to drive the evolution of our software design and see how we can build a model which better reflects the businesses processes.
Architecture & design patternsJavaScript When starting to dabble with Javascript, the biggest challenge for most developers is understanding how to deal with asynchronous development. During this talk, we will cover some of the different ways to handle async programming like callbacks, promises, reactive streams and events. Developers attending this talk will have a better understanding of asynchronous programming and will have a few new tools to their belt to tackle those issues.
Career Are you responsible for the code you write? Ask the Volkswagen engineer who's in prison for creating software that allowed their cars to “cheat” on emissions tests. Or think of the ethical issues if you're programming IoT devices that spy on users and report back to the company. The technology we create affects people's lives. We need to be aware of how much power we've been given and start taking responsibility for what we build.
JavaScriptPHPArtificial intelligenceMachine learning From chatbots to your home thermostat, it seems like machine learning algorithms are everywhere nowadays. How about understanding how this works now? In this talk, you will learn the basics of machine learning through various basic examples, without the need for a PhD or deep knowledge of assembly. At the end of this talk, you will know what the Naive Bayes classifiers, sentiment analysis and basic genetic algorithms are and how they work.
Architecture & design patterns We’ve been building hypermedia APIs in one shape or another for a long time. As JSON continues to take over the world, many new specifications promise to deliver an easier way to create and evolve our APIs. After covering what problems ReST 3.0 tries to solve, we’ll evaluate the specifications and tools we can leverage. To the cloud and beyond!
Tests & quality La revue de code est un super outil pour attraper des erreurs, disséminer les idées et le savoir, et alimenter la collaboration entre les membres de votre équipe. Voyons ensemble le pourquoi et le comment de la revue de code, autant du côté dévelopeur que du côté business. Comment faire une requête de changement facile à réviser, quoi automatiser, à quels détails être le plus attentif et quels sont les gains pour votre entreprise.
AccessibilityHTML & CSS Developers often have to make decisions that will affect the usability of the finished site, such as choosing appropriate input types, maximizing performance, and including accessibility features. Learn to think like a user and uncover usability problems that might not be apparent at first glance. Hear some tips make your site more usable and accessible. User experience isn't just for designers to think about.
HTML & CSSJavaScript Progressive Web Apps are the new hotness with Google pressing hard to make them the defacto choice for building mobile applications but what's to be done about iOS where many of the key API's are not supported. That's where Apache Cordova/PhoneGap comes in by polyfilling the missing functionality. In this talk I'll show you how to create a PWA that runs on the web, Android and iOS from a single code base. Take advantage of some new tools to easil
CareerManagement In today's increasingly connected world, the word "culture" appears in communities a lot. Unfortunately, it's not a single-value term. In many cases the founders of a culture are unaware of how their ideals have morphed, and acquired altered or additional definitions. In this talk I intend to describe some of the factors that contribute to this sort of 'fuzzing' of consensual understanding of the term.
JavaScript This session will cover the developments of the JavaScript / ECMAScript language in recent years, to give you a quick update on how JavaScript can be written in 2018.

The pace of the JS community has remained very high for several years now, and it is often easy to be overwhelmed by the amount of options and new developments. I will present a limited set of features and tools to let you join us in the future without decision paralysis.
Architecture & design patterns While Object Oriented Programming provides a basis for structuring code, the question "How do I make sense of all those business rules?" remains unanswered. Domain Driven Design (DDD) main goal is to manage complexity by defining how to translate domain logic to code. In this presentation, you will see the main concepts of DDD and how it facilitates communication between developers and domain experts.
HTML & CSS CSS is becoming more and more powerful and nowadays it allows a lot of possibilities. This talk is a compilation examples for more advanced tips and techniques to add to your CSS skills. Have you ever wanted to curve text around a floated image? Or maybe style broken images? How about using attribute selectors more effectively? Then this talk is for you.
HTML & CSS For years, front-end developers fumbled with hacking floats for layouts, limited by how floats work. Now with the new Grid specification in CSS, we can easily define behaviors for each cell in our layouts in two dimensions. When combined with media queries, we can specify where each cell will be placed under a variety of conditions, in horizontal and vertical space. Similarities and differences with Flexbox will also be identified and discussed.
JavaScriptNode.js JavaScript is single threaded, so understanding the async patterns available in the language is critical to creating maintainable NodeJS applications with good performance. In order to master “thinking in async”, we’ll explore the async patterns available in node and JavaScript including standard callbacks, promises, thunks/tasks, the new async/await, the upcoming asynchronous iteration features, streams, CSP and ES Observables.
JavaScriptNode.js Developers often waste untold hours a week waiting for rebuilds, manually switching windows, reloading pages, restoring in-page state, and so on. This is unfortunate, as we've been gifted with numerous tools to automate reload, and even *hot reload*, for quite a while now.

In this talk, Christophe showcases workflows, tips and tricks, using widespread editors, tools and browsers, to make that web / Node developer feedback loop ever tighter.
CareerManagement A junior developer will join your team. If nothing is done, they are likely to be unproductive for a long time. You & me have been there too. This is not a great experience, for anybody. Still, great engineers need to be made, and this starts on day one. Based on my experience and on the EURA NOVA onboarding system, I will discuss why onboarding is important, which elements are required, how to plan and do it, and which common pitfalls to avoid.
Architecture & design patternsPHP Designing softwares with an object oriented approach is hard... really hard! In fact, making good object oriented design (aka OOD) is very difficult for many developers as it goes far beyond basic concepts like classes, objects, inheritance and interfaces. This talk will provide tips and techniques to help you design better object oriented code. We'll cover topics like SOLID principles, composition vs inheritance, value objects, entities, etc.
HTML & CSSJavaScript In an ever-changing world of JavaScript and web technologies, Front-End architecture plays a big role in a successful business. In this talk, we'll address questions like: what is Front-End Architecture, and how do you manage Front-End applications across different products and teams? We’ll also dive into the complexities of building and scaling Front-End systems and workflows across a large engineering organization.
Machine learning Artificial intelligence and Machine learning are in big demand! You can take data science courses and learn how to build your own neural networks, but let's face it, we coders are basically lazy. We don't want to write more code than necessary! In this session, I will show you a variety of APIs and tools that allow you to add intelligence to your applications without coding from scratch!
Tests & quality How often have you rewritten your unit tests from scratch just because the code it was testing evolved sligthly ?
In this session we will explore some unit testing techniques from other languages to produce more robust tests in PHP.
You won't have to give up or send your unit test to the trashcan (ever) again.

Montreal 2018 sponsored by