Uploaded June 2019 | Updated September 2026, 2 weeks ago
π .TECH (Episode sponsor)
The TLD for Technology
https://go.tech/fff
Coupon code: fff (90% off on 1 and 5 year domains)
In this beast of video, I finally and throughly learn the what, why and how of Transducers from Sean May (twitch.tv/theoryinmotion) in JavaScript. Transducers is an advanced function composition technique from functional programming that we can use to optimise long processing chains on big arrays in JavaScript and other functional programming languages.
π Code from the episode
gist.github.com/mpj/ec3008a6a1e91376b49f5793f863f27f
β° Quick jump
03:48 Why do we need transducers?
12:37 Re-implementing map using reduce
21:13 Making our map-as-reducer unaware of what an array is
33:18 What is an array, really
43:40 Taking stock of where we are in the process
01:02:11 Is this just functional programming cleverness, do we really need it?
01:48:17 Summary
π Follow on Twitch
We record the show live Mondays 7 AM PT
twitch.tv/funfunfunction
π Fun Fun Forum
Private discussion forum with other viewers in between shows. Discuss this episode in this dedicated thread:
funfunforum.com/t/transducers/8599/2
π mpj on Twitter
twitter.com/mpjme
π CircleCI (Show sponsor)
Robust and sleek Docker-based Continuous Integration as a service. I used CircleCI prior to them becoming a sponsor and I love that their free tier is powerful enough for small personal projects, even if they are private. Use this link when you sign up to let them know you came from here:
circleci.funfunfunction.com
π Quokka (Show sponsor)
Wonder how MPJ evaluates JavaScript inline his editor. Quokka is the answer - use this link when you buy to let them know you came from here:
quokka.funfunfunction.com
π FUN FUN FUNCTION
Since 2015, Fun Fun Function (FFF) is one of the longest running weekly YouTube shows on programming π thanks to its consistency and quality reaching 200,000+ developers.
π€¦ββοΈ The Failing Together concept is what makes FFF unique. Most coding content out there focus on step-by-step tutorials. We think tutorials are too far removed from what everyday development is like. Instead, FFF has created a completely new learning environment where we grow from failure, by solving problems while intensively interacting with a live audience.
Tutorials try to solve a problem. Failing Together makes you grow as a developer and coworker.
πΉ Each show is recorded live on Twitch in a 2-hour livestream on Mondays. The host, assisted by the audience, is tasked to complete a programming challenge by an expert guest. Like in the real world, we often fail, and learn from it. This, of course, reflects what the audience identifies with, and is one of the most praised aspects of the show.
β― On Fridays, an edited version of the show is adapted for and published on YouTube.
Content Topics revolve around: JavaScript, Functional Programming, Software Architecture, Quality Processes, Developer Career and Health, Software Development, Project Management
π .TECH (Episode sponsor)
The TLD for Technology
https://go.tech/fff
Coupon code: fff (90% off on 1 and 5 year domains)
In this beast of video, I finally and throughly learn the what, why and how of Transducers from Sean May (twitch.tv/theoryinmotion) in JavaScript. Transducers is an advanced function composition technique from functional programming that we can use to optimise long processing chains on big arrays in JavaScript and other functional programming languages.
π Code from the episode
gist.github.com/mpj/ec3008a6a1e91376b49f5793f863f27f
β° Quick jump
03:48 Why do we need transducers?
12:37 Re-implementing map using reduce
21:13 Making our map-as-reducer unaware of what an array is
33:18 What is an array, really
43:40 Taking stock of where we are in the process
01:02:11 Is this just functional programming cleverness, do we really need it?
01:48:17 Summary
π Follow on Twitch
We record the show live Mondays 7 AM PT
twitch.tv/funfunfunction
π Fun Fun Forum
Private discussion forum with other viewers in between shows. Discuss this episode in this dedicated thread:
funfunforum.com/t/transducers/8599/2
π mpj on Twitter
twitter.com/mpjme
π CircleCI (Show sponsor)
Robust and sleek Docker-based Continuous Integration as a service. I used CircleCI prior to them becoming a sponsor and I love that their free tier is powerful enough for small personal projects, even if they are private. Use this link when you sign up to let them know you came from here:
circleci.funfunfunction.com
π Quokka (Show sponsor)
Wonder how MPJ evaluates JavaScript inline his editor. Quokka is the answer - use this link when you buy to let them know you came from here:
quokka.funfunfunction.com
π FUN FUN FUNCTION
Since 2015, Fun Fun Function (FFF) is one of the longest running weekly YouTube shows on programming π thanks to its consistency and quality reaching 200,000+ developers.
π€¦ββοΈ The Failing Together concept is what makes FFF unique. Most coding content out there focus on step-by-step tutorials. We think tutorials are too far removed from what everyday development is like. Instead, FFF has created a completely new learning environment where we grow from failure, by solving problems while intensively interacting with a live audience.
Tutorials try to solve a problem. Failing Together makes you grow as a developer and coworker.
πΉ Each show is recorded live on Twitch in a 2-hour livestream on Mondays. The host, assisted by the audience, is tasked to complete a programming challenge by an expert guest. Like in the real world, we often fail, and learn from it. This, of course, reflects what the audience identifies with, and is one of the most praised aspects of the show.
β― On Fridays, an edited version of the show is adapted for and published on YouTube.
Content Topics revolve around: JavaScript, Functional Programming, Software Architecture, Quality Processes, Developer Career and Health, Software Development, Project Management





