I watch a lot of talks that I love to share with my friends, fellows and coworkers. As I consider all GitHubbers my friends (oh yeah!), I decided it's time to share the list.
There are talks on programming language specifics as well as a more general section I call "theory". But don't expect to always get theoretical computer science for every talk there; most of them are on the architecture and design of software.
I welcome every contribution to the list; for guidelines look below.
Disclaimer: I did not give any of the talks on the list and am responsible neither for their content nor for their presentation. All links below will direct you to external sites (mostly YouTube, really), be aware of that. If you are one of the people responsible for the talks or the platform presenting it and want it removed, tell me and I'll sort it out with you.
[A] after a talk name denotes a talk that someone thought could be listened to as audio, without needing the video. This may not reflect your experience with the talk, but you can make a pull request to change it.
To make choosing the right speakers a tad easier, let me give you a quick overview over my favourite speakers in no particular order:
Expeditious Code via Inference [00:45:36] by Mike Fikes (2019)
fn and Games with Arcadia [00:53:49] by Ramsey Nasser (2019)
Rethinking Identity with Clojure [00:41:53] by David Nolen (2019)
Solving Problems the Clojure Way [01:02:55] by Rafal Dittwald (2019)
Every Clojure Talk Ever [00:27:36] by Alex Engelberg & Derek Slager (2018)
Functional Programming in Anger [00:42:05] by David Nolen (2018)
Java Made (Somewhat) Simple [00:40:45] by Ghadi Shayban (2018) [A]
REBL [00:33:05] by Stuart Halloway (2018)
Core.Async in Use [00:34:04] by Timothy Baldridge (2017)
Symbolic Assembly: Using Clojure to Meta-program Bytecode [00:39:42] by Ramsey Nasser (2017)
Bare Metal Clojure with clojure.spec [00:36:07] by Michael Reitzenstein (2016)
Clarifying Rules Engines with Clara Rules [00:37:07] by Mike Rodriguez (2016)
Clojure at DataStax: The Long Road From Python to Clojure [00:29:28] by Nick Bailey (2016)
Composing music with clojure.spec [00:46:30] by Wojciech Franke (2016)
Creating DSLs - A tale of spec tacular success and failure [00:39:46] by Claire Alvis (2016)
Full stack FP in Datomic, Clojure, and ClojureScript [00:51:30] by Priyatam Mudivarti (2016)
Live-Coding Mathematics Your First Clojure Proof [00:41:54] by Frederic Peschanski (2016)
Managing One of the World's Largest Clojure Code Bases [00:41:05] by Donevan Dolby (2016)
Parallel Programming, Fork Join, and Reducers [00:40:53] by Daniel Higginbotham (2016)
Proto REPL, a New Clojure Development and Visualization Tool [00:30:10] by Jason Gilman (2016)
Spec-ulation [01:16:23] by Rich Hickey (2016)
The Next Five Years of ClojureScript [01:00:57] by David Nolen (2016)
Using Clojure with C APIs for crypto and more [00:41:07] by lvh (2016)
Bottom Up vs Top Down Design in Clojure [00:36:41] by Mark Bastian (2015)
Building a Bicycle for the Mind [00:26:39] by David Nolen (2015)
Clojure, Made Simple [01:00:43] by Rich Hickey (2015)
ClojureScript + React.js: How I learned to stop worrying and love the browser [00:52:24] by Norbert Wójtowicz (2015)
ClojureScript for Skeptics [00:41:08] by Derek Slager (2015)
Condition Systems in an Exceptional Language [00:33:31] by Chris Houser (2015)
Data Science in Clojure [00:44:03] by Soren Macbeth (2015)
Developing ClojureScript With Figwheel [00:45:30] by Bruce Hauman (2015)
Domain Specific Type Systems [00:40:05] by Nathan Sorenson (2015)
From REST to CQRS with Clojure, Kafka, & Datomic [00:44:24] by Bobby Calderwood (2015)
Game Development Development [00:35:09] by Michael Nygard & Ragnar Svensson (2015)
Genetic Programming in Clojure [00:40:07] by Lee Spector (2015)
Hoplon and Javelin, WebDev Alternative Reality [00:22:07] by Micha Niskin (2015)
Om Next [00:39:22] by David Nolen (2015)
Purely Random [00:38:04] by Gary Fredericks (2015)
Pattern Matching in Clojure [00:47:02] by Sean Johnson (2015)
Simplicity in Practice [00:30:47] by Luke VanderHart (2015)
Solving Problems with Automata [00:38:03] by Mark Engelberg & Alex Engelberg (2015)
Specter: overcome your fear of nested Clojure data [00:41:50] by Nathan Marz (2015)
The ReactJS Landscape [00:41:03] by Luke VanderHart (2015)
The Relevance of ClojureScript [00:36:16] by Jearvon Dharrie (2015)
Always Be Composing [00:35:11] by Zach Tellman (2014)
ClojureScript: Lisp's Revenge [00:32:03] by David Nolen (2014)
Enter the Matrix [00:40:00] by Mike Anderson (2014)
How Clojure Works: Understanding the Clojure Runtime [00:30:07] by Daniel Solano Gomez (2014)
Making Games at Runtime with Clojure [00:37:34] by Zach Oakes (He's a very funny guy!) (2014)
Predictably Fast Clojure [00:34:01] by Zach Tellman (2014)
Typed Clojure in Practice [00:41:57] by Ambrose Bonnaire Sergeant (2014)
Variants are Not Unions [00:37:53] by Jeanine Adkisson (2014)
Clojure core.async [00:44:25] by Rich Hickey (2013)
Clojure Data Science [00:32:40] by Edmund Jackson (2013)
Clojure Enemy of the State [01:06:31] by Alex Miller (2013)
Clojure in 10 Big Ideas [00:30:48] by Stu Halloway (2013)
Clojure Library Core.async for Asynchronous Programming [00:55:32] by David Nolen (2013)
Core.Async [00:39:45] by Timothy Baldridge (2013)
Design, Composition and Performance [00:51:10] by Rich Hickey (2013)
Expert to Expert - Inside Clojure [00:53:56] by Rich Hickey & Brian Beckman (it's not so much a talk as a conversation; awesome for beginners) (2013)
Jelly stains. Thoughts on JavaScript, LISP & Play [00:19:12] by David Nolen (2013)
Machine Learning Live [00:27:38] by Mike Anderson (2013)
Make Your Own Lisp [00:53:52] by Bodil Stokke (2013)
Playing Go with Clojure [00:35:53] by Zach Tellman (2013)
Predicate Dispatch [00:28:58] by David Nolen (2013)
The Macronomicon [00:42:02] by Michael Fogus (2013)
Clojure Concurrency [02:32:39] by Rich Hickey (2012)
Why Is A Monad Like A Writing Desk? [00:30:38] by Carin Meier (2012)
Clojure for Schemers [01:17:27] by David Nolen (2011)
Persistent Data Structures and Managed References [00:55:53] by Rich Hickey (2009)
C++ - The Newest Old Language [00:43:36] by Matt Godbolt (2018)
Memory Latency Troubles You? Nano-coroutines to the Rescue! (Using Coroutines TS, of Course) [01:04:25] by Gor Nishanov (2018)
Modern C++ in Embedded Systems [01:30:39] by Michael Caisse (2018)
-Os matters [00:44:12] by Mark Zeren (2018)
10 Core Guidelines You Need to Start Using Now [01:02:32] by Kate Gregory (2017)
Curiously Recurring C++ Bugs at Facebook [00:52:00] by Louis Brandy (2017)
Fantastic Algorithms and Where To Find Them [00:46:57] by Nicholas Ormrod (2017)
Meta: Thoughts on generative C++ [01:47:44] by Herb Sutter (2017)
Postmodern C++ [01:27:46] by Tony Van Eerd (2017)
Rethinking Strings [01:26:53] by Mark Zeren (2017)
Rethinking Exceptions [01:23:17] by Jason Turner (2017)
The Last Thing D Needs [00:54:55] by Scott Meyers (2017)
The Nightmare of Move Semantics for Trivial Classes [00:57:15] by Nicolai Josuttis (2017)
Undefined Behavior in 2017: This talk has two parts.
A <chrono> Tutorial [01:00:31] by Howard Hinnant (2016)
Better Code [01:20:00] by Sean Parent (2016)
C++17, is it great or just OK? [01:11:06] by Michael Wong (2016)
Design Patterns in Modern C++ [01:07:04] by Dmitri Nesteruk (2016)
Fastware [01:02:16] by Andrei Alexandrescu (2016)
Making C++ easier, faster and safer: This talk has two parts.
STL Algorithms - How To Use Them and How to Write Your Own [01:30:36] by Marshall Clow (2016)
Thinking outside the synchronisation quadrant [01:32:50] by Kevlin Henney (2016)
Better Code: Data Structures [01:03:59] by Sean Parent (2015)
Support for Embedded Programming in C++11 and C++14 [01:12:52] by Scott Meyers (2015)
Tuning C++: Benchmarks, and CPUs, and Compilers! Oh My! [01:29:53] by Chandler Carruth (2015)
Transducers: from Clojure to C++ [01:00:03] by Juan Pedro Bolívar (2015)
Writing Good C++14... By Default [01:29:05] by Herb Sutter (2015)
Back to the Basics! Essentials of Modern C++ Style [01:40:27] by Herb Sutter (2014)
C++ on Mars: Incorporating C++ into Mars Rover Flight Software [01:26:18] by Mark Maimone (2014)
C++17: I See A Monad In Your Future [01:20:59] by Bartosz Milewski (2014)
Efficiency with Algorithms, Performance with Data [01:13:41] by Chandler Carruth (2014)
Lock-Free Programming (or, Juggling Razor Blades): This talk has two parts. I recommend taking a short break after watching the first part.
Making C++ Code Beautiful [00:56:23] by James McNellis & Kate Gregory (2014)
Optimization Tips - Mo' Hustle Mo' Problems [00:58:19] by Andrei Alexandrescu (2014)
Plain Threads are the GOTO of todays computing [01:27:36] by Hartmut Kaiser (2014)
Pragmatic Type Erasure: Solving OOP Problems with Elegant Design Pattern [00:43:47] by Zach Laine (2014)
Type Deduction and Why You Care [01:09:34] by Scott Meyers (2014)
C++ Seasoning [01:17:12] by Sean Parent (2013)
Don't Help the Compiler [01:17:00] by Stephan Lavavej (2013)
Optimizing the Emergent Structures of C++ [01:33:02] by Chandler Carruth (somewhat annoyingly bad quality) (2013)
Scaling with C++11 [01:18:27] by Edouard Alligand (2013)
The Effective C++11/14 Sampler [01:15:45] by Scott Meyers (2013)
Writing Quick Code in C++, Quickly [01:11:37] by Andrei Alexandrescu (2013)
C++11 Style - A Touch of Class [01:29:48] by Bjarne Stroustrup (2012)
On Static If, C++11 in 2012, Modern Libraries, and Metaprogramming [00:53:15] by Andrei Alexandrescu, Scott Meyers & Herb Sutter (2012)
Using C++11 to speed up your Qt 5 programs [00:46:47] by Marc Mutz (2012)
(yeah, I know, stylesheets are not traditionally programming)
The Soul of Erlang and Elixir [00:42:02] by Saša Juric (2019)
GenStage and Flow [00:53:32] by José Valim (2017)
Solid Ground [00:31:30] by Saša Juric (2017)
Transforming Programming [00:46:45] by Dave Thomas (2017)
Building Multiplayer Games with Phoenix and Phaser [00:34:47] by Keith Salisbury (2016)
Build Your Own Elixir [00:45:37] by Louis Pilfold (2016)
Code Generation in Elixir [00:43:54] by Bryan Weber (2016)
Dialyzer: Optimistic Type Checking for Erlang and Elixir [00:48:57] by Jason Voegele (2016)
Enhanced Embedded Systems with Nerves [00:56:11] by Justin Schneck (2016)
Elixir in Elixir [00:46:12] by Jay Hayes (2016)
Explicit Elixir [00:27:50] by Paul Lamb (2016)
Learn Elixir: Building a Neural Network from Scratch [00:32:26] by Karmen Blake (2016)
New Heights [00:48:42] by Chris McCord (2016)
Real World Elixir Deployment [00:40:35] by Pete Gamache (2016)
Securing Elixir Applications [00:42:52] by Bram Verburg (2016)
The Climb: Experiencing the Rise of Elixir from the Inside [00:43:22] by Bruce Tate & Dave Thomas (2016)
Elixir Should Take Over the World [00:58:30] by Jessica Kerr (not only interesting for Elixir devs! But I wasn't sure where else to put it) (2015)
Phoenix - Productive. Reliable. Fast. [00:45:19] by Chris McCord (2015)
elixir Conf 2014 Keynote [00:59:32] by Jose Valim (2014)
Elixir: The Power of Erlang, the Joy of Ruby [00:49:42] by Dave Thomas (2014)
Think Different [00:55:47] by Dave Thomas (2014)
Operable Erlang and Elixir [00:35:29] by Fred Hebert (2019)
Getting to the BEAM, without going through Erlang [00:24:32] by Kofi Gumbs (2018)
A Peek Inside Erlang's OTP [00:50:19] by Steve Vinovski (2016)
Distributed Jamming with Sonic Pi and Erlang [00:54:16] by Sam Aaron & Joe Armstrong (2016)
Erlang and Deep Learning [00:47:15] by Garrett Smith (2016)
Pilgrim's Progress to the Promised Land [00:52:24] by Robert Virding (2016)
Scaling Distributed Erlang [00:47:23] by Zandra Norman (2016)
Erlang: Evolution [00:37:24] by Robert Virding (2015)
How To Ship New Code Without Taking Your System Down [00:32:47] by Martin Rehfeld (2015)
Implementing Languages on the BEAM [01:47:47] by Robert Virding (2015)
OTP Has Done It [00:36:04] by Nick DeMonner (2015)
Designing a Real Time Game Engine in Erlang [00:38:32] by Mark Allen (2014)
Optimizing Native Code for Erlang [00:26:46] by Steve Vinoski (2014)
Using Logic Programming Tools to Drive Property-based Testing [00:34:45] by Zachary Kessin (2014)
Why The Cool Kids Don't Use Erlang [00:51:55] by Garrett Smith (2014)
Writing Quality Code in Erlang [00:40:47] by Garrett Smith (2014)
26 years with Erlang or How I got my grey hairs [01:20:00] by Joe Armstrong (2013)
A Few Improvements to Erlang [00:43:30] by Joe Armstrong (2013)
Chicago Boss: A Web Framework Built for Comfort (and Speed) [00:45:59] by Evan Miller (2013)
Over a Century of Programming [01:00:10] by Mike Williams, Joe Armstrong & Robert Virding (2013)
Erlang in production: I wish I'd known that when I started [00:42:43] by Bernard Duggan (2012)
SQLite and Go [00:32:02] by David Crawshaw (2018)
Things in Go I Never Use [00:24:52] by Mat Ryer (2018)
cgo - Safely Taming the Beast [00:48:20] by Filippo Valsorda (2016)
Communicating Sequential Goroutines [00:50:15] by Adrian Cockcroft (2016)
Crypto for Go Developers [00:31:14] by George Tankersley (title of Youtube video wrong) (2016)
Do not fear first class functions [00:18:54] by Dave Cheney (2016)
"go test -race" Under the Hood [00:44:13] by Kavya Joshi (2016)
Idiomatic Go Tricks [00:27:56] by Mat Ryer (2016)
Inside the Map Implementation [00:26:49] by Keith Randall (2016)
Packet Capture, Analysis, and Injection with Go [00:37:14] by John Leon (2016)
Program your next server in Go [01:02:05] by Sameer Ajmani (2016)
The Design of the Go Assembler [00:23:56] by Rob Pike (2016)
The Hidden Power of Humble Interfaces [00:23:47] by Aditya Mukerjee (2016)
7 common mistakes in Go and when to avoid them [00:27:57] by Steve Francia (2015)
Communicating Sequential Processes [00:43:21] by Eric Shull (2015)
Go [00:38:18] by Rob Pike (2015)
Golang: The good, the bad, & the ugly [00:48:31] by Vincent Batts (2015)
gRPC: Google's high-performance, open-source RPC framework [00:29:22] by Sameer Ajmani (2015)
Stupid Gopher Tricks [00:53:10] by Andrew Gerrand (2015)
The move from C to Go in the toolchain [00:32:52] by Rob Pike (2015)
High Performance Systems in Go [00:29:39] by Derek Collison (2014)
Three fallacies of dependencies [00:20:38] by Blake Mizerany (2014)
Advanced Go Concurrency Patterns [00:34:11] by Sameer Ajmani (2013)
Go for Pythonistas [00:51:17] by Francesc Campoy Flores (2013)
Concurrency Is Not Parallelism [00:31:22] by Rob Pike (2012)
Go Concurrency Patterns [00:51:27] by Rob Pike (2012)
Practical Go Programming [00:59:20] by Andrew Gerrand (2011)
Laws! [00:28:03] by George Wilson (2018)
Linear Haskell: practical linearity in a higher-order polymorphic language [01:03:33] by Simon Peyton Jones (2018)
Suggesting Valid Substitutions For Typed Holes [00:41:36] by Matthías Páll Gissurarson (2018)
Dependent Types in Haskell [00:38:41] by Stephanie Weirich (2017)
Escape from the ivory tower: the Haskell journey [01:04:15] by Simon Peyton-Jones (2017)
Point-Free or Die: Tacit Programming in Haskell and Beyond [00:36:12] by Amar Shah (2016)
What are Types for, or are they only Against? [01:03:37] by Conor McBride (2016)
Enigmatic Haskell, Haskellish Enigma [00:59:41] by Rishiyur S. Nikhil (2015)
Framing the Discussion with EDSLs [01:41:41] by Anthony Cowley (There is a repository containing the slides and code here) (2015)
Next Level MTL [00:44:36] by George Wilson (2015)
Pure Type Systems [01:17:01] by Cody Roux (2015)
The Road to Running Haskell at Facebook Scale [00:43:36] by Jon Coens (2015)
Demystifying Haskell [00:26:11] by Andrew Rademacher (for Beginners) (2014)
Getting a Quick Fix on Comonads [00:58:33] by Kenneth Foner (for best watching experience, watch it after the optimization talk by dan doel) (2014)
Haste: Full-Stack Haskell for Non-PhD Candidates [00:40:50] by Erin Swenson-Healey and James Cooper (the sound quality is really bad in the first 5:30 min or so, but it gets better, promise) (2014)
How Haskell is Changing my Brain [00:48:32] by Alissa Pajer (2014)
Introduction to Low Level Haskell Optimization [01:09:40] by Dan Doel (2014)
Safe Zero-Cost Coercions for Haskell [00:26:01] by Richard A. Eisenberg (2014)
Writing a game in Haskell [00:29:37] by Elise Huard (2014)
Lenses, Folds, and Traversals [01:54:46] by Edward Kmett (2012)
The Algebra In Algebraic Data Types [01:04:35] by Chris Taylor (2012)
Haskell Amuse-Bouche [00:57:13] by Mark Lentczner (the audio quality is scarily bad) (2011)
Data Parallel Haskell [01:19:56] by Simon Peyton Jones (2010)
A History of Haskell: being lazy with class [00:56:46] by Simon Peyton Jones (2007)
Java in 2018: Change is the Only Constant [00:27:08] by Mark Reinhold (2018)
Modules in One Lesson [00:51:17] by Mark Reinhold (2017)
g ∘ f patterns [00:50:44] by Mario Fusco (2017)
Parallel and Asynchronous Programming with Streams and CompletableFuture [02:34:29] by Venkat Subramaniam (2017)
A JVM does that??? [00:51:58] by Cliff Click (2016)
Optional - The Mother of All Bikesheds [00:58:42] by Stuart Marks (2016)
4 JVM Web Frameworks in 40 Minutes [00:58:38] by Joe Kutner (this is actually for a few JVM languages, not only Java) (2015)
A Few Ok Libraries [01:09:20] by Jake Wharton (2015)
Fast as C: How to write really terrible Java [00:51:42] by Charles Oliver Nutter (2015)
New Concurrency Models on the JVM: Fibres, Verticles, Agents and Actors [01:03:01] by Lutz Hühnken (2015)
Common crypto mistakes in Android [00:48:44] by Isaax Potoczny-Jones (2014)
Functional Reactive Programming with RxJava [00:49:27] by Ben Christensen (2014)
Java 8 Lambda Expressions & Streams [01:43:53] by Adib Saikali (2014)
Java 8 Language Capabilities, What's in it for you? [01:25:28] by Venkat Subramaniam (2014)
Living in the Matrix with Bytecode Manipulation [00:55:01] by Ashley Puls (2014)
Ludicrous Speed: Designing For Performance on the JVM [00:39:54] by Cliff Moon (2014)
Nashorn: implementing a dynamic language runtime on JVM in 2014 [00::44:32] by Attila Szegedi (2014)
Recursion Schemes [01:50:29] by Tim Williams (2014)
JVM Bytecode for Dummies (and the Rest of Us Too [00:50:34] by Charles O.o Nutter (2013)
Java - The Good, Bad and Ugly Parts [00:14:34] by Josh Bloch (2011)
Effective Java; Still Effective After All These Years [01:13:59] by Joshua Bloch (2009)
(There is a good list of talks about JS to be found here)
A Cartoon Intro to WebAssembly [00:29:40] by Lin Clark (2017)
How to effortlessly integrate Three.js into your projects [00:22:00] by Jason Farrell (not as technical as the other *GL talks) (2016)
Learning Functional Programming with JavaScript [00:29:56] by Anjana Vakil (2016)
Angular + React = Speed [00:19:27] by Dave Smith (2015)
Benchmarking JavaScript [00:40:54] by Vyacheslav Egorov (2015)
ECMAScript 6 & Web Components [00:36:11] by Brian LeRoux (2015)
Ember 2.0 [00:40:21] by Erik Bryn (2015)
If you wish to learn ES6/2015 from scratch, you must first invent the universe [00:25:49] by Ashley Williams (2015)
Immutable Data and React [00:31:10] by Lee Byron (2015)
Improving Your Workflow With Code Transformation [00:30:18] by Sebastian McKenzie (2015)
j2me.js - a multi-threaded Java VM in JavaScript [00:44:10] by Andreas Gal (2015)
10 Angular JS Patterns [01:01:27] by John Papa (2014)
Async JavaScript with Reactive Extensions [00:28:39] by Jafar Husain (2014)
Build Production Ready Javascript Apps With Grunt [00:40:51] by Shai Reznik (2014)
ES6 and 7, the future of JS [01:07:12] by Brendan Eich (2014)
Functional programming patterns for the non-mathematician [00:29:58] by Brian Lonsdorf (beware; the pace is somewhat high) (2014)
Immutability, interactivity & JavaScript [00:26:20] by David Nolen (2014)
Javascript Combinators [00:54:55] by Reginald Braithwaite (2014)
Large Scale JavaScript Application Architecture [00:50:40] by Dan Lynch (2014)
Node.js in 20 Minutes [00:23:08] by Edmond Meinfelder (2014)
Raw WebGL [00:55:21] by Nick Desaulniers (2014)
Reactive Game Development For The Discerning Hipster [00:31:06] by Bodil Stokke (2014)
The Art of the Javascript Metaobject Protocol [00:58:06] by Reginald Braithwaite (2014)
The Art of the JavaScript Metaobject Protocol: Duck Typing, Compatibility, and the Adaptor Pattern [00:26:29] by Reginald Braithwaite (2014)
Version 7: The Evolution of JavaScript [01:11:54] by Jafar Husain (2014)
What the heck is the event loop anyway? [00:26:53] by Philip Roberts (2014)
Bringing Angular Apps to Life with Animation [00:42:38] by Miško Hevery (2013)
Classical Inheritance is Obsolete - How to Think in Prototypal OO [00:43:18] by Eric Elliott (2013)
Constraint programming in the browser [00:28:15] by Adam Solove (2013)
Creating A Scalable JavaScript Application Architecture [00:41:54] by Nicholas Zakas (2013)
Design Decisions in AngularJS [00:40:00] by Brad Green & Miško Hevery (2013)
Dissecting WebGL [01:11:04] by Justin Windle (2013)
Is Node.js Better [00:41:43] by Brian Ford (2013)
Monads and Gonads [00:49:48] by Douglas Crockford (2013)
Really. JavaScript. [00:46:10] by Douglas Crockford (2013)
Redemption from Callback Hell [00:50:25] by Michael Jackson & Domenic Denicola (2013)
Snappy Performance Apps with Ember.js [00:28:39] by Anthony Bull (2013)
Solving the real callback hell [00:21:54] by Tim Ruffles (2013)
The first ever presentation on Node.js [00:48:31] by Ryan Dahl (2012)
Crockford on JavaScript by Douglas Crockford (2011) (it's 10 hours long!)
Introduction to Node.js [00:58:18] by Ryan Dahl (2010)
What's Bad About Julia [00:30:39] by Jeff Bezanson (2019)
The Unreasonable Effectiveness of Multiple Dispatch [00:35:23] by Stefan Karpinski (2019)
Julia as a platform for language development [00:28:20] by Jamie Brandon (2018)
Introduction to Writing High Performance Julia (Workshop) [02:48:30] by Arch D. Robison (2016)
Julia 1.0 [00:29:46] by Stefan Karpinski (2016)
Machine Code [00:38:11] by Jameson Nash (2016)
The Two Cultures of Programming [00:29:40] by Joshua Ballanco (2016)
Convex Optimization in Julia [00:40:12] by Madeleine Udell (2014)
Crossing Language Barriers with Julia, SciPy,IPython [01:11:18] by Stephen G. Johnson (2014)
Python and Julia. Why do we need another language? [00:26:19] by Dwight J. Browne (2014)
(There is a good list of talks about Python to be found here)
A Talk near the Future of Python? [01:01:11] by David Beazley (2019)
Understanding Python Bytecode [00:29:44] by James Bennett (2018)
Grok the GIL - Write Fast And Thread Safe Python [00:41:29] by A. Jesse Jiryu Davis (2017)
The Dictionary Even Mightier [00:47:21] by Brandon Rhodes (2017)
The Python Visualization Landscape [00:33:30] by Jake VanderPlas (2017)
What Does It Take To Be An Expert At Python? [01:52:02] by James Powell (2017)
Builtin Super Heroes [00:42:13] by David Beazley (2016)
Finding closures with closures [00:31:05] by Thomas Ballinger (2016)
Flask for Fun and Profit [01:01:23] by Armin Ronacher (2016)
Machete-mode debugging: Hacking your way out of a tight spot [00:35:13] by Ned Batchelder (2016)
Python and Johnny Cash [00:43:15] by James Powell (2016)
Removing Python's GIL: The Gilectomy [00:32:06] by Larry Hastings (2016)
Statistics for Hackers [00:40:44] by Jake Vanderplas (2016)
Advanced Data Storage [01:19:39] by Thomas Pfaff (2015)
Beyond PEP 8 - Best practices for beautiful intelligible code [00:52:05] by Raymond Hettinger (2015)
Bytes in the Machine: Inside the CPython interpreter [00:34:33] by Allison Kaptur (2015)
Facts and Myths about Python names and values [00:25:20] by Ned Batchelder (2015)
How to Be More Effective with Functions [00:29:39] by Brett Slatkin (2015)
How to build a brain with Python [00:35:22] by Trevor Bekolay (2015)
Investigating Python Wats [00:24:09] by Amy Hanlon (2015)
Is Your REST API RESTful? [00:45:31] by Miguel Grinberg (2015)
Keynote at PyCon Brasil 2015 [00:56:29] by David Beazley (about asyncio) (2015)
Losing your Loops Fast Numerical Computing with NumPy [00:30:31] by Jake VanderPlas (2015)
Modules and Packages: Live and Let Die! [03:02:34] by David Beazley (2015)
My Python's a little Rust-y [00:29:18] by Dan Callahan (2015)
Oh, Come On Who Needs Bytearrays [00:44:24] by Brandon Rhodes (2015)
Porting Python to run without an OS [00:32:57] by Josh Triplett (2015)
PyPy.js: What? How? Why? [00:30:13] by Rian Kelly (2015 version) (2015)
Python Concurrency From the Ground Up: LIVE! [00:46:50] by David Beazley (2015)
Serialization formats are not toys [00:29:54] by Tom Eastman (2015)
Side Effects are a Public API [00:38:26] by Christopher Armstrong (2015)
Super considered super! [00:46:52] by Raymond Hettinger (2015)
Terminal whispering [00:28:07] by Thomas Ballinger (2015)
Type Hints [00:49:26] by Guido van Rossum (2015)
All Your Ducks In A Row: Data Structures in the Std Lib and Beyond [00:37:40] by Brandon Rhodes (2014)
Decorators: A Powerful Weapon in your Python Arsenal [00:31:31] by Colton Myers (only about function decorators) (2014)
Discovering Python [00:47:50] by David Beazley (2014)
Fast Python, Slow Python [00:36:11] by Alex Gaynor (2014)
Flask by Example [03:40:29] by Miguel Grinberg (2014)
Generators: The Final Frontier [03:50:55] by David Beazley (2014)
Getting Hy on Python: How to implement a Lisp front-end to Python [00:47:09] by Paul Tagliamonte (2014)
Outlier Detection in Time Series Signals [00:36:30] by Bugra Akyildiz (2014)
PyPy.js: What? How? Why? [00:25:38] by Ryan Kelly (2014 version) (2014)
The Cython Compiler for Python [00:48:01] by Dr. Stefan Behnel (2014)
Up and Down the Python Data and Web Visualization Stack [00:39:18] by Rob Story (2014)
Does your stuff scale? [00:24:31] by Steven Holmes (2013)
Introduction to SQLAlchemy [02:48:48] by Mike Bayer (2013)
Learn Python Through Public Data Hacking [02:38:22] by David Beazley (2013)
Loop like a native: while, for, iterators, generators [00:29:15] by Ned Batchelder (2013)
Python 3 Metaprogramming [03:24:00] by David Beazley (2013)
Super Advanced Python [01:38:56] by Raymond Chandler (2013)
Transforming Code into Beautiful, Idiomatic Python [00:48:51] by Raymond Hettinger (2013)
A Python Æsthetic: Beauty and Why I Python [00:46:56] by Brandon Rhodes (2012)
Inside the Python GIL [01:01:03] by David Beazley (2012)
pandas: Powerful data analysis tools for Python [00:34:38] by Wes McKinney (2012)
Python Epiphanies [02:21:44] by Stuart Williams (PDF version/code can be found here) (2012)
Python Metaprogramming for Mad Scientists and Evil Geniuses [00:37:13] by Walker Hale (2012)
Stop Writing Classes [00:27:29] by Jack Diederich (2012)
Understanding the Python GIL [00:46:10] by David Beazley (2012)
pyREtic: Reversing Obfuscated Python Bytecode Live Python Objects [01:00:24] by Rich Smith (2010)
Slightly Advanced Python: Some Python Internals [00:59:36] by Alex Martelli (2008)
What Killed Smalltalk Could Kill Ruby, Too [01:00:55] by Robert Martin (2009)
Writing Ruby Like it’s 2018 [00:11:53] by Joe Leo III (2018)
Composition [00:47:55] by James Dabbs (2016)
Halve Your Memory Usage With These 12 Weird Tricks [00:45:30] by Nate Berkopec (2016)
How Are Method Calls Formed? [00:52:16] by Aaron Patterson (2016)
Metaprogramming? Not good enough! [00:36:09] by Justin Weiss (2016)
Methods of Memory Management in MRI [00:48:48] by Aaron Patterson (2016)
Building a binary protocol client in Ruby: A magical journey! [00:30:27] by Trevor Rosen and egypt (James Lee) (2015)
Fun with the Lambda Calculus [00:48:48] by Corey Haines (2015)
How to Performance [00:30:03] by Eileen Uchitelle (2015)
Inside Ruby's VM: The TMI Edition [00:39:10] by Aaron Patterson (2015)
Nothing is Something [00:35:52] by Sandi Metz (2015)
Softly, softly typing [00:44:33] by John Cinnamond (2015)
Refactoring Ruby with Monads [00:30:04] by Tom Stuart (2014)
Speed up Rails, Speed up Your Code [00:41:04] by Aaron Patterson (2014)
A Rubyist in Clojure-land [00:37:50] by David Chelimsky (2013)
Pry - The Good Parts! [00:33:33] by Conrad Irwin (2013)
REPL driven development with Pry [00:39:26] by Conrad Irwin (2013)
Ruby, threads, events ... and Flying Robots! [01:12:54] by Jim Weirich (2013)
That's Not Very Ruby of You [00:36:57] by Ernie Miller (2013)
You Gotta Try This [00:45:12] by Avdi Grimm (2013)
Confident Code [00:31:24] by Avdi Grimm (2012)
Make awesome command line apps with Ruby [00:28:57] by Dave Copeland (2012)
MiniTest: Write Awesome Tests [00:32:27] by Michael J.I. Jackson (2012)
Programming With Nothing [00:40:50] by Tom Stuart (2012)
Y Not - Adventures in Functional Programming [00:53:22] by Jim Weirich (2012)
Rust at speed - building a fast concurrent database [00:52:53] by Jon Gjengset (2018)
Using Rust For Game Development [00:42:29] by Catherine West (2018)
Building Rocket [00:33:15] by Sergio Benitez (2017)
How I Convinced the World's Largest Package Manager to Use Rust, and So Can You! [00:37:33] by Ashley Williams (2017)
Shipping a Solid Rust Crate [00:22:08] by Michael Gattozzi (2017)
Back to the Futures [00:29:53] by Alex Crichton (2016)
In Rust We Trust [00:45:01] by Alex Burkhardt (2016)
RFC: In Order to Form a More Perfect `union` [00:28:21] by Josh Triplet (2016)
Rusty Runtimes [00:35:30] by Aditya Siram (2016)
Rust: Safe and Scalable Systems Programming [01:00:09] by Alex Crichton (2016)
The History of Rust [00:58:41] by Steve Klabnik (2016)
The /r/playrust Classifier [00:30:34] by Suchin Gururangan & Colin O'Brien (2016)
Using Generics Effectively [00:23:42] by Without Boats (2016)
What Rust can teach us about Ruby [00:34:07] by Steve Klabnik (2015)
Cap'n Proto and Rust: Type Systems for Sharing [00:40:47] by David Renshaw (2014)
Concurrency in Rust [00:31:24] by Alex Crichton (2014)
Move Over Free Monads: Make Way for Free Applicatives! [00:45:29] by John de Goes (2016)
The Dialectics of Type-Level Programming [00:41:04] by Aaron Levin (2016)
Lawful Asynchronous Programming [01:04:31] by Daniel Spiewak (2015)
Minimizing the Slippery Surface of Failure [00:59:26] by Jon Pretty (2015)
Principles for Modular, Functional, Approachable Libraries [01:32:44] by Erik Osheim (2015)
Run free with the monads: Free Monads for fun and profit [00:22:11] by Ken Scrambler (2015)
Simplifying Scala Collections [00:46:52] by Bill Venners (2015)
How types can turn a SQL interpreter into a SQL compiler [00:40:31] by Tiark Rompf (2014)
Scala Collections: Why Not? [00:45:42] by Paul Phillips (beware: not very optimistic!) (2014)
Concurrency Anti-Patterns in Scala [00:29:53] by Blake Matheny (2013)
Scala Monads: Declutter Your Code With Monadic Design [00:31:22] by Dan Rosen (2012)
Scala Versus Java [01:32:35] by Dan Rosen (2012)
What's Next for Scala [01:15:06] by Martin Odersky (2011)
Those are not necessarily programming-related and possibly very advanced mathematics.
Generally, a lot of talks are welcome on this list. The topic does not matter too much - it should be linked to Computer Science - but the format does. Talks are welcome if
I hope that is straightforward, understandable and makes sense.
When adding a new section/subsection or entry, please try to ensure it's sorted accordingly:
The two top-level sections (Languages and Theory) have their subsection headings organised alphabetically (APL
> VimL
).
The Languages subsections are sorted ascending by year (last field), then alphabetically by title. For example, an entry with (2012)
should be below one with (2017)
regardless of title; entries from the same year are then alphabetised within each year-group.
<br>\n
(<br>
followed by an empty line), except if a group would contain only a few (<= 3) talks and it is near another small group, in which case small adjacent year-groups are consolidated. An entry or two might also be included in an adjacent larger year-group iff the entries have different years.The Theory subsections are sorted only ascendingly by year, with no attention to title, and no grouping by year.