programming
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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:04On the Expressive Power of Programming Languages by Shriram Krishnamurthi [PWLConf 2019]
27K views • 7 years ago
PapersWeLove
Shriram Krishnamurthi's PWLConf 2019 talk on the formal notion of expressive power of programming languages, based on Felleisen's paper. It explains how to tell when a feature adds power by whether emulating it requires global rewriting.
51:32Great Impractical Ideas in Computer Science: PowerPoint Programming
2.2M views • 7 years ago
Tom Wildenhain
Tom Wildenhain's guest lecture for CMU's Esoteric Programming Languages course shows that PowerPoint transitions and slides are Turing complete without macros, building up to a mind-bending fractal ending.
47:41"Programming Should Eat Itself" by Nada Amin
43K views • 12 years ago
Strange Loop Conference
Nada Amin's Strange Loop talk on programming languages that build on themselves, centered on towers of interpreters and nestable interpretation in Scheme. She shows how interpreters can be stacked and collapsed.
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.
27:45Gerald Jay Sussman: The Role of Programming (Dan Friedman's 60th Birthday)
22K views • 11 years ago
William Byrd
Gerald Jay Sussman speaks at Dan Friedman's 60th birthday celebration about how programming helps formulate and clarify ideas. He argues that ambiguous mathematical notation hinders understanding.
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.
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.
57:38Clasp: Common Lisp using LLVM and C++ for Molecular Metaprogramming
52K views • 11 years ago
Google TechTalks
Christian Schafmeister's Google Tech Talk on designing spiroligomer molecules and building Clasp, a Common Lisp on LLVM that interoperates with C++, to program molecular design. It covers the chemistry, automatic differentiation for force fields, and how the compiler is built.
40:50Ruby Manor 3 - Programming with Nothing by Tom Stuart
13K views • 13 years ago
Confreaks
Tom Stuart's Ruby Manor 3 talk builds FizzBuzz using nothing but Ruby lambdas, working through Church encodings of numbers, booleans and data structures. It is a hands-on introduction to lambda calculus.
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.
58:39Tim Ewald - Clojure: Programming with Hand Tools
48K views • 12 years ago
ClojureTV
Tim Ewald's Clojure/conj talk uses furniture making with hand tools versus machine tools as an allegory for software. It explores how automation changes what we make and how we think about our work, and why Clojure's small set of simple tools matters.
49:47Lecture 1 | Programming Methodology (Stanford)
2.6M views • 18 years ago
Stanford
First lecture of Stanford's CS106A Programming Methodology by Mehran Sahami, giving a course overview and starting on programming. The course teaches software engineering principles using Java.
28:03Object-Oriented Programming is Embarrassing: 4 Short Examples
2.2M views • 10 years ago
Brian Will
Brian Will follows up his earlier anti-OOP video by walking through four short code examples, including Java code in the style of Uncle Bob, to show how object-oriented design complicates simple programs. It argues that OOP hides and scatters state and adds needless indirection.
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.
49:482023 LLVM Dev Mtg - Mojo 🔥: A system programming language for heterogenous computing
61K views • 2 years ago
LLVM
A 2023 LLVM Developers' Meeting keynote by Abdul Dakkak, Chris Lattner and Jeff Niu introducing Mojo, a Python-family systems language built on MLIR and LLVM for heterogeneous computing.
59:26The Go Programming Language
406K views • 17 years ago
Google TechTalks
Rob Pike's October 2009 Google Tech Talk introducing Go, a new experimental systems language designed for fast builds, concurrency and garbage collection. It covers the goals, syntax and type system.
40:13"Programming a 144-computer chip to minimize power" - Chuck Moore (2013)
19K views • 5 years ago
Strange Loop Conference
Chuck Moore, inventor of Forth, presents GreenArrays' 144-core asynchronous chip at Strange Loop 2013. He explains how idle cores draw almost no power and how tight code minimizes energy use.
28:10CANDO: A Compiled Programming Language for Computer-Aided Nanomaterial Design and Optimization
3K views • 10 years ago
European Lisp Symposium
Christian Schafmeister presents CANDO at the 2016 European Lisp Symposium. It is a compiled Lisp-based language for designing macromolecules and nanoscale materials, built on the Clasp implementation of Common Lisp.
44:59Google I/O 2011: Kick-Ass Game Programming with Google Web Toolkit
106K views • 15 years ago
Google for Developers
Google I/O 2011 session by Ray Cromwell and Philip Rogers on writing 2D and 3D games with HTML5 and GWT. It covers porting game libraries and physics engines, sharing code with Android, and publishing to the Chrome Web Store, and showcases the ForPlay library.
53:30Lec 1 | MIT 6.00 Introduction to Computer Science and Programming, Fall 2008
6.6M views • 17 years ago
MIT OpenCourseWare
First lecture of MIT 6.00, an introductory computer science course taught in Python by Eric Grimson and John Guttag. It covers the goals of the course, what computation is, and data types, operators and variables.
58:36Advanced Topics in Programming Languages: A Lock-Free Hash Table
29K views • 14 years ago
GoogleTalksArchive
A 2007 Google Tech Talk in which Cliff Click of Azul Systems presents a lock-free concurrent hash table that scales to 768 CPUs. He explains why it is correct by reasoning in a different way than usual happens-before and memory-order arguments.
43:00Tree-sitter: a new parsing system for programming tools - GitHub Universe 2017
24K views • 8 years ago
GitHub
Max Brunsfeld of GitHub presents Tree-sitter, a parsing system for programming tools that supports incremental, error-tolerant parsing. He demos its integration into GitHub.com and Atom for syntax highlighting and code navigation.
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.
Topic match · Programming language design
38:38"Tree-sitter - a new parsing system for programming tools" by Max Brunsfeld
63K views • 8 years ago
Strange Loop Conference
Max Brunsfeld introduces Tree-sitter, a parsing system for developer tools that offers incremental parsing and robust error recovery through a uniform C API. The talk explains the design, based on LR extended to GLR parsing.
43:04"Stop Writing Dead Programs" by Jack Rusher (Strange Loop 2022)
468K views • 4 years ago
Strange Loop Conference
Jack Rusher's Strange Loop 2022 talk argues that most programming languages are still designed around punchcard-era assumptions. He makes the case for live, interactive programming environments, drawing on Lisp, Smalltalk and REPL-driven development.
Topic match · Programming language design
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.
Topic match · Programming language design