#Programming Talks
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 languages specifics as well as a more general section I call "theory", but do not 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!
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.
###Names to look out for
To make choosing the right speakers a tad easier, let me give you a quick overview over my favourite speakers in no particular order:
- Scott Meyers(C++): Scott Meyers is one of the most entertaining and knowledgeable speaker when it comes to all things C++. His talks cover a variety of topics, from type inference to API design and cache lines.
- Rich Hickey(Clojure): I am not a Clojure programmer, but I like reasoning about and building programming languages. Even if you don't, Rich Hickeys talks are inspiring and thought-provoking. Whenever he talks about the fundamentals of programming and reasoning, you are sure to learn a ton. Oh, and if you program in Clojure, you have no excuse for not watching this guy speak.
- Reginald Braithwaite(JavaScript): one of my favourite JavaScript speakers. He also has a variety of talks on my list, but is more true to his realm (JavaScript) than most of the other speakers on my list.
- David Nolen(Clojure/Clojurescript): The core maintainer of Clojurescript. His talks mostly focus on immutability and share a bit of their structure. He doesn't get boring, though, and is another very smart person with deep insights in such fields as immutability.
- David Beazley(Python): The person who singlehandedly made me a Pythonista. Need I say more? He has a lot of low-level knowledge about Python and makes poking at the Python interpreter seem more fun than it actually is.
- Joe Armstrong(Erlang): One of the few people I actually had the chance to see live already. He is a funny, witty and smart guy and if you want to learn about Erlang, watch his talks. Most of his talks are also very beginner-friendly.
- Brandon Rhodes(Python): Yet another Pythonista. His talks are enjoyable, enlightening and his way of talking is just enjoyable - you might think that is secondary, but it is really important. His talk on Tolkien is one of the most enjoyable diversions on this list (and a bit off-topic, mind you).
###On Programming Languages
####C
- Advanced C Coding For Fun! [00:46:53] by Rusty Russell
- Writing application fault handlers by Gilad Ben-Yossef
####Clojure
- 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)
- Clojure Concurrency [02:32:39] by Rich Hickey
- Persistent Data Structures and Managed References by Rich Hickey
- Design, Composition and Performance by Rich Hickey
- Making Games at Runtime with Clojure [00:37:34] by Zach Oakes (He's a very funny guy!)
- Clojure Data Science [00:32:40] by Edmund Jackson
- Machine Learning Live [00:27:38] by Mike Anderson
- ClojureScript: Lisp's Revenge [00:32:03] by David Nolen
- Clojure Library Core.async for Asynchronous Programming [00:55:32] by David Nolen
- Make Your Own Lisp [00:53:52] by Bodil Stokke
- ClojureScript + React.js: How I learned to stop worrying and love the browser [00:52:24] by Norbert Wójtowicz
- ClojureScript for Skeptics [00:41:08] by Derek Slager
- Solving Problems with Automata [00:38:03] by Mark Engelberg & Alex Engelberg
- Om Next [00:39:22] by David Nolen
- Genetic Programming in Clojure [00:40:07] by Lee Spector
- Specter: overcome your fear of nested Clojure data [00:41:50] by Nathan Marz
- From REST to CQRS with Clojure, Kafka, & Datomic [00:44:24] by Bobby Calderwood
- Game Development Development [00:35:09] by Michael Nygard & Ragnar Svensson
- Typed Clojure in Practice [00:41:59] by Ambrose Bonnaire
- Clojure for Schemers [01:17:27] by David Nolen
- Variants are Not Unions [00:37:53] by Jeanine Adkisson
- Always Be Composing [00:35:11] by Zach Tellman
- Clojure core.async [00:44:25] by Rich Hickey
- Core.Async [00:39:45] by Timothy Baldridge
- Full stack FP in Datomic, Clojure, and ClojureScript [00:51:30] by Priyatam Mudivarti
####C++
- C++17: I See A Monad In Your Future [01:20:59] by Bartosz Milewski
- Using C++11 to speed up your Qt 5 programs [00:46:47] by Marc Mutz
- Don't Help the Compiler [01:17:00] by Stephan Lavavej
- The Effective C++11/14 Sampler by Scott Meyers
- The Last Thing D Needs [00:54:55] by Scott Meyers
- Support for Embedded Programming in C++11 and C++14 [01:12:52] by Scott Meyers
- Type Deduction and Why You Care [01:09:34] by Scott Meyers
- C++ Seasoning by Sean Parent
- Efficiency with Algorithms, Performance with Data [01:13:41] by Chandler Carruth
- Back to the Basics! Essentials of Modern C++ Style [01:40:27] by Herb Sutter
- Lock-Free Programming (or, Juggling Razor Blades): This talk has two parts. I recommend taking a short break after watching the first part.
- Writing Quick Code in C++, Quickly [01:11:37] by Andrei Alexandrescu
- Optimization Tips - Mo' Hustle Mo' Problems [00:58:19] by Andrei Alexandrescu
- Optimizing the Emergent Structures of C++ [01:33:02] by Chandler Carruth (somewhat annoyingly bad quality)
- Making C++ Code Beautiful [00:56:23] by James McNellis & Kate Gregory
- C++11 Style - A Touch of Class [01:29:48] by Bjarne Stroustrup
- Plain Threads are the GOTO of todays computing [01:27:36] by Hartmut Kaiser
- Scaling with C++11 [01:18:27] by Edouard Alligand
- On Static If, C++11 in 2012, Modern Libraries, and Metaprogramming by Andrei Alexandrescu, Scott Meyers & Herb Sutter
- Pragmatic Type Erasure: Solving OOP Problems with Elegant Design Pattern [00:43:47] by Zach Laine
- Tuning C++: Benchmarks, and CPUs, and Compilers! Oh My! [01:29:53] by Chandler Carruth
- C++ on Mars: Incorporating C++ into Mars Rover Flight Software [01:26:18] by Mark Maimone
- Transducers: from Clojure to C++ [01:00:03] by Juan Pedro Bolívar
####CSS (yeah, I know, stylesheets are not traditionally programming)
- CSS Levels Up [00:31:39] by Angelina Fabbro
- Your CSS is a Mess [00:51:26] by Jonathan Snook
- CSS Performance Tooling [00:46:28] by Addy Osmani
- Stuff About Cascading Style Sheets [00:20:52] by Mark Otto & Connor Sears
- Your Very Own Component Library [00:20:04] by Alex Sexton
####D
- High Performance Code Using D [00:58:52] by Walter Bright
- Refactoring JIT Compilation [00:43:57] by Maxime Chevalier-Boisvert
- SDC, a D Compiler as a Library [00:48:37] by Amaury Sechet
####Elixir
- Think Different by Dave Thomas
- Elixir: The Power of Erlang, the Joy of Ruby [00:49:42] by Dave Thomas
- elixir Conf 2014 Keynote [00:59:32] by Jose Valim
- Phoenix - Productive. Reliable. Fast. by Chris McCord
####Elm
- Controlling Time and Space: understanding the many formulations of FRP [00:40:55] by Evan Czaplicki
####Erlang
- Writing Quality Code in Erlang [00:40:47] by Garreth Smith
- Erlang: Evolution [00:37:24] by Robert Virding
- Implementing Languages on the BEAM [01:47:47] by Robert Virding
- How To Ship New Code Without Taking Your System Down [00:32:47] by Martin Rehfeld
- Why The Cool Kids Don't Use Erlang [00:51:55] by Garreth Smith
- 26 years with Erlang or How I got my grey hairs [01:20:00] by Joe Armstrong
- The How and Why of Fitting Things Together [00:46:40] by Joe Armstrong
- Using Logic Programming Tools to Drive Property-based Testing [00:34:45] by Zachary Kessin
- Chicago Boss: A Web Framework Built for Comfort (and Speed) [00:45:59] by Evan Miller
- Optimizing Native Code for Erlang [00:26:46] by Steve Vinoski
####Go
- Go Concurrency Patterns [00:51:27] by Rob Pike
- The move from C to Go in the toolchain by Rob Pike
- Advanced Go Concurrency Patterns [00:34:11] by Sameer Ajmani
- Parctical Go Programming [00:59:20] by Andrew Gerrand
- Go for Pythonistas [00:51:17] by Francesc Campoy Flores
- High Performance Systems in Go [00:29:39] by Derek Collison
- Communicating Sequential Processes [00:43:21] by Eric Shull
####Haskell
- Demystifying Haskell [00:26:11] by Andrew Rademacher (for Beginners)
- The Algebra In Algebraic Data Types [01:04:35] by Chris Taylor
- Writing a game in Haskell [00:29:37] by Elise Huard
- Lenses, Folds, and Traversals [01:54:46] by Edward Kmett
- Haskell Amuse-Bouche [00:57:13] by Mark Lentczner (the audio quality is scarily bad)
- Enigmatic Haskell, Haskellish Enigma [00:59:41] by Rishiyur S. Nikhil
- Pure Type Systems [01:17:01] by Cody Roux
- Framing the Discussion with EDSLs [01:41:41] by Anthony Cowley (There is a repository containing the slides and code here)
- Introduction to Low Level Haskell Optimization [01:09:40] by Dan Doel
- 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)
- 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)
- Safe Zero-Cost Coercions for Haskell [00:26:01] by Richard A. Eisenberg
- How Haskell is Changing my Brain by Alissa Pajer
####Idris
- Type-Driven Development in Idris [00:46:35] by Edwin Brady
####Java & Android
- Java - The Good, Bad and Ugly Parts [00:14:34] by Josh Bloch
- A Few Ok Libraries [01:09:20] by Jake Wharton
- Common crypto mistakes in Android by Isaax Potoczny-Jones
- Effective Java; Still Effective After All These Years [01:13:59] by Joshua Bloch
- Functional Reactive Programming with RxJava [00:49:27] by Ben Christensen
- Java 8 Lambda Expressions & Streams [01:43:53] by Adib Saikali
- Java 8 Language Capabilities, What's in it for you? [01:25:28] by Venkat Subramaniam
- Living in the Matrix with Bytecode Manipulation [00:55:01] by Ashley Puls
- JVM Bytecode for Dummies (and the Rest of Us Too) [00:50:34] by Charles O.o Nutter
- Recursion Schemes [01:50:29] by Tim Williams
- Fast as C: How to write really terrible Java by Charles Oliver Nutter
####JavaScript (There is a good list of talks about JS to be found here)
- Node.js in 20 Minutes [00:23:08] by Edmond Meinfelder
- Crockford on JavaScript by Douglas Crockford (it's 10 hours long!)
- Really. JavaScript. [00:46:10] by Douglas Crockford
- Monads and Gonads [00:49:48] by Douglas Crockford
- Introduction to Node.js by Ryan Dahl
- Is Node.js Better [00:41:43] by Brian Ford
- Creating A Scalable JavaScript Application Architecture [00:41:54] by Nicholas Zakas
- Large Scale JavaScript Application Architecture [00:50:40] by Dan Lynch
- Dissecting WebGL by Justin Windle (you might want to take a look at the slides, you cannot really see them well)
- 10 Angular JS Patterns [01:01:27] by John Papa
- Design Decisions in AngularJS [00:40:00] by Brad Green & Miško Hevery
- Bringing Angular Apps to Life with Animation [00:42:38] by Miško Hevery
- ES6 and 7, the future of JS by Brendan Eich
- What the heck is the event loop anyway? [00:26:53] by Philip Roberts
- Build Production Ready Javascript Apps With Grunt [00:40:51] by Shai Reznik
- Javascript Combinators by Reginald Braithwaite
- The Art of the Javascript Metaobject Protocol by Reginald Braithwaite
- The Art of the JavaScript Metaobject Protocol: Duck Typing, Compatibility, and the Adaptor Pattern by Reginald Braithwaite
- Functional programming patterns for the non-mathematician [00:29:58] by Brian Lonsdorf (beware; the pace is somewhat high)
- Hey Underscore, You're Doing It Wrong! [00:36:31] by Brian Lonsdorf
- Version 7: The Evolution of JavaScript [01:11:54] by Jafar Husain
- Redemption from Callback Hell [00:50:25] by Michael Jackson & Domenic Denicola
- Async JavaScript with Reactive Extensions [00:28:39] by Jafar Husain
- Immutability, interactivity & JavaScript [00:26:20] by David Nolen
- Raw WebGL [00:55:21] by Nick Desaulniers
- How to effortlessly integrate Three.js into your projects [00:22:00] by Jason Farrell (not as technical as the other *GL talks)
- Classical Inheritance is Obsolete - How to Think in Prototypal OO by Eric Elliott
- Reactive Game Development For The Discerning Hipster [00:31:06] by Bodil Stokke
- Angular + React = Speed [00:19:27] by Dave Smith
- j2me.js - a multi-threaded Java VM in JavaScript [00:44:10] by Andreas Gal
- If you wish to learn ES6/2015 from scratch, you must first invent the universe [00:25:49] by Ashley Williams
- Constraint programming in the browser [00:28:15] by Adam Solove
- Snappy Performance Apps with Ember.js [00:28:39] by Anthony Bull
- Ember 2.0 [00:40:21] by Erik Bryn
- Solving the real callback hell [00:21:54] by Tim Ruffles
####Julia
- Python and Julia. Why do we need another language? [00:26:19] by Dwight J. Browne
- Crossing Language Barriers with Julia, SciPy,IPython [01:11:18] by Stephen G. Johnson
- Convex Optimization in Julia [00:40:12] by Madeleine Udell
####Objective C
- RACify Non-Reactive Code [00:24:23] by Dave Lee
####OCaml
- Caml Trading [01:12:43] by Yaron Minsky
####PureScript
- PureScript (Maybe This Time We Get JavaScript Right) [00:44:31] by Bodil Stokke
####Python (There is a good list of talks about Python to be found here)
- Stop Writing Classes by Jack Diederich
- Super Advanced Python [01:38:56] by Raymond Chandler
- Python 3 Metaprogramming [03:24:00] by David Beazley
- Discovering Python [00:47:50] by David Beazley
- Generators: The Final Frontier [03:50:55] by David Beazley
- Understanding the Python GIL [00:46:10] by David Beazley
- Inside the Python GIL [01:01:03] by David Beazley
- Learn Python Through Public Data Hacking [02:38:22] by David Beazley
- Python Concurrency From the Ground Up: LIVE! [00:46:50] by David Beazley
- Modules and Packages: Live and Let Die! [03:02:34] by David Beazley
- The Cython Compiler for Python [00:48:01] by Dr. Stefan Behnel
- Python Metaprogramming for Mad Scientists and Evil Geniuses [00:37:13] by Walker Hale
- pandas: Powerful data analysis tools for Python [00:34:38] by Wes McKinney
- Loop like a native: while, for, iterators, generators [00:29:15] by Ned Batchelder
- Decorators: A Powerful Weapon in your Python Arsenal [00:31:31] by Colton Myers (only about function decorators)
- Transforming Code into Beautiful, Idiomatic Python [00:48:51] by Raymond Hettinger
- Beyond PEP 8 - Best practices for beautiful intelligible code [00:52:05] by Raymond Hettinger
- Super considered super! [00:46:52] by Raymond Hettinger
- A Python Æsthetic: Beauty and Why I Python [00:46:56] by Brandon Rhodes
- Python Epiphanies [02:21:44] by Stuart Williams (PDF version/code can be found here)
- PyPy.js: What? How? Why? [00:25:38] by Ryan Kelly (2014 version)
- PyPy.js: What? How? Why? [00:30:13] by Rian Kelly (2015 version)
- Type Hints [00:49:26] by Guido van Rossum
- Terminal whispering [00:28:07] by Thomas Ballinger
- Serialization formats are not toys [00:29:54] by Tom Eastman
- Slightly Advanced Python: Some Python Internals [00:59:36] by Alex Martelli
- Getting Hy on Python: How to implement a Lisp front-end to Python [00:47:09] by Paul Tagliamonte
- Fast Python, Slow Python [00:36:11] by Alex Gaynor
- Flask by Example [03:40:29] by Miguel Grinberg
- Outlier Detection in Time Series Signals [00:36:30] by Bugra Akyildiz
- Up and Down the Python Data and Web Visualization Stack [00:39:18] by Rob Story
- Advanced Data Storage [01:19:39] by Thomas Pfaff
- Introduction to SQLAlchemy by Mike Bayer
- Facts and Myths about Python names and values [00:25:20] by Ned Batchelder
- How to build a brain with Python [00:35:22] by Trevor Bekolay
- Porting Python to run without an OS [00:32:57] by Josh Triplett
- Losing your Loops Fast Numerical Computing with NumPy [00:30:31] by Jake VanderPlas
- How to Be More Effective with Functions [00:29:39] by Brett Slatkin
- Oh, Come On Who Needs Bytearrays [00:44:24] by Brandon Rhodes
- Investigating Python Wats [00:24:09] by Amy Hanlon
- Is Your REST API RESTful? [00:45:31] by Miguel Grinberg
- pyREtic: Reversing Obfuscated Python Bytecode Live Python Objects by Rich Smith
- Bytes in the Machine: Inside the CPython interpreter [00:34:33] by Allison Kaptur
- My Python's a little Rust-y [00:29:18] by Dan Callahan
- Does your stuff scale? [00:24:31] by Steven Holmes
- Keynote at PyCon Brasil 2015 [00:56:29] by David Beazley (about asyncio)
####Racket
- Generic Collections: One Interface to Rule Them All [00:18:26] by Alexis King
- Generic Syntax Expanders and Extensible Macros [00:16:26] by Jack Firth
- Purely Functional 3D in Typed Racket [00:22:15] by Neil Toronto
- Racket: A Programming-Language Programming Language [00:51:42] by Robby Findler
####Ruby
- Programming With Nothing [00:40:50] by Tom Stuart
- Y Not - Adventures in Functional Programming by Jim Weirich
- Make awesome command line apps with Ruby [00:28:57] by Dave Copeland
- Confident Code [00:31:24] by Avdi Grimm
- Building a binary protocol client in Ruby: A magical journey! [00:30:27] by Trevor Rosen and egypt (James Lee)
####Rust
- In Rust We Trust [00:45:01] by Alex Burkhardt
- Concurrency in Rust [00:31:24] by Alex Crichton
####Scala
- Scala Monads: Declutter Your Code With Monadic Design [00:31:22] by Dan Rosen
- Scala Versus Java [01:32:35] by Dan Rosen
- What's Next for Scala [01:15:06] by Martin Odersky
- Scala Collections: Why Not? [00:45:42] by Paul Phillips (beware: not very optimistic!)
- Concurrency Anti-Patterns in Scala [00:29:53] by Blake Matheny
- Run free with the monads: Free Monads for fun and profit by Ken Scrambler
- Minimizing the Slippery Surface of Failure [00:59:26] by Jon Pretty
- Simplifying Scala Collections [00:46:52] by Bill Venners
- Lawful Asynchronous Programming [01:04:31] by Daniel Spiewak
####Swift
- Swift Programming Language for JavaScript Developers [00:41:19] by J.P. Simard
- Thinking in Swift by Abizer Nasir
####VimL
- Vim - I Wish I Knew How To :q You [00:41:08] by Chris Maiden (not really about VimL, more of a general introduction into vim)
- More Instantly Better Vim [00:38:51] by Damian Conway
- Write code faster: expert-level vim [00:41:09] by Ben Orenstein (not really expert level)
####Miscellaneous
- WAT by Gary Bernhardt
- The Birth & Death of JavaScript by Gary Bernhardt
- Linus Torvalds on git [01:10:15] by Linus Torvalds
- Linux Sucks - 2014 [00:44:59] by Bryan Lunduke
- You can be a kernel hacker! [00:33:31] by Julia Evans
###On theory ####Thoughts on the Industry/Community
- PyCon 2015 Keynote [00:35:51] by Jacob Kaplan-Moss
- What can programmers learn from pilots? [00:31:07] by Andrew Godwin
- Being Human [00:19:45] by Brian J. Brennan (not technical, but very important)
####Thoughts on Languages
- Why C++ Sails When the Vasa Sank [01:07:03] by Scott Meyers
- Make Simple Tasks Simple! [01:37:36] by Bjarne Stroustrup
- Running a startup on Haskell [00:50:23] by Bryan O'Sullivan
- Dan Friedman - Cool Ideas [00:57:01] by Guy Steele
- Simplicity is Complicated [00:23:11] by Rob Pike
####Software Development
- Programming is terrible - Lessons learned from a life wasted [01:06:44] by Thomas Figg
- Growing a Language [00:53:31] by Guy Steele
- The Mess We're In [00:45:50] by Joe Armstrong
- Are We There Yet? by Rich Hickey
- Simple Made Easy by Rich Hickey
- Simplicity Matters [00:36:54] by Rich Hickey (Simple Made Easy revisited)
- Hammock Driven Development [00:39:49] by Rich Hickey
- The Value Of Values by Rich Hickey
- The Language of the System [01:02:50] by Rich Hickey
- The Future of Programming [00:32:56] by Bret Victor
- Inventing on Principle [00:54:20] by Bret Victor
- The Most Important Design Guideline [00:58:42] by Scott Meyers
- CPU Caches and Why You care by Scott Meyers (written in C++, reasonable for almost every software developer)
- Thinking Above the Code [00:59:51] by Leslie Lamport
- I have a good feeling about this - Why tooling is poised to make the jump to hyperspace by Reginald Braithwaite
- The Not-So-Big Software Design [00:47:31] by Reginald Braithwaite
- The Future Doesn't Have to Be Incremental [00:43:50] by Alan Kay
- The S.O.L.I.D. Principles of Agile OO Design [01:23:35] by Robert C. Martin (way more interesting than it sounds)
- Whence Complexity? [00:55:32] by Michael Nygard
- What does it mean to be Reactive? [00:46:39] by Erik Meijer
- Demystifying Docker [00:29:53] by Andrew T. Baker
- Big Code: Developer Infrastructure at Facebook's Scale by Bryan O'Sullivan, Christian Legnitto & Katie Coons
- Kicking the Complexity Habit [00:55:30] by Dan North
####Debugging
- Debugging with the Scientific Method [00:49:08] by Stuart Halloway
####Compilers/Interpreters
- Parsing with Derivatives [01:13:10] by Matthew Might
- The Clang AST [00:44:53] by Manuel Klimek
- Writing a Nanopass Compiler [00:40:48] by Andy Keep
- Superoptimizing LLVM [00:49:07] by John Regehr
- Implementing Domain Specific Languages with LLVM [00:50:59] by David Chisnall
- PTX Back-End: GPU Programming With LLVM [00:39:34] by Justin Holewinski
- Intel OpenCL SDK Vectorizer [00:35:45] by Natav Rotem
- Rise of the Transpilers [00:44:00] by Jeremy Ashkenas
- How the PyPy JIT works [00:29:05] by Benjamin Peterson
- A VM is a VM is a VM: The Secret Path to High Performance Multi-Language Runtimes [00:47:07] by Mark Stoodley
- Ruby and OMR: Experiments in utilizing OMR technologies in MRI [00:45:38] by Charlie Gracie
- VM Design Choices [01:01:38] by Cliff Click
- Bits of advice for VM writers [00:43:59] by Cliff Click
####Programming Language Design
- The Worst Programming Language Ever by Mark Rendle (there is a bit of static humming in the background and the sound quality is not all that great, but it's worth it)
- Papers We Love: Fundamental Concepts in Programming Languages [01:16:39] by John Myles White
- Eve [00:46:03] by Chris Granger
- Propositions as Types [00:42:42] by Philip Wadler
- Let's be mainstream! User focused design in Elm [00:58:23] by Evan Czaplicki
- Pixie - A Lightweight Lisp with 'Magical' Powers [00:33:12] by Timothy Baldridge (a good intro on tracing JITs)
- Transducers [00:45:00] by Rich Hickey
- The Sociology of Programming Languages [00:42:11] by Leo Meyerovich
- Implement an Esoteric Programming Language for Fun [00:22:16] by Arne Martin Aurlien
- A Dinosaur's Thoughts on Programming Language Evolution by Matthew Flatt
- Lisp Flavoured Erlang [01:02:49] by Robert Virding
- Syntaxation [00:49:39] by Douglas Crockford
- Make Your Own Programming Language! [00:26:07] by Nick Heiner
####Data Structures & Algorithms
- Hash Functions and You: Partners in Freedom [00:27:06] by Curtis Lassam
####Databases
- Introduction to NoSQL [00:54:52] by Martin Fowler
- Deconstructing the Database [01:06:24] by Rich Hickey
- Postgres Performance for Humans [00:33:49] by Craig Kerstiens
####Functional Programming
- Functional Principles for Object Oriented Development [00:51:13] by Jessica Kerr
- Adventures in Functional Programming by Jim Weirich
- Deconstructing Functional Programming by Gilad Bracha
- Living in a Post-Functional World by Daniel Spiewak
- Tangible Functional Programming [00:56:25] by Conal Elliott
- Faith, Evolution, and Programming Languages [01:06:54] by Phillip Wadler
- Don't fear the Monad [01:07:11] by Dr. Brian Beckman
- Papers We Love: Composable and Compilable Macros [00:54:49] by Sam Tobin-Hochstadt
- Functional Programming; What? Why? When? How? [00:58:27] by Robert C Martin
- The Functional Final Frontier [00:27:02] by David Nolen
####Computer Graphics
- Principles of Lighting and Rendering [01:31:00] by John Carmack
- Making WebGL Dance [00:30:55] by Steven Wittens
- Making things with maths [00:53:45] by Steven Wittens
####Computer Vision
- OpenCV and High-Performance Vision on GPU [02:24:59] by Victor Eruhimov
####Robotics
- Robots: You're Still Doing It Wrong [00:49:51] by Katy Levinson (not very formal, DefCon)
- No, Really... Robots and JavaScript?! [00:36:26] by Raquel Vélez
####UX/UI
- User Interface (UX) [00:51:20] Techniques by Janne Jul Jensen
- We Will All Be Game Programmers [00:29:34] by Hunter Loftis
####Web Development
- Go To There and Back Again by Douglas Crockford
- The Birth & Death of JavaScript by Gary Bernhardt
- Hey Underscore, You're Doing It Wrong! [00:36:31] by Brian Lonsdorf
- Community.js [00:21:40] by Chris Williams
- An End to Negativity [00:27:26] by Chris Williams
- Life is Terrible: Let's Talk About the Web by James Mickens
- Virtual Machines, JavaScript and Assembler [00:25:57] by Scott Hanselmann
- HTML5 Boilerplate [01:04:20] by Paul Irish
- Delivering the goods [00:23:25] by Paul Irish
- Parallax Performance [00:32:01] by Paul Irish
- Unlock the next era of UI development with Polymer [00:41:31] by Rob Dodson
- React: Rethinking best practices [00:29:32] by Pete Hunt
- React: RESTful UI Rendering [00:36:15] by Pete Hunt
- Hacker Way: Rethinking Web App Development at Facebook [00:44:36] by Tom Occhino, Jing Chen & Pete Hunt (it starts pretty slow and marketingy, but gets much better over time)
- Reactive Programming Overview [00:09:18] by Jafar Husain (very concise and dense)
- Immutability: Putting The Dream Machine To Work [00:22:06] by David Nolen
- How I learned to Code by Making 180 websites in 180 days [00:22:03] by Jennifer De Walt
- How NOT to Measure Latency [00:42:59] by Gil Tene
- C10M - Defending The Internet At Scale [00:47:53] by Robert Graham
- Upgrading the Web [00:41:19] by Douglas Crockford
####System Architecture
- Keeping a System Running Forever [00:28:06] by Fred Hebert
- Scalability at YouTube [00:38:43] by Mike Solomon (long intro; starts about 8 minutes in)
- The Power Of UNIX [00:30:03] by Dan North
####Distributed Programming
- Distributed Systems 101 [00:45:25] by lvh
- Distributed Eventually Consistent Computations [00:49:37] by Christopher Meiklejohn
####Machine Learning
- Neural Nets for Newbies [00:30:57] by Melanie Warrick
- The Unreasonable Effectiveness of Deep Learning [01:07:24] by Yann LeCun
- Automatic Algorithm Invention with a GPU [01:02:04] by Wesley Faler
####Theoretical Computer Science
- Church's Coincidences [01:03:41] by Philip Wadler
- Programming the Turing Machine [01:06:10] by Barbara Liskov
- Turing and the Riemann zeta function [01:06:54] by Andrew Odlyzko
- Lambda Calculus Then and Now [00:30:08] by Dana S. Scott
- Papers We Love: An Axiomatic Basis for Computer Programming [01:04:32] by Jean Yang
####DevOps
- Chef Style DevOps Kungfu [01:16:08] by Adam Jacob
- Salting things up in the sysadmin's world [00:37:21] by Juan Manuel Santos
####Mathematics Those are not necessarily programming-related and possibly very advanced mathematics.
- Category Theory [01:36:54] by Tom LaGatta
- The Continuum Hypothesis and the search for Mathematical Infinity by W. Hugh Woodin
- Field of Rationality and Category Theory [00:44:07] by Michał Heller
####Misc
- How To Shut Down Tolkien [00:42:41] by Brandon Rhodes
- DjangoCon EU 2013 Keynote [00:31:10] by Brandon Rhodes
- Clojure: Programming with Hand Tools [00:58:38] by Tim Ewald