pattern matching
1:03:36Christopher Alexander - Patterns in Architecture
135K views • 13 years ago
Peter Petrash
Christopher Alexander's keynote at OOPSLA 1996 on patterns in architecture, addressed to the software community. He moves beyond patterns toward deeper ideas of wholeness and living structure.
37:15Stuart Halloway - Narcissistic Design
29K views • 9 years ago
Reaktor
Stuart Halloway's satirical talk describes how to protect yourself from industry change by spreading complexity through systems while following idiomatic practice. It uses this inversion to catalog software design anti-patterns.
Topic match · Functional programming
1:03:07Clutching at Random Straws, Matt Parker | LMS Popular Lectures 2010
601K views • 12 years ago
London Mathematical Society
Matt Parker's LMS popular lecture on how seemingly incredible results can be meaningless random patterns. He ranges from ancient Woolworths civilisations to shoelaces and DNA.
0:23Decerebrate Cat walks and exhibits multiple gait patterns
635K views • 16 years ago
0zxr
An old lab video of a decerebrate cat walking on a treadmill and shifting between gait patterns as the speed changes. It is used to illustrate that much locomotion control comes from the spinal cord and body mechanics rather than the brain.
43:04Corporate Open Source Anti-patterns
24K views • 12 years ago
Bryan Cantrill
Bryan Cantrill's talk on corporate open source anti-patterns, first given at FISL 2012 and again at the Liferay Symposium. He lays out the mistakes companies make when open sourcing code, such as announcing future open sourcing, and discusses licenses.
59:56AWS re:Invent 2018: Amazon DynamoDB Deep Dive: Advanced Design Patterns for DynamoDB (DAT401)
468K views • 7 years ago
Amazon Web Services
Rick Houlihan's AWS re:Invent 2018 deep dive on advanced DynamoDB design patterns. It covers index overloading, GSI sharding, composite keys, graph processing and transactions.
1:05:51The Functional Programmer's Toolkit - Scott Wlaschin
79K views • 7 years ago
NDC Conferences
Scott Wlaschin demystifies functional programming terms like monads, monoids, functors and catamorphisms by showing how they fit into a small toolkit. He applies them to problems such as missing data, list handling, and functional dependency injection.
Topic match · Functional programming
54:10Design Patterns vs Anti pattern in APL by Aaron W Hsu at FnConf17
8K views • 8 years ago
ConfEngine
Aaron Hsu discusses design patterns and anti-patterns in APL and why the language is productive despite its write-only reputation. He argues that idioms matter more than libraries in array languages.
13:37Times Tables, Mandelbrot and the Heart of Mathematics
2.8M views • 11 years ago
Mathologer
Mathologer shows how times table diagrams on a circle produce cardioids and other curves connected to the Mandelbrot set. He explains the patterns and links to a tool for making your own diagrams.
1:11:48Math Encounters -- Five Balls, Two Hands: The Patterns of Juggling -- Colin Wright (Presentation)
33K views • 14 years ago
National Museum of Mathematics
Mathematician Colin Wright demonstrates juggling and explains the mathematics of juggling patterns, including notation that led to new throwing patterns. It is a public presentation at the Museum of Mathematics aimed at a general audience.
59:13AWS re:Invent 2019: [REPEAT 1] Amazon DynamoDB deep dive: Advanced design patterns (DAT403-R1)
115K views • 6 years ago
AWS Events
An AWS re:Invent 2019 session for advanced DynamoDB users on design patterns used by large customers, including Amazon retail. It covers GSI sharding, index overloading, graph processing, composite keys and transactional workflows.
59:03Breaking Down Programming Paradigms: APL's Surprising Learning Curve // Aaron Hsu // Dyalog '17
7K views • 9 years ago
Dyalog User Meetings
Aaron Hsu explains why programmers often find APL harder to learn than people with no programming background. He identifies eight patterns that contrast traditional software engineering practice with APL practice, starting from Ken Iverson's language design principles.
Topic match · Functional programming
28:03AT&T Archives: Similiarities of Wave Behavior (Bonus Edition)
473K views • 14 years ago
AT&T Tech Channel
A Bell Labs film in which Dr. J.N. Shive uses a mechanical wave machine to demonstrate reflection, standing waves, resonance and impedance matching. He includes some equations but relies mostly on real-world examples a layperson can follow.
51:27Google I/O 2012 - Go Concurrency Patterns
894K views • 14 years ago
Google for Developers
Rob Pike's Google I/O 2012 talk shows how goroutines and channels solve tricky concurrency problems with simple Go code. It features a playful goroutine demo with gophers passing messages and a search engine example.
6:46The surprising pattern behind color names around the world
8.4M views • 9 years ago
Vox
Vox explains the Berlin and Kay research showing that languages around the world tend to invent color words in the same order. It walks through the hierarchy and the debate around it.
23:06Bob Nystrom - Is There More to Game Architecture than ECS?
301K views • 8 years ago
Roguelike Celebration
Bob Nystrom, author of Game Programming Patterns, gives a Roguelike Celebration 2018 talk questioning whether entity component systems are the only way to structure a game. He walks through alternative architectures drawn from roguelike development.
53:4010 Things I Learned from the jQuery Source
125K views • 16 years ago
Paul Irish
Paul Irish walks through the jQuery source code and shares ten lessons and interesting techniques from it, aimed at JavaScript developers who want to learn from a widely used library.
50:06The Many Meanings of Event-Driven Architecture • Martin Fowler • GOTO 2017
677K views • 9 years ago
GOTO Conferences
Martin Fowler's GOTO Chicago 2017 talk on the different things people mean by event-driven architecture. He identifies four patterns, including event notification and event-carried state transfer.
53:22Ruby Conf 12 - Y Not- Adventures in Functional Programming by Jim Weirich
65K views • 14 years ago
Confreaks
Jim Weirich's RubyConf 2012 talk derives the Y combinator step by step, live-coding in Ruby lambdas. It builds up an understanding of functional programming and lambda calculus from first principles.
Topic match · Functional programming
42:03The Soul of Erlang and Elixir • Sasa Juric • GOTO 2019
384K views • 7 years ago
GOTO Conferences
Sasa Juric explains what makes Erlang and Elixir suited to server-side systems, focusing on the BEAM concurrency model rather than syntax or ecosystem. He demonstrates processes, supervision, and fault tolerance.
Topic match · Functional programming
25:06"Making Impossible States Impossible" by Richard Feldman
63K views • 10 years ago
elm-conf
Richard Feldman's elm-conf talk on designing models so that bugs from impossible application states cannot occur, using Elm's compiler and types. It demonstrates techniques for making invalid states unrepresentable.
Topic match · Functional programming
1:31:06William Byrd on "The Most Beautiful Program Ever Written" [PWL NYC]
367K views • 9 years ago
PapersWeLove
William Byrd presents at Papers We Love NYC on what he calls the most beautiful program ever written, a Lisp interpreter written in Lisp. He walks through the metacircular interpreter and related ideas, and demos relational programming and program synthesis near the end.
Topic match · Functional programming
46:09Why Isn't Functional Programming the Norm? – Richard Feldman
1.6M views • 7 years ago
Metosin
Richard Feldman argues that functional programming is not the norm largely because of historical accidents, such as C++ popularity, platform exclusivity, marketing spend and network effects, rather than merit. He traces the history of how languages become mainstream.
Topic match · Functional programming
31:44The Value of Values with Rich Hickey
145K views • 14 years ago
InfoQ
Rich Hickey's JaxConf 2012 keynote examines what values are and why immutable values matter as information systems grow more complex and data gets bigger. It contrasts places with values and builds the case for immutability.
Topic match · Functional programming
1:03:29Maybe Not - Rich Hickey
181K views • 7 years ago
ClojureTV
Rich Hickey's Clojure/Conj 2018 keynote argues that Maybe/Option types and rigid type signatures are a poor way to model data that changes over time. He builds the case around optionality, schema growth and compatibility, and presents the ideas behind Clojure spec as an alternative.
Topic match · Functional programming
1:02:26Solving Problems the Clojure Way - Rafal Dittwald
87K views • 7 years ago
Clojure/north
Rafal Dittwald's Clojure/north talk shows how to move from writing Java-style code in Clojure to thinking in data-driven, functional terms. He walks through a JavaScript example, refactoring imperative code step by step into a functional core.
Topic match · Functional programming
1:12:56Lecture 1A: Overview and Introduction to Lisp
420K views • 7 years ago
MIT OpenCourseWare
The first lecture of MIT's 6.001 (SICP) with Abelson and Sussman, giving an overview of the course and an introduction to Lisp. It argues that computer science is about managing complexity and abstraction, not computers.
Topic match · Functional programming
39:49Hammock Driven Development - Rich Hickey
333K views • 13 years ago
ClojureTV
Rich Hickey's philosophical talk from the first Clojure Conj in 2010. He argues that good design comes from deliberate, away-from-keyboard thinking, and describes how to feed the background mind so it solves problems.
Topic match · Functional programming
1:14:52Effective Programs - 10 Years of Clojure - Rich Hickey
176K views • 9 years ago
ClojureTV
Rich Hickey's talk at Clojure's tenth anniversary on the kind of programs Clojure is designed for. He argues for situated programs that deal with changing requirements, and for dynamic typing and data over static types.
Topic match · Functional programming
49:15Erlang Factory 2014 - That's 'Billion' with a 'B': Scaling to the Next Level at WhatsApp
50K views • 12 years ago
Erlang Solutions
Rick Reed of WhatsApp explains at Erlang Factory 2014 how the service scaled to billions of messages with a very small engineering team. He covers the FreeBSD and Erlang stack, Mnesia usage, server counts and bottleneck work.
Topic match · Functional programming
58:39Tim Ewald - Clojure: Programming with Hand Tools
48K views • 12 years ago
ClojureTV
Tim Ewald's Clojure/conj talk uses furniture making with hand tools versus machine tools as an allegory for software. It explores how automation changes what we make and how we think about our work, and why Clojure's small set of simple tools matters.
Topic match · Functional programming
1:07:10Brian Beckman: Don't fear the Monad
415K views • 13 years ago
jasonofthel33t
Microsoft's Brian Beckman gives an hour-long, whiteboard-style walk through monads, building from function composition and monoids using school-level math. It is aimed at practicing programmers rather than category theorists.
Topic match · Functional programming
45:55Ruby Conf 12 - Boundaries by Gary Bernhardt
58K views • 13 years ago
Confreaks
Gary Bernhardt's RubyConf 2012 talk on testing in isolation without mocking everything. It goes through behavior versus data, mutation versus immutability, and how a functional core with an imperative shell yields natural isolation and parallelism.
Topic match · Functional programming
1:16:14Spec-ulation Keynote - Rich Hickey
135K views • 9 years ago
ClojureTV
Rich Hickey's keynote on software versioning, arguing that breaking changes are the real problem and that libraries should only grow by providing more and requiring less. It critiques semantic versioning and ties into Clojure spec.
Topic match · Functional programming
57:38Clasp: Common Lisp using LLVM and C++ for Molecular Metaprogramming
52K views • 11 years ago
Google TechTalks
Christian Schafmeister's Google Tech Talk on designing spiroligomer molecules and building Clasp, a Common Lisp on LLVM that interoperates with C++, to program molecular design. It covers the chemistry, automatic differentiation for force fields, and how the compiler is built.
Topic match · Functional programming
46:46Category Theory 1.1: Motivation and Philosophy
394K views • 10 years ago
Bartosz Milewski
The first lecture in Bartosz Milewski's category theory series for programmers. It covers the motivation and philosophy behind category theory and why composition matters for handling complexity.
Topic match · Functional programming
1:02:50The Language of the System - Rich Hickey
174K views • 13 years ago
ClojureTV
Rich Hickey's 2013 talk applies language-design thinking to whole systems, covering names, queues, data, failure, and the interfaces between programs. It ends with a call to action for building systems holistically.
Topic match · Functional programming
1:07:22Invited Talk - Guy Steele
39K views • 9 years ago
ClojureTV
Guy Steele's invited talk at Clojure/conj on the informal metanotation computer scientists use in papers to describe languages. He traces how this notation developed and why it is often unspecified and arcane.
Topic match · Functional programming
1:04:53Julia: to Lisp or not to Lisp?
24K views • 10 years ago
European Lisp Symposium
Stefan Karpinski's European Lisp Symposium 2016 talk asks whether Julia is a Lisp. He covers the features it borrows from Lisp, such as macros and closures, and where it departs, including syntax and its type system, with generated machine code shown.
Topic match · Functional programming
45:50"The Mess We're In" by Joe Armstrong
398K views • 12 years ago
Strange Loop Conference
Joe Armstrong, co-inventor of Erlang, gives a funny and opinionated Strange Loop talk on the tangled state of software: build tools, package managers, entropy and the physical limits of computation. He argues for ideas like naming things by content hash and throwing away your first version.
Topic match · Functional programming