object-oriented programming
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.
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.
17:26Lecture 1 | Programming Paradigms (Stanford)
1.2M views • 18 years ago
Stanford
The first lecture of Stanford's CS107 Programming Paradigms, taught by Jerry Cain, giving an overview of the course. The course goes from C and assembly through C++, concurrency, Scheme and Python.
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.
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.
1:42:09Crockford on JavaScript - Volume 1: The Early Years
252K views • 15 years ago
YUI Library
Douglas Crockford's first Yahoo lecture puts JavaScript in historical context. He traces the language's structure and quirks back through the early decades of computer science and programming language history.
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.
1:02:15Lambda Calculus - Fundamentals of Lambda Calculus & Functional Programming in JavaScript
227K views • 9 years ago
Fullstack Academy
Gabriel Lebec's Fullstack Academy talk introduces lambda calculus syntax, the history of mathematical logic, and the essence of functional programming using JavaScript. It also covers combinators, currying and Church encodings.
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.
1:12:56Lecture 1A: Overview and Introduction to Lisp
420K views • 7 years ago
MIT OpenCourseWare
The first lecture of MIT's 6.001 (SICP) with Abelson and Sussman, giving an overview of the course and an introduction to Lisp. It argues that computer science is about managing complexity and abstraction, not computers.
Topic match · Software architecture & design
40:12Immediate-Mode Graphical User Interfaces - 2005
150K views • 10 years ago
Casey Muratori
Casey Muratori's 2005 video introducing immediate-mode GUIs as an alternative to retained widget toolkits. He explains the motivation and shows minimal-state button logic.
Topic match · Software architecture & design
1:09:24Effective ML
30K views • 10 years ago
Jane Street
Yaron Minsky of Jane Street gave this talk to Harvard's OCaml-based CS51 class in 2010. It collects advice on being an effective ML programmer in an industrial setting.
0:55Richard Feynman on hungry philosophers (or do we see objects or only their light)
272K views • 17 years ago
Zero
A one-minute clip from Richard Feynman's 1979 Auckland lecture in which he answers whether you see an object or only its light. It is a short, playful take on perception and on the use of philosophy.
42:21Where Does Bad Code Come From?
282K views • 5 years ago
Molly Rocket
Casey Muratori's invited lecture on where bad code comes from, rebroadcast from a Twitch stream. He critiques conventional wisdom such as SOLID and Clean Code and argues about how those habits lead to slow, poorly structured software.
Topic match · Software architecture & design
1:12:56Lecture 1A | MIT 6.001 Structure and Interpretation, 1986
995K views • 17 years ago
MIT OpenCourseWare
The first lecture of MIT's 1986 6.001 Structure and Interpretation of Computer Programs, given by Harold Abelson, introducing Lisp and the idea of computer science as the study of process.
8:07Seymour Papert 1983
28K views • 19 years ago
Cynthia Solomon
An eight-minute excerpt of a 1983 video featuring Seymour Papert, creator of Logo, on children learning programming and abstract ideas through embodied play. It shows kids acting out the Logo turtle.
58:22Lecture 1B | MIT 6.001 Structure and Interpretation, 1986
116K views • 17 years ago
MIT OpenCourseWare
Lecture 1B of MIT's 6.001 Structure and Interpretation of Computer Programs (1986) with Gerald Sussman, covering procedures, processes and the substitution model. It includes the line about the power of naming things.
53:25The Only Unbreakable Law
487K views • 4 years ago
Molly Rocket
Casey Muratori's lecture, originally given at the Technical University of Madrid, arguing that Conway's Law is the only viable candidate for a true law of software architecture. He explains how software mimics the organization over time, using examples like Windows' multiple volume controls.
Topic match · Software architecture & design
1:48:42Clean Code - Uncle Bob / Lesson 1
2.2M views • 7 years ago
UnityCoin
The first lesson of Uncle Bob (Robert C. Martin)'s "Coding Better World Together" series. It makes the case for clean code and for treating software craftsmanship as an ethical and professional responsibility. It runs about 109 minutes.
Topic match · Software architecture & design
1:07:10Brian Beckman: Don't fear the Monad
415K views • 13 years ago
jasonofthel33t
Microsoft's Brian Beckman gives an hour-long, whiteboard-style walk through monads, building from function composition and monoids using school-level math. It is aimed at practicing programmers rather than category theorists.
46:46Category Theory 1.1: Motivation and Philosophy
394K views • 10 years ago
Bartosz Milewski
The first lecture in Bartosz Milewski's category theory series for programmers. It covers the motivation and philosophy behind category theory and why composition matters for handling complexity.
2:50:14Simple Code, High Performance
463K views • 5 years ago
Molly Rocket
Casey Muratori's University of Twente guest lecture is a case study in how straightforward code can cut thousands of lines and tens of seconds of runtime down to a few dozen lines running in under a second. It uses concrete examples to show why software is often an order of magnitude slower than it should be.
1:04:16Simon Peyton-Jones: Escape from the ivory tower: the Haskell journey
170K views • 9 years ago
Churchill College, University of Cambridge
Simon Peyton Jones gives Churchill College's annual computer science lecture on Haskell's birth and evolution. He covers the most influential ideas, from laziness to monads and type system evolution, plus current developments and guesses about the future.
1:00:06Computer Science - Brian Kernighan on successful language design
332K views • 10 years ago
University of Nottingham
Brian Kernighan gives a talk at the University of Nottingham on how to succeed in language design without really trying. He draws on his experience with awk and other languages.
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.
10:00SICP / What is "Computer Science" ?
131K views • 20 years ago
LarryNorman
An excerpt from Hal Abelson's opening SICP lecture introducing computer science and contrasting declarative and imperative knowledge. He argues that computer science is not really a science and is more like magic or engineering of ideas.
1:15:47Richard Feynman Computer Science Lecture - Hardware, Software and Heuristics
978K views • 14 years ago
Muon Ray
A lecture by Richard Feynman on how computers work, using the analogy of a filing clerk that becomes progressively dumber and faster. It also covers heuristics and how computers handle data and solve problems in finite time.
14:36Distributed Systems 1.1: Introduction
382K views • 6 years ago
Martin Kleppmann
The first lecture in Martin Kleppmann's 8-lecture distributed systems series from the University of Cambridge undergraduate course. It introduces the subject, and accompanying lecture notes are available.
1:14:32Building Your Own Dynamic Language
21K views • 18 years ago
Stanford
Ian Piumarta's 2007 Stanford EE380 lecture on building a dynamic programming environment from the ground up, from the Viewpoints Research Institute's work. It covers the design of a language and system with a recursive design, parsing through code generation, and the COLA architecture.
34:10Anders Hejlsberg on Modern Compiler Construction
25K views • 9 years ago
Kasper
Anders Hejlsberg whiteboards how compilers are taught versus how modern ones are actually built. He explains the shift to compilers as services with incremental, error-tolerant, IDE-oriented design, as in Roslyn and TypeScript.
1:20:33Lecture 1 | Convex Optimization I (Stanford)
753K views • 18 years ago
Stanford
The introductory lecture of Stephen Boyd's Stanford Convex Optimization I course (EE 364A). It outlines convex sets, functions and problems, and the course's coverage of least-squares, linear and semidefinite programming, duality and interior-point methods.
35:50Dispelling the Myths of Nuclear Energy (Live Lecture)
342K views • 5 years ago
Illinois EnergyProf
A lecture for high school seniors and college freshmen making the case for nuclear power and answering common objections. It is an overview of the channel's more detailed videos on each topic.
1:33:37Adventure with Types in Haskell - Simon Peyton Jones (Lecture 1)
69K views • 12 years ago
jasonofthel33t
Simon Peyton Jones's first lecture on types in Haskell from the Oregon Programming Languages Summer School 2013. It covers type classes and how they relate to OOP, subtyping and polymorphism.