Best Functional programming Videos
The 225 Functional programming videos here were recommended by different people across different months. Choose by who it is for: 24 introductory, 137 intermediate, 18 for a general viewer, and 46 for someone who wants the harder derivation. Most of them are a talk. What they share is that one speaker finishes a claim, and the examples exist to hold that claim up. Channels you will keep seeing include ClojureTV, Strange Loop Conference, Google TechTalks.

"Building a Toolkit for Design" by Matthew Griffith
Matthew Griffith, creator of elm-ui, presents a toolkit for designing layouts in Elm as an alternative to CSS.

JSON Parser 100% From Scratch in Haskell (only 111 lines)
Tsoding live-codes a JSON parser from scratch in Haskell in about 111 lines, using only the standard library.

"Programming Should Eat Itself" by Nada Amin
Nada Amin's Strange Loop talk on programming languages that build on themselves, centered on towers of interpreters and nestable interpretation in Scheme.

Joe Armstrong & Jeremy Ruston - Intertwingling the Tiddlywiki with Erlang | Code Mesh LDN 18
Joe Armstrong, creator of Erlang, and Jeremy Ruston, creator of TiddlyWiki, discuss hypertext, Ted Nelson's idea of intertwingled knowledge, and a way to combine TiddlyWiki with Erlang.

Erlang Factory SF 2016 Keynote Phoenix and Elm – Making the Web Functional
A joint Erlang Factory 2016 keynote by Phoenix creator Chris McCord and Elm creator Evan Czaplicki on using the two together, including Phoenix.Presence design and PubSub optimizations.

Monads and Gonads
Douglas Crockford's Google Tech Talk explains monads without category theory or Haskell, implementing them in JavaScript and tying them to Ajax and promises.

CUFP 2013: Julien Verlaguet, Facebook: Analyzing PHP statically
Julien Verlaguet of Facebook describes applying static analysis and type inference to a very large PHP codebase, using OCaml.

Category Theory in Life - Eugenia Cheng
Eugenia Cheng gives the opening keynote at Lambda World 2017, presenting category theory as very abstract algebra whose abstraction gives it broad applicability.

Category Theory by Tom LaGatta
Tom LaGatta's talk on category theory at a 2014 LispNYC meetup, covering objects, morphisms and the basic ideas in an informal, conversational style.

RacketCon 2013: Dan Liebgold - Racket on the Playstation 3? It's Not What you Think!
Dan Liebgold of Naughty Dog gives a RacketCon 2013 keynote on using Racket in PlayStation 3 game development.

Computer Science - A Guide for the Perplexed • Joe Armstrong • GOTO 2018
Joe Armstrong's GOTO 2018 talk contrasts the problems computer scientists study with the problems users have.

Simon Peyton Jones - Linear Haskell: practical linearity in a higher-order polymorphic language
Simon Peyton Jones presents linear types for Haskell, showing how practical linearity can fit into a higher-order polymorphic language.

“What is Success?” by Evan Czaplicki
Elm creator Evan Czaplicki's 2018 Elm Europe talk on how to define success for an open source project and language community.

Effective ML
Yaron Minsky of Jane Street gave this talk to Harvard's OCaml-based CS51 class in 2010.

Zach Oakes - Making Games at Runtime with Clojure
Zach Oakes explains why Clojure suits making games at runtime, so designers can experience their work as they build it.

Four Languages from Forty Years Ago - Scott Wlaschin
Scott Wlaschin's NDC Oslo talk on four 1970s languages, SQL, Prolog, ML and Smalltalk.

Alexis King - “Effects for Less” @ ZuriHac 2020
Alexis King's ZuriHac 2020 talk on how effect systems in Haskell can be implemented efficiently.

OCaml Workshop 2020 - State of the OCaml Platform 2020
A one-hour OCaml Workshop 2020 talk on the state of the OCaml Platform, covering IDE support, next steps for the tooling and plans for 2020-2021.

Clojure for Java Programmers Part 1 - Rich Hickey
Rich Hickey introduces Clojure to the NYC Java Study Group in the first of a two-part talk.

Philip Wadler - Propositions as Types (Lambda Days 2016)
Philip Wadler's Lambda Days talk on propositions as types, the link between logic and computation that underlies theorem provers and programming language design.

Dynamic Languages Wizards Series - Panel on Language Design
A 2001 panel with Paul Graham, John Maeda, Jonathan Rees and Guy Steele on programming language design, part of the Dynamic Languages Wizards Series.

REBL - Stuart Halloway
Stuart Halloway introduces REBL, a graphical, interactive tool for browsing Clojure data, extracted from Datomic tools.

"How to Think about Parallel Programming: Not!" - Guy L. Steele Jr. (Strange Loop 2010)
Guy Steele's Strange Loop 2010 talk argues that programmers should not have to think about parallelism, and that languages should support algorithms built on independence and divide-and-conquer.

Barliman: trying the halting problem backwards, blindfolded - William Byrd, Greg Rosenblatt
A Clojure/conj 2016 talk demoing Barliman, a prototype smart editor that does program synthesis.