data-driven programming
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.
40:39Edwin Brady - Idris 2 - Type-driven Development of Idris
19K views • 7 years ago
Curry On!
Edwin Brady, creator of Idris, presents Idris 2 and demonstrates type-driven development, where the compiler assists by filling holes and suggesting implementations from types.
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.
44:35Object-Oriented Programming is Bad
2.6M views • 10 years ago
Brian Will
Brian Will makes the case for procedural programming over object-oriented programming, arguing that OOP's promised encapsulation and decoupling are largely illusory. He analyzes real code examples and the problems of tying data to behavior in classes.
41:18"Voice Driven Development: Who needs a keyboard anyway?" by Emily Shea
35K views • 7 years ago
Strange Loop Conference
Emily Shea explains how repetitive strain injury pushed her to program by voice using speech recognition (Talon), and gives a live coding demo. She argues voice-driven development can be pain-free, efficient and enjoyable.
55:53Michael Stonebraker | Big Data is (at least) Four Different Problems
30K views • 10 years ago
Michigan Engineering
Database pioneer Michael Stonebraker argues that 'big data' is really at least four different problems: big volumes with small analytics, big analytics, velocity, and variety. He comments on where each market is heading.
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.
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.
52:54Rust at speed — building a fast concurrent database
225K views • 7 years ago
Jon Gjengset
A guest lecture Jon Gjengset gave at Two Sigma on using Rust for large, high-performance systems. It covers why Rust suits such projects, the Noria research database, a concurrent data structure used in it, and practical experience.
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.
46:36Type-Driven Development in Idris — Edwin Brady
26K views • 11 years ago
Scala World
Edwin Brady, creator of Idris, introduces type-driven development in a dependently typed language. He shows types being written first and programs derived with interactive editing, then extends beyond simple examples to programs that interact with users and networks.
22:58All of our data is GONE!
9.4M views • 10 years ago
Linus Tech Tips
Linus Tech Tips documents a major RAID failure on its Whonnock server and the attempt to recover the lost data with a data recovery firm.
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.
56:27In Search of Tomorrow
18K views • 10 years ago
Berkeley Institute for Data Science (BIDS)
Chris Granger, creator of Light Table and the Eve language, gives a Berkeley data science lecture on what computation and programming might look like in ten years. He covers the path that led to Eve and ends with demos.
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.
43:23Edwin Brady - Idris 2: Type-driven development of Idris | Code Mesh LDN 18
20K views • 7 years ago
Code Sync
Edwin Brady presents Idris 2, a rewrite of the Idris dependently typed language, and shows type-driven development in practice. The demos show the compiler filling in whole functions from their types.
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.
52:48Object-Oriented Programming is Garbage: 3800 SLOC example
258K views • 10 years ago
Brian Will
Brian Will critiques object-oriented programming and rewrites a roughly 3800-line OO program in a procedural style, cutting code and complexity. It is part of a series of OOP critiques.
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.
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 • 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.
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.
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.
50:49Domain Modeling Made Functional - Scott Wlaschin - KanDDDinsky 2019
74K views • 6 years ago
KanDDDinsky
Scott Wlaschin shows how statically typed functional languages, using F# examples, can model a business domain so that invalid states cannot be represented. The type system acts almost like an instant unit test at compile time.
51:47Lecture 19: Dynamic Programming I: Fibonacci, Shortest Paths
2.9M views • 13 years ago
MIT OpenCourseWare
Erik Demaine's MIT 6.006 lecture introducing dynamic programming through Fibonacci numbers and shortest paths. It covers memoization, subproblems and optimal substructure.
36:18"Data Driven UIs, Incrementally" by Yaron Minsky
20K views • 8 years ago
Strange Loop Conference
Yaron Minsky of Jane Street shows how the OCaml Incremental library lets trading UIs express data transformations that are easy to read and efficient on streaming data. It includes a live table demo.
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.
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.
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.
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.