data-oriented programming
1:27:46CppCon 2014: Mike Acton "Data-Oriented Design and C++"
862K views • 12 years ago
CppCon
Mike Acton of Insomniac Games argues that a program's purpose is transforming data, and shows how common C++ approaches work against that in performance-critical game development. He covers cache behavior, data layout and the limits of compilers.
1:00:46CppCon 2018: Stoyan Nikolov “OOP Is Dead, Long Live Data-oriented Design”
271K views • 8 years ago
CppCon
A CppCon 2018 talk arguing that OOP has failed to deliver on reuse and performance, and presenting data-oriented design for C++ with practical worked examples from real systems.
1:32:47Data-Oriented Demo: SOA, composition
201K views • 11 years ago
Jonathan Blow
A live-coded demo by Jonathan Blow showing how to get object-system-style expressiveness in a data-oriented way, covering structure-of-arrays layouts and composition. It shows features of his Jai language that make programs fast.
1:05:59Data Oriented GUI in Rust by Raph Levien - Bay Area Rust Meetup
83K views • 8 years ago
Rust Programming Language
Raph Levien presents his new Rust GUI framework, built on data-oriented design and ideas from entity component systems, for the Xi editor. He weighs the approach against alternatives and discusses pros and cons.
2:41:18Seminar with Alan Kay on Object Oriented Programming (VPRI 0246)
31K views • 8 years ago
Yoshiki Ohshima (大島芳樹)
A long recorded seminar in which Alan Kay discusses object-oriented programming, probably from the mid-1980s. He covers the original idea of objects, messaging and the work done at Xerox.
1:54:11James Powell: So you want to be a Python expert? | PyData Seattle 2017
508K views • 9 years ago
PyData
James Powell's nearly two-hour PyData talk builds up Python's data model, decorators, generators and context managers, coding live in Vim. It aims to take intermediate programmers toward real Python expertise.
1:06:24Rich Hickey: Deconstructing the Database
106K views • 14 years ago
InfoQ
Rich Hickey, creator of Clojure and designer of Datomic, gives a JaxConf 2012 talk that takes apart traditional database architecture. He presents a different way to think about databases and explains the reasoning behind Datomic's fact-based design.
1:06:00CppCon 2017: Juan Pedro Bolivar Puente “Postmodern immutable data structures”
31K views • 9 years ago
CppCon
Juan Pedro Bolivar Puente explains immutable and persistent data structures in C++ and how they support value semantics. He presents the Immer library, rrb-trees, and a prototype text editor that opens a huge file instantly.
1:19:57Simon Peyton Jones: Data Parallel Haskell
28K views • 16 years ago
nuACM
Simon Peyton Jones explains nested data parallelism and Data Parallel Haskell, an approach to exploiting multicore and distributed hardware while keeping a simple single-control-flow programming model.
1:18:21"Uncle" Bob Martin - "The Future of Programming"
1.8M views • 10 years ago
Paul Stringer's Mobile Tech
Robert C. Martin (Uncle Bob) traces the history of software from 1948 to today, looking at the problems programmers faced, how they were solved, and what mistakes the profession made. He then projects where the field is going, including professionalism and regulation.
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 · Software architecture & design
2:27:34Casey Muratori – The Big OOPs: Anatomy of a Thirty-five-year Mistake – BSC 2025
926K views • 1 year ago
Better Software Conference
Casey Muratori's two-hour talk tracing the history of object-oriented programming back to the 1960s and examining how its ideas, and later entity component systems, came about. It is followed by a Q&A.
Topic match · Software architecture & design
1:02:27Procedural Programming: It Never Went Away — Kevlin Henney | Build Stuff
28K views • 8 years ago
Build Stuff - #1 Software Dev Conf
Kevlin Henney argues that procedural programming never went away despite later paradigms such as OO and functional. He traces the history of structured programming and shows where procedural thinking still lives in modern code and why it matters for readability.
1:05:59Modern C and What We Can Learn From It - Luca Sas [ ACCU 2021 ]
130K views • 5 years ago
ACCU Conference
Luca Sas's ACCU 2021 talk on Modern C, a style of C and C-like C++ aligned with data-oriented design. It covers centralized memory management, zero-is-initialization, error handling and API design.
Topic match · Software architecture & design
1:29:27The Forgotten Art of Structured Programming - Kevlin Henney [C++ on Sea 2019]
245K views • 7 years ago
cpponsea
Kevlin Henney revisits structured programming, from Go To Statement Considered Harmful to block-structured code and object orientation. He argues it still matters for how we write code today.
1:06:4401 - Course Introduction & Relational Model (CMU Databases Systems / Fall 2019)
248K views • 7 years ago
CMU Database Group
The first lecture of Andy Pavlo's CMU 15-445 Intro to Database Systems (Fall 2019), covering course introduction and the relational model.
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 · Software architecture & design
1:06:44Programming is terrible—Lessons learned from a life wasted. EMF2012
1.7M views • 13 years ago
tef ebooks
Tef's EMF 2012 talk on lessons from a career in programming, a candid and humorous look at why programming is so often terrible. Slides and a draft script are available online.
1:01:33A Possible Future of Software Development
82K views • 18 years ago
Google TechTalks
Sean Parent of Adobe argues that object-oriented frameworks ultimately fail to deliver scalable, high quality software and proposes combining generic and declarative programming instead. It draws on Stepanov's Elements of Programming.
Topic match · Software architecture & design
1:02:57Peter Norvig - The Unreasonable Effectiveness of Data
74K views • 15 years ago
UBC Computer Science
Peter Norvig's UBC distinguished lecture on how massive amounts of simple data, such as for language modeling, can yield understanding that hand-built models could not.
1:19:06Netdev 0x16 - Keynote: It's Time to Replace TCP in the Datacenter
5K views • 3 years ago
netdevconf
John Ousterhout's Netdev 0x16 keynote arguing that nearly every aspect of TCP is wrong for the datacenter, from connections and streams to reliable delivery and congestion control. He presents the case for a replacement protocol.
1:26:11Succinct Data Structures
9K views • 12 years ago
Edward Kmett
Edward Kmett's 2013 talk at Prezi in Budapest on succinct data structures, which store data in close to the information-theoretic minimum space while supporting fast queries. It ties together the research and walks through his Haskell succinct library.
1:02:49Reboot Develop 2017 - Jonathan Blow, Thekla Inc. / Making Game Programming Less Terrible
112K views • 9 years ago
Reboot Develop
Jonathan Blow's Reboot Develop 2017 talk on making game programming less terrible, discussing software bloat, slowness and the design goals behind his own programming language.
1:05:56Lang NEXT 2014 Panel Systems Programming in 2014 and Beyond
3K views • 8 years ago
25msr
A panel from the Lang NEXT 2014 conference on systems programming in 2014 and beyond. Language designers including Bjarne Stroustrup and Rob Pike discuss the topic, including C++ header compile times.
1:04:04Overwatch Gameplay Architecture and Netcode
196K views • 7 years ago
GDC Festival of Gaming
Blizzard's Timothy Ford explains in this 2017 GDC session how Overwatch uses an Entity Component System architecture for layered gameplay. He also covers its server-authoritative netcode with client-side prediction and how they keep the game responsive and fair.
Topic match · Software architecture & design
1:04:33Alan Kay at OOPSLA 1997 - The computer revolution hasnt happened yet
127K views • 13 years ago
Jeff Gonis
Alan Kay's 1997 OOPSLA keynote, preserved on YouTube after being lost from Google Video. He discusses what object orientation was meant to be, messaging, system design, and the state of computing practice.
Topic match · Software architecture & design
1:10:05Are We There Yet - Rich Hickey
24K views • 7 years ago
Zhang Jian
Rich Hickey's talk on time, state, identity and values, arguing that mutable object-oriented modeling fits the world poorly. It lays out the thinking behind Clojure's approach to data and change.
Topic match · Software architecture & design
1:04:00CppCon 2015: Sean Parent "Better Code: Data Structures"
106K views • 11 years ago
CppCon
Sean Parent's CppCon 2015 talk on better use of standard containers and the goal of having no incidental data structures. It argues that proper containers can greatly simplify code.
1:23:35Bob Martin SOLID Principles of Object Oriented and Agile Design
517K views • 11 years ago
People career
Robert C. Martin (Uncle Bob) gives a talk on the SOLID principles of object-oriented and agile design, in the context of encapsulation and clean code.
1:02:36The Pervert's Guide to Computer Programming Languages - SXSW
28K views • 9 years ago
Vulk Coop
A SXSW talk by W Watson that uses Lacanian psychoanalysis, with nods to Zizek, to critique popular programming languages. It argues that people choose and defend languages for emotional and ideological reasons rather than rational ones.
1:10:42Elements of Programming Style - Brian Kernighan
138K views • 9 years ago
Institute for Advanced Study
Brian Kernighan's 2009 talk at Princeton on the Elements of Programming Style, discussing readable code, avoiding cleverness and flawed examples in programming tutorials.
1:04:35The Algebra of Algebraic Data Types
27K views • 13 years ago
London Haskell
A London Haskell talk on the algebra of algebraic data types, showing how sum and product types behave like arithmetic. It frames types as numbers obeying algebraic laws.
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 · Software architecture & design
1:10:32Rethinking CS Education | Alan Kay, CrossRoads 2015
28K views • 10 years ago
Infosys Foundation USA
Alan Kay argues for rethinking how computer science is taught in schools, drawing on his work on object-oriented programming and GUIs. He discusses how poorly people understand complex systems and what education could do about it.
Topic match · Software architecture & design
1:16:58code::dive conference 2014 - Scott Meyers: Cpu Caches and Why You Care
231K views • 11 years ago
NOKIA Technology Center Wrocław
Scott Meyers explains how CPU caches work and why they matter for performance, covering cache levels, access speeds, associativity, and effects in multithreaded code. The focus is C++ and cache-aware, data-oriented programming.
1:09:38"How to Think about Parallel Programming: Not!" - Guy L. Steele Jr. (Strange Loop 2010)
9K views • 5 years ago
Strange Loop Conference
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. He also recounts fitting a program onto a single punch card.
1:06:46Crockford on JavaScript - Section 8: Programming Style & Your Brain
111K views • 14 years ago
YUI Library
Douglas Crockford's YUIConf 2011 keynote on why programming style matters, particularly in JavaScript. He draws on science about the brain and shows how tools like JSLint help.
2:11:32How I program C
1M views • 9 years ago
Eskil Steenberg
Eskil Steenberg's two-hour talk on his personal approach to writing C, covering code style, structure, naming, pointers and large-project organization. He warns it contains a fair bit of programming religion.
Topic match · Software architecture & design
1:16:55Joe Armstrong & Alan Kay - Joe Armstrong interviews Alan Kay
76K views • 9 years ago
Erlang Solutions
Joe Armstrong, creator of Erlang, interviews Alan Kay at Code Mesh. They discuss the meaning of object orientation, message passing, the META II paper, and the state of computer science.
Topic match · Software architecture & design
1:00:10Functional architecture - The pits of success - Mark Seemann
152K views • 10 years ago
NDC Conferences
Mark Seemann argues that functional programming naturally yields many of the best practices object-oriented developers learn painfully. He shows how functional architecture leads to a pit of success, with a pure core and impure shell.
Topic match · Software architecture & design