data-oriented programming
46:40Andrew Kelley: A Practical Guide to Applying Data Oriented Design (DoD)
415K views • 2 years ago
ChimiChanga
Andrew Kelley, creator of Zig, presents practical data-oriented design techniques for shrinking memory footprint and making programs cache friendly. He ends with a case study of how these ideas sped up the Zig compiler.
36:42Bottom Up vs Top Down Design in Clojure - Mark Bastian
29K views • 10 years ago
ClojureTV
Mark Bastian contrasts top-down object-oriented design with bottom-up, data-oriented design in Clojure. He models a board game as plain data plus small composable functions and compares it with a roughly 22-class OOP version.
Topic match · Software architecture & design
42:31"Datafun: a functional query language" by Michael Arntzenius
9K views • 9 years ago
Strange Loop Conference
Michael Arntzenius's Strange Loop talk on Datafun, a functional query language that brings database-style querying into a general-purpose language. It discusses bridging database theory and programming languages.
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 · Software architecture & design
54:58Keynote - JSON Graph: Reactive REST at Netflix
41K views • 11 years ago
Association for Computing Machinery (ACM)
Jafar Husain's ACM keynote presents Netflix's JSON Graph and Falcor, which let web developers treat all cloud data as one virtual JSON model. It combines reactive programming with REST principles.
Topic match · Software architecture & design
43:16Pure Functional Programming in Excel • Felienne Hermans • GOTO 2016
26K views • 10 years ago
GOTO Conferences
Felienne Hermans argues that Excel is the world's most popular programming language and shows how spreadsheets work as a pure functional language. She implements a few mathematical problems in spreadsheet formulas to illustrate why they are so powerful and approachable.
31:11React.js Conf 2015 - Immutable Data and React
159K views • 11 years ago
Meta Developers
Lee Byron of Facebook explains how persistent immutable data structures work and how to use them in React apps with Immutable.js. He covers memoization benefits and avoiding coupling through shared mutable state.
52:52Google Developers Day US - Theorizing from Data
27K views • 19 years ago
GoogleDeveloperDay
Peter Norvig's 2007 Google talk on theorizing from data, covering what huge datasets can do for language understanding, translation, information extraction and inference. It argues that more data often beats cleverer models.
45:08Raymond Hettinger - Dataclasses: The code generator to end all code generators - PyCon 2018
130K views • 8 years ago
PyCon 2018
Raymond Hettinger explains Python's dataclasses module, showing the problem it solves and its key design decisions. He places it in a progression from tuples and dicts through named tuples and attrs.
40:57"Hedy: A Gradual programming language" by Felienne Hermans (Strange Loop 2022)
17K views • 4 years ago
Strange Loop Conference
Felienne Hermans presents Hedy, a gradual programming language for teaching kids that moves through levels from almost no syntax toward full Python. The talk covers why error messages and syntax are scary for beginners.
45:50Thesis: Partial State in Dataflow-Based Materialized Views
17K views • 6 years ago
Jon Gjengset
Jon Gjengset's 2020 PhD dissertation presentation at MIT on partial state in dataflow-based materialized views, the idea behind the Noria database. The Q&A is cut out.
56:49Escape from the Heap: Low-Level Programming in Common Lisp
17K views • 10 years ago
Arthur Gleckler
Ahmon Dancy of Franz Inc explains low-level programming in Common Lisp, including off-heap data structures used in AllegroGraph to manage memory outside the garbage collector.
28:31Velocity 2010: James Hamilton, "Datacenter Infrastructure Innovation"
9K views • 16 years ago
O'Reilly
James Hamilton of AWS gives a Velocity 2010 keynote on datacenter infrastructure innovation, focused on power and cooling costs and a breakdown of where datacenter spending goes.
47:30John Backus: Function Level Programming and the FL Language 1987
3K views • 9 years ago
Arthur Vard
A 1987 talk in which John Backus, creator of Fortran, presents function-level programming and the FL language, a successor to his FP work. It is an archival recording with links to the related paper.
38:47RailsConf 2014 - All the Little Things by Sandi Metz
190K views • 12 years ago
Confreaks
Sandi Metz takes an ugly section of conditional code and refactors it into a few simple objects, bridging object-oriented theory and practice. The talk includes her take on the Gilded Rose refactoring kata and the idea that duplication is cheaper than the wrong abstraction.
Topic match · Software architecture & design
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 · Software architecture & design
56:39Alan Kay - Programming and Scaling
36K views • 11 years ago
Colin McDonnell
An Alan Kay talk on programming and scaling, covering theoretical limits of code size, engineering versus tinkering, and biological cells as inspiration for object-oriented design.
27:10IRDC US 2015 - Brian Bucklew, Data-Driven Engines of Qud and Sproggiwood
39K views • 11 years ago
Logo “ND” Surströmming
Brian Bucklew of Freehold Games discusses design decisions behind Caves of Qud and Sproggiwood at IRDC 2015. The talk centers on data-driven, event-driven engine design.
52:34The Next Programming Language - Douglas Crockford - code::dive 2022
55K views • 3 years ago
code::dive conference
Douglas Crockford's code::dive 2022 talk on what the next programming language should look like. He presents ideas behind his Misty language, including message-passing actors.
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.
32:56Bret Victor The Future of Programming
305K views • 13 years ago
Joey Reid
Bret Victor's DBX 2013 talk, delivered in the guise of a 1973 IBM engineer with an overhead projector. It surveys forgotten ideas from 1960s and early 70s computing and warns against assuming you know what you're doing.
52:09"How to teach programming (and other things)?" by Felienne Hermans
34K views • 7 years ago
Strange Loop Conference
Felienne Hermans's Strange Loop keynote on the history and pedagogy of teaching programming. She questions exploration-only approaches like Logo and discusses research supporting explicit instruction and rote practice.
35:59Literate Programming in the Large
18K views • 13 years ago
Next Day Video
Timothy Daly, an original author of the Axiom computer algebra system, talks about turning a large Common Lisp codebase into a literate program. He argues code should be written as readable manuals, and the talk was given at Write the Docs 2013.
58:24#Gamelab2018 - Jon Blow's Design decisions on creating Jai a new language for game programmers
210K views • 8 years ago
Gamelab Conference
Jonathan Blow talks at Gamelab 2018 about the design decisions behind Jai, the programming language he is building for game programmers. He covers low-friction development, quality of life and the effects of compile times.
50:31How Modern SQL Databases Come up with Algorithms that You Would Have Never Dreamed Of by Lukas Eder
55K views • 9 years ago
Devoxx
Lukas Eder's Devoxx talk on how modern cost-based SQL optimizers rewrite and plan queries in ways developers would not expect. It argues that declarative SQL, used well, can run complex queries very fast.
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.
54:52Introduction to NoSQL • Martin Fowler • GOTO 2012
1M views • 13 years ago
GOTO Conferences
Martin Fowler's GOTO 2012 introduction to NoSQL databases: where they came from, their data models, how consistency thinking differs, and when to use them. He argues they won't make relational databases obsolete and introduces polyglot persistence.
Topic match · Software architecture & design
28:06MountainWest RubyConf 2014 - But Really, You Should Learn Smalltalk
27K views • 12 years ago
Confreaks
Noel Rappin's MountainWest RubyConf talk introduces Smalltalk to Ruby programmers. He compares the two languages' object models, blocks, 1-based arrays, simple syntax and live programming environment, and walks through sample code.
Topic match · Software architecture & design
52:40Keynote. Professor Steven G. Johnson | JuliaCon 2019
18K views • 7 years ago
The Julia Programming Language
Steven G. Johnson, MIT professor and FFTW co-author, gives a JuliaCon 2019 keynote on metaprogramming and staged programming in Julia, showing how it enables high-performance numerical code and when not to use macros.
53:22Ruby Conf 12 - Y Not- Adventures in Functional Programming by Jim Weirich
65K views • 13 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.
47:43"Turning the database inside out with Apache Samza" by Martin Kleppmann
205K views • 12 years ago
Strange Loop Conference
Martin Kleppmann argues that databases are global shared mutable state and proposes treating them as an ever-growing log of immutable facts. Derived data such as caches, indexes and views is then built by stream processors like Apache Samza. The talk draws on Kafka and LinkedIn's experience with commit logs.
43:58"The Economics of Programming Languages" by Evan Czaplicki (Strange Loop 2023)
141K views • 3 years ago
Strange Loop Conference
Evan Czaplicki, creator of Elm, examines how programming languages are funded. He looks at where compiler engineers' salaries come from, why Go has about 5 engineers while Dart has about 30, and how this limits language design.
54:14Zig: A programming language designed for robustness, optimality, and clarity – Andrew Kelley
75K views • 8 years ago
Recurse Center
Andrew Kelley, creator of Zig, introduces the language at the Recurse Center's Localhost series in 2018. He covers its goals of robustness, optimality and clarity, C interop, cross-compilation and explicit allocators.
41:06"Unison: a new distributed programming language" by Paul Chiusano
45K views • 7 years ago
Strange Loop Conference
Paul Chiusano's Strange Loop 2019 talk introduces Unison, an open-source functional language for distributed, elastic systems. It covers content-addressed code identified by hashes of the syntax tree, a codebase manager, and algebraic effects called abilities.
52:29"I See What You Mean" by Peter Alvaro
59K views • 11 years ago
Strange Loop Conference
Peter Alvaro's Strange Loop 2015 talk argues that query languages let you state what you mean, and applies that to distributed programming. It covers Datalog, Dedalus and the Bloom lineage for reasoning about distributed systems.
36:58"A (Not So Gentle) Introduction To Systems Programming In ATS" by Aditya Siram
26K views • 9 years ago
Strange Loop Conference
Aditya Siram introduces ATS, a statically typed ML-like language that compiles to C and offers type-safe pointer arithmetic and a full proof language. The Strange Loop talk shows off C interop, concurrency and verification features with non-trivial examples.
53:09DEF CON 23 - Zoz - And That's How I Lost My Other Eye...Explorations in Data Destruction (Fixed)
533K views • 11 years ago
DEFCONConference
Zoz's DEF CON 23 talk explores practical, often explosive ways to destroy data and hard drives quickly. It tests methods such as thermite and other physical techniques for rapid destruction.
25:59Peter Norvig at Startup School 08
6K views • 17 years ago
startupschool
Peter Norvig, then Director of Research at Google, talks at Startup School 2008 about leveraging large amounts of data and about technical challenges in Google projects such as image search. A central idea is that data can beat hand-written programming.
28:15Martin Kleppmann | Kafka Summit SF 2018 Keynote (Is Kafka a Database?)
57K views • 8 years ago
Confluent, an IBM Company
Martin Kleppmann's Kafka Summit 2018 keynote asks whether Kafka can be considered a database. He covers event logs and related data-systems ideas.
55:49CppCon 2016: Chandler Carruth “High Performance Code 201: Hybrid Data Structures"
119K views • 10 years ago
CppCon
Chandler Carruth's CppCon 2016 talk on designing hybrid data structures for performance. He covers cache locality, working-set size and allocation overhead, and why standard C++ containers fall short.