Summary: Software Unscripted with Anjana Vakil
Really enjoyed the latest episode of Software Unscripted!
Richard Feldman spoke with Anjana Vakil about teaching functional programming.
Here are my takeaways:
❓ What is functional programming?
Definitions of FP vary! Some older definitions require point-free style. Others focus on the broader use of pure functions.
Anjana helpfully defines a goal of FP as moving side effects to the boundary of your program.
🔧 FP is one tool, not the only tool
FP has its enthusiasts in the programming community.
But you don’t have to be dogmatic about FP as a “superior” way of doing programming. Not all code needs to be converted to functional style in all languages in order to be more effective.
🧑🏫 You don’t have to be an expert to teach FP
Anjana describes a popular Unconference talk she gave in 2016 on FP as a beginner, that resonated with a huge number of people (2.3 million views on YouTube).
So people can be very receptive to relatable lessons from a beginner!
🧠 Question teaching FP “foundations”
Academic concepts like monads and the lambda calculus don’t necessarily help students grasp FP.
Teaching these ideas as a rite of passage is not necessarily effective.
Anjana starts by helping students identify pure vs. impure functions.
🎧 Listen to the podcast here:
Thanks Software Unscripted for a great episode!
This post was originally a Twitter thread as part of Ship 30 for 30.