Have you ever felt helpless, facing some cryptic code you had to change? You know, the kind of code that has no test to tell you if something breaks…
This is a scenario I frequently faced. And I learn better ways to work with such Legacy Code.
In this session, I'll show you how to write tests on existing code, even when you don't understand what it does. You'll learn how to modify this code and know that nothing broke when you’re done.
As long as we’ve been using the internet, and way before that, we have been authenticating through some sort of username and password combination. It has become the standard. With the ever-increasing number of web-apps, we’re seeing more and more data breaches as well. What if we could build our authentication processes in a way the user doesn’t need a password?
The end is nigh. Your application is almost ready and you will need to deploy it. And with the deployment, the endless tweaking to actually get everything running in a production environment. If only there was a way to test everything in that environment first… This is where containers will come in to save the day. With container, you not only run your code in an environment similar to the production server, it is the production environment.
Discover how 4 development teams adopted the principles of Continuous Delivery on an existing application. Learn what worked well & what didn’t, and the reality of failing pipelines, flaky tests and brittle infrastructure: transitioning from manual bi-weekly releases to 30 deployments per day.
This presentation looks at the variety of ways we can test a typical web application. From unit tests to end-to-end, from functional to visual testing, from happy paths to the edge cases - there are a lot of solutions available, and each new technique gives us additional confidence in our application. This presentation will teach you how to guide test writing using code coverage using Cypress open-source test runner.
OWASP, a nonprofit composed of security experts from around the world, provides a number of free and open source tools designed by security experts to help your secure your applications. Learn how to integrate these tools - from active penetration tests to project dependency checkers - into your DevOps pipeline and deliver on the promise of continuous security.
Web technologies have come leaps and bounds. But are you still using the tired old database from last generation? Let's look at the methodology of microservices, compare it to bounded contexts, and look at ops tasks for micro-databases. Let's tour all the flavors of databases, understand their pros and cons, and when you would choose it. You'll leave with a roadmap for moving from data-monolyth to micro-databases.
In March 2019 the W3C released the Level 1 of the recommendation for the new Web Authentication Standard "WebAuthn". Supported by all major browser vendors, it strives to make passwords as well as phishing a thing of the past. Given millions of stolen credentials, the switch away from passwords should happen rather sooner than later. Learn what WebAuthn is about, how it works, and how to leverage its potential for you site today!
Flutter is a new framework made by Google to build cross-platform application. Despite well-established competitors such as Ionic, React Native, Xamarin, etc., the growth and the adoption of Flutter is stunning.
Let’s open the hood of Flutter, see what is inside, demonstrate how this framework is on track to fulfill a golden promise: unifying web and mobile in a single codebase without the headache!
Scaling is about more than servers and shards, it's about team communication, exponential complexity, and the problems that only arrive when an app gets large enough to have them. This talk is about some principles and techniques developed specifically for managing the complexity of large front-end web applications at scale, to bring sanity back to your development teams and “performance and polish” to your users.
Comme développeur, on nous demande toujours d'aller plus vite sans jamais sacrifier la qualité. Je raconte comment j'ai réalisé ce miracle durant le développement d'une application web en appliquant le TDD (Test Driven Development) assisté de l'outil de test Cypress.io. Suite à ma présentation, vous n'aurez plus d'excuse pour ne pas faire de tests!
Git is the modern-day version management system of choice.
We all know how to commit, push, pull and merge. But what about (interactive) rebasing, fixing up commits, cherry picking lines and bisecting the history ?
And what are those atomic commits you keep hearing people talk about ?
Come and learn how to get the most out of the tooling you use every day and leave knowing how to create a clean commit history which is a joy to peruse.
They say a picture is worth a thousand words... I've learned that I can replace a 20 page document with a 2 page diagram that explains it all. Words do not help because words require interpretation.
However images, diagrams, pictures speak volume and their meaning is universal. In this talk I will demonstrate how to transform long documents into simple diagrams; and how you can leverage that power of communication to convince almost anybody!
Toi qui t'es déjà plongé(e) dans CSS3 Flexbox, tu t'es sans doute déjà rendu(e) compte que ce mode de positionnement n'est pas la réponse à la grande question sur la vie, l'univers et le reste.
En gros, des fois ça marche, des fois ça marche pas, ... et des fois ça dépend !
Déjouons ensemble les pièges de Flexbox et franchissons un nouveau cap dans nos projets web.
PHP loves arrays. They're the uber data structure. That's the problem.
In modern PHP there are almost always better options than bare arrays that are easier to use, safer, less bug-prone, and faster. Yes, all of those.
This talk will go through what PHP arrays actually are (hint: they are not arrays at all), why they're problematic, and what to do instead.
A difficult task of management and mentorship is providing honest feedback. Many struggle with separating personal feelings from performance. Since the best managers and mentors must give feedback on performance, how can we do that effectively, so the message is heard? Learn techniques for delivering effective feedback while caring deeply for those receiving it.
The tree is one of the most important data structures available in Computer Science. If you know how to describe a problem using trees, you can significantly improve the speed and quality of the developed solution. In this talk, I'd like to show what kind of problems can be solved with trees and show examples of how I did that in several non-trivial situations.
Voir les 156 présentations