![Philippe Vaillancourt](https://sessionize.com/image/fe4a-400o400o2-RXkc1rtNPQCoTuEuB22WVg.jpg)
Philippe Vaillancourt
Senior Consultant at NimblePros
Montréal, Canada
Actions
Phil has so little experience as a software developer that it's not even worth mentioning. He has never written a book, doesn't have a course on Pluralsight and has helped train a total of 5 junior developers and one dog. As you can tell, Phil has big time impostor syndrome. But Phil really, really likes building software, reading about building software and talking about building software.
If you must know, he does have a blog (https://blog.snowfrog.dev), a YouTube channel, a podcast (https://podcast.snowfrog.dev), some open source packages (https://www.npmjs.com/~snowfrog), a Twitter account (https://twitter.com/snowfrogdev), yaddi-yadda... but I still mostly think he's a fraud.
Links
Area of Expertise
Topics
The Spy of Testadel: a unit-testing medieval tale
When people get started with unit testing, they often get stumped when it comes to testing functions that have side effects. This talk is a gentle introduction to some of the concepts involved in testing side effects.
The year is 1452. An uneasy truce between the kingdom of Testadel and the fiefdom of its neighbour, Sir SideEffects, is on the verge of collapse. Follow along as our hero, a court jester aptly named Jest, infiltrates the enemy's camp to gather information, and uncover Sir SideEffects' treachery.
Through the clever - I think - use of an allegory, this talk will answer:
- What is the difference between a pure function and a function with side-effects.
- Why testing functions with side-effects is usually harder.
- What strategies can be employed to test functions with side-effects, and their tradeoffs.
- What are spies and how to use them.
- What libraries can help with testing side-effects.
Let's make a sandwich: how to use abstractions to make your code readable
Writing code that a computer can understand is relatively easy. Writing code that is easy to read, understand, maintain and use for a human... is easier said than done. How much time have you wasted this week, this month, this year, squinting at a screen, trying your darndest to understand a particularly gnarly piece of code? A piece of code that very well might have been written by you, just a short time ago?
Meet Timmy. Timmy is a bot. Timmy is also a chef. In this talk, we'll try to get Timmy to make us a sandwich. We'll start with some low level instructions, written in an imperative style, which many will find hard to read and reason about. Through refactoring, we will progressively introduce layers of abstractions to end up with code that should be easier to read, understand and deal with. And hopefully, a sandwich.
Some of the things you might learn in this talk:
- How to write short functions, that do one thing.
- How to keep one level of abstraction per function.
- How to apply the Command Query Separation principle.
- How to avoid side effect proliferation in your programs.
- And much more.
The subtle art of not giving a func: Why OOP is here to stay
You've read the click-bait: "Functional Programming is taking the world by storm". "Object Oriented Programming is everything that is wrong with software and deserves to be stabbed in the neck!". "Functional programming is the only thing keeping Hades from reaching out from the depth of the Underworld to take a giant steaming 💩 on your software project!"
With that kind of rhetoric, you might be wondering: are languages traditionally known for their OOP friendliness, like C++, C# and Java, on the way out? Are we all soon destined to write Haskell and Lisp for a living? Is OOP really that bad? And if so, is FP the only, or even the best, solution for the problems that it may have? What the heck IS Functional Programming anyway?
In this talk you'll learn:
- Why OOP isn't going anywhere, anytime soon.
- Why Functional Programming isn't all unicorns and rainbows.
- What we can learn from Functional Programming as OOP practitioners.
- How to write OOP code that benefits from many of the advantages often associated with Functional Programming.
JavaScript & Friends Conference 2022 Sessionize Event
Stir Trek 2022 Sessionize Event
![](https://sessionize.com/image/fe4a-400o400o2-RXkc1rtNPQCoTuEuB22WVg.jpg)
Philippe Vaillancourt
Senior Consultant at NimblePros
Montréal, Canada
Links
Actions
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top