It's no secret that today's architectures are based on microservices that exposes API but how do we do this in a way that can evolve to a large complex eco-system. In this presentation I outline 5 steps to build API(s) and what you need to learn and master in order to build it so that it scales in complexity over time.
Your competition will hate you. By the time they release one feature with a ton of bugs, you would have released 10 features with no bugs. A good design makes a world of difference in terms of ease of change, teamwork, testability, reliability and overall quality of life. I will present a software design approach that allowed my teams to ship unbelievably fast while keeping the quality above industry standards.
OpenAPI is the industry leading format for describing HTTP APIs. With a low barrier to entry, and a large ecosystem of tools, this format can bring tremendous savings to teams that work with HTTP APIs. Let me take you on a journey through an OpenAPI description and highlight where tools can be used to make every developer's life easier.
Join me for this story about an adventure that has no practical use, probably violates Terms of Service, but was fun to build!
After buying a set of Sonos-compatible speakers at IKEA, I was disappointed there's no support for playing audio from a popular video streaming service.
Determined - and not knowing how deep the rabbit hole would be - I ventured on a trip to build an app for this...
The HTTP protocol started in 1991 as a way for physicists to share simple text-based documents, and has grown to support the large complicated web applications we all use today. We’ll review the history of HTTP, how it works, and the major features in the currently standardized HTTP/2. We’ll also look to the future with HTTP/3 to see how it might change the way we develop and deploy web sites.
Running a distributed application is HARD! You have to deal with unreliable remote services, network partitions, request timeouts, slow responses... the sources of possible failures are endless. There are patterns that you can apply in your service to save the day and make sure it's not your status page that goes red.
Many, if not most of us, started as developers. We learned and perfected our craft and were proud of our coding accomplishments. It was what defined us.
As you progress in leadership, more and more of your responsibilities have less and less to do with coding. When is it time to make coding your hobby instead of your job? How do you do it?
This talk is all about embracing the challenges of leading people while staying technically credible.
JSON Web Tokens, or JWTs, are a convenient way to bundle up a set of data (called claims), that can be relied upon by intended recipients such as APIs and Databases. They're verified through signatures and can be used in off-line environments!
The chances that things will go wrong are slim. Right?
Let's look at ways in which JWT implementations can go wrong, through live demos, and learn how to make sure we can trust these handy payloads.
La présentation sur l'architecture que je vous propose parle de comment partir d'une architecture plus traditionnelle et passer à une vision plus agile de l'architecture.
Les application d'aujourd'hui sont de plus en plus exigeantes et demandent d'être robustes mais aussi flexibles. Donc je vous propose de faire le chemin avec moi vers une architecture plus agile.
According to a study, nine out of ten web applications have security vulnerabilities. Recent events proved that not only old legacy sites were successfully attacked, but also new and recent applications, built with the best intentions and also with security in mind. We will have a look at common attacks, new attacks, and new twists to old attacks that demonstrate why so many websites may be compromised. As always: lots of live demos included!
How to measure the quality of unit tests? Code coverage is not necessarily a good indicator to answer this question. What other options do we have? Do we need tests to test the quality of our tests? In some way, yes we do. In this session, I will introduce you to the concept of mutation-based testing and how this technique can be used to improve the quality of your test suite.
Containers are dramatically changing the way that application developers design and build their systems. Databases will need to be a part of this revolution as every application needs a data store. Come see a future vision of how full stack application development might look in the next few years.
Most applications use databases, yet many fail to follow even the most basic best practices causing poor performance, downtime and security incidents.
In this presentation, we will look into the foundational best practices you as a Developer should know about databases, with particular focus on the most popular Open Source Databases - MySQL, PostgreSQL, and MongoDB.
The only thing constant about software is that it changes. Whether you need to remove technical debt, move to the cloud, or add new functionality - changing software seems to be a constant part of being a software developer. In this session, we will go over the primary refactor design patterns, look at how they can be implemented (in C#\.NET), and tell some stories about them being used in real-life.
Nanocours d'architecture logicielle traitant du couplage dans les applications.
Il arrive souvent que l'on confonde le couplage topologique (technologique) avec le couplage logique. Est-ce que le découpage des services réduit réellement les modifications simultanées de plusieurs services?
Continuous Delivery Pipeline as code is key helping you to ensure long term maintainability. Treating your pipeline as code helps you to version it in your SCM of choice, makes changes easily traceable and lets anyone on your team make required changes. In this session, I will show you how we build and maintain our Continuous Delivery pipeline using tools like GitLab CI, Docker, Nexus, and Traefik to deploy to dev, stage, and prod environments.
The last ones who told me I could learn from a plush toy were my daughters. Of course, I acknowledged. Yet, it dawned on me: after ten years of life, the PHP plush has achieved so much! It went to the White House and Antarctica; it spawned forty thousand offsprings and a jet-set generation of collectors; it built bridges within and outside the community.
Nowadays, it is alive and kicking. No one can have enough elePHPant.
We spend most of our time changing existing code. Often, there’s no test and the authors are long gone!
It feels like a pain because you're always in a hurry, rushing to ship new features and bug fixes before the end of the Sprint…
But what if you had a secret weapon? Let me share with you 7 concrete techniques that will help you regain control of any Legacy.
This session demonstrates practical techniques that drop a web page's size from almost 3MB to 143K, and load time from 6 seconds to sub-second, while looking the same! Review tools that validate and describe performance best practices. Explore how to defer resource requests, load resources asynchronously, and prefetch critical resources. Learn the techniques that can have the largest impact on web performance with the least amount of work!
Do you struggle prioritizing cleaning/refactoring/rearchitecting work against feature work? Do you have a hard time explaining why this might be more important than delivering business value? What is the relationship between technical debt and business value anyway? Understanding technical debt is difficult, talking about it is harder. Let's see if Mr Cunningham, DevOps, and the flow framework can give use some cues and tools to help us out.
Voir les 130 présentations