null object
35:53RailsConf 2015 - Nothing is Something
84K views • 11 years ago
Confreaks
Sandi Metz argues that hidden assumptions in code are missing concepts, and shows how to name and expose them so code is easier to understand and change. It covers null objects and messages in Ruby.
1:01:59Null References: The Billion Dollar Mistake - Tony Hoare
66K views • 7 years ago
JoseCan
Tony Hoare's InfoQ talk in which he describes introducing null references in ALGOL W in 1965 and calls it his billion-dollar mistake. He discusses language designer responsibility and run-time checks.
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:32:20Ken Stanley: Discovery Without Objectives
6K views • 14 years ago
fzambetta75
A 92-minute RMIT University seminar in which Ken Stanley argues that setting an objective can block achieving it. He presents objective-less, novelty-driven search as an alternative approach to innovation and discovery, drawing on evolutionary computation.
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.
1:31:05Bryan Cantrill from Joyent on Manta: internet-facing object storage facility that features compute
25K views • 12 years ago
AI Council
Bryan Cantrill of Joyent presents Manta, an internet-facing object store that lets you run compute directly on the data. The talk is peppered with ZFS history and Cantrill's trademark commentary on the industry.
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.
4:30Watching This Video Disqualifies You From Jury Duty for Life
21.2M views • 12 years ago
CGP Grey
CGP Grey explains jury nullification, a juror's power to acquit despite the law, and why mentioning it can get you struck from jury selection.
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.
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.
2:30:46Oral History of Steve Naroff Part 1, Session 1
3K views • 7 years ago
Computer History Museum
Computer History Museum oral history of Steve Naroff, an engineer at Stepstone, NeXT and Apple who worked on Objective-C. This first session covers his childhood, music background and early career.
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.
5:513-Sweep: Extracting Editable Objects from a Single Photo, SIGGRAPH ASIA 2013
2.3M views • 13 years ago
Daniel CohenOr
A SIGGRAPH Asia 2013 research demo of 3-Sweep, a tool for extracting editable 3D objects from a single photo using a few user strokes. It predates modern AI image tools.
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.
17:48NeXT vs Sun
116K views • 14 years ago
hoffman60613
A 1991 NeXT promotional video that stages a head-to-head programming contest between a NeXT computer and a Sun workstation. It shows NeXT's interface builder and object-oriented tooling producing an application far faster than traditional UNIX development.
5:00Touché: Enhancing Touch Interaction on Humans, Screens, Liquids, and Everyday Objects
887K views • 14 years ago
DisneyResearchHub
Disney Research presents Touche, a swept frequency capacitive sensing technique that recognizes complex hand and body configurations, and adds touch sensitivity to humans, liquids and everyday objects.
1:12:13James Gosling - Simula: a personal journey
5K views • 9 years ago
UiO Realfagsbiblioteket
James Gosling gives a personal talk at the 50th anniversary seminar of Simula about using the language from 1974 and how it shaped his thinking. He explains how Simula's object model and coroutines influenced the design of Java.
5:07Adobe Photoshop CS5: Content-Aware Fill Sneak Peek
5.2M views • 16 years ago
AdobePhotoshopFB
Adobe's sneak-peek demo of Content-Aware Fill ahead of Photoshop CS5, showing objects being removed and areas repaired seamlessly with the delete key.
1:03:29Maybe Not - Rich Hickey
181K views • 7 years ago
ClojureTV
Rich Hickey's Clojure/Conj 2018 keynote argues that Maybe/Option types and rigid type signatures are a poor way to model data that changes over time. He builds the case around optionality, schema growth and compatibility, and presents the ideas behind Clojure spec as an alternative.
36:20Mastering the Vim Language
647K views • 11 years ago
thoughtbot
Chris Toomey of thoughtbot explains Vim as a language of commands, motions and text objects that combine into precise edits. He shows how to master the built-in pieces and extend them.
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.
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.
11:44World's Roundest Object!
38.5M views • 13 years ago
Veritasium
Veritasium explains the effort to redefine the kilogram, which was still defined by a physical artifact, and how a near-perfect silicon sphere from the Avogadro project helps. It also covers the history of the unit's odd naming.
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.
17:32'Oumuamua Is Not Aliens
790K views • 7 years ago
PBS Space Time
PBS Space Time examines the interstellar object 'Oumuamua and the popular theories about it, including the light-sail hypothesis. It argues that a natural rock is the likeliest explanation.
31:09Bringing the Unix Philosophy to Big Data by Bryan Cantrill: FutureStack13
18K views • 12 years ago
New Relic
Bryan Cantrill presents Manta, an object store with in-situ compute that lets tools like grep, awk, and sed run map-reduce style over huge data. He frames it as bringing the Unix philosophy to big data.
2:52If money was no object, should you run every medical test?
263K views • 8 years ago
Medlife Crisis
A doctor from Medlife Crisis explains in under three minutes why even a rich patient should not simply order every medical test, touching on pre-test probability and Bayesian reasoning. False positives make blanket testing counterproductive.
7:44Handmade Hero | Getting rid of the OOP mindset
167K views • 9 years ago
vexe
A short clip of Casey Muratori from Handmade Hero explaining why he rejects the object-oriented mindset and how to move away from it. It is part rant, part programming philosophy.
1:04:29The Computer Revolution Hasn't Happened Yet OOPSLA 97 Keynote (VPRI 0719)
9K views • 6 years ago
Yoshiki Ohshima (大島芳樹)
Alan Kay's 1997 OOPSLA keynote argues that the computer revolution has not really happened yet, reflecting on how computing, objects and the web fall short of their potential.
4:12PREDATOR - Tracker that learns and improves
893K views • 15 years ago
Zdenek Kalal
A demo of PREDATOR (TLD), a real-time object tracker that learns the appearance of its target and improves while it tracks. The technology was later developed commercially.
27:29Stop Writing Classes
962K views • 14 years ago
Next Day Video
Jack Diederich's PyCon 2012 talk argues that classes are overused in Python and walks through real code, refactoring away unnecessary classes, exceptions and modules. It popularized the heuristic that a class with two methods, one being __init__, should be a function.
32:23Rails Conf 2013 The Magic Tricks of Testing by Sandi Metz
144K views • 13 years ago
Confreaks
Sandi Metz's RailsConf 2013 talk offers practical guidelines for deciding what to test and how, so tests stay cheap and stable. She argues for testing the public interface rather than implementation and using mocks appropriately.
11:22Thomas Thwaites: How I built a toaster -- from scratch
282K views • 15 years ago
TED
Designer Thomas Thwaites describes his attempt to build a toaster from scratch, from mining ore and deriving plastic from oil. It is a short TED talk on how much civilization a simple object depends on.
1:10:00The Mental Game of Python - Raymond Hettinger [synced version]
24K views • 6 years ago
Tech Ma
Raymond Hettinger's PyBay 2019 talk on the mental strategies he uses when programming in Python, such as chunking, solving a simpler related problem, and repeating tasks manually until patterns emerge. This version is re-synced with the slides.
14:49The Bizarre Behavior of Rotating Bodies
14M views • 7 years ago
Veritasium
Veritasium explains the Dzhanibekov effect, also called the tennis racket theorem, where a spinning object flips unexpectedly about its intermediate axis. The video gives an intuitive account of the underlying rotational dynamics, drawing on Terry Tao's explanation and the original papers.
58:43Optional - The Mother of All Bikesheds by Stuart Marks
63K views • 9 years ago
Devoxx
Stuart Marks explains the intended purpose and proper use of Java 8's Optional class and why it caused so much controversy. He gives guidelines for using its small API correctly.
0:06Winamp 2.91 -- It Really Whips the Llama's Ass
694K views • 12 years ago
Dwight Schrute
A brief clip of the Winamp 2.91 startup sound, with its famous audio line about whipping the llama's ass, uploaded as a tribute.
2:02(50X) Autonomously folding a pile of 5 previously-unseen towels
923K views • 16 years ago
RLLberkeley
A Berkeley PR2 robot autonomously folds a pile of five previously unseen towels, shown at 50x speed. The video accompanies a 2010 ICRA paper from Pieter Abbeel's group.
11:39The Ingenious Design of the Aluminum Beverage Can
19.5M views • 11 years ago
engineerguy
Bill Hammack of Engineer Guy explains the engineering behind the aluminum beverage can: why it is cylindrical, how it is manufactured, why it narrows at the top, the double seam, and how the pull tab works.
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.