machine design
1:00:19How To Design A Good API and Why it Matters
453K views • 19 years ago
Google TechTalks
Joshua Bloch's Google Tech Talk on how to design good APIs and why it matters, with concrete principles and examples. It treats every programmer as an occasional API designer.
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.
58:23Evan Czaplicki - Let's be mainstream! User focused design in Elm - Curry On
82K views • 11 years ago
Curry On!
Evan Czaplicki, creator of Elm, talks at Curry On 2015 about user-focused language design. He explains the principles behind Elm and how to make a functional, typed language as approachable as JavaScript.
37:15Stuart Halloway - Narcissistic Design
29K views • 9 years ago
Reaktor
Stuart Halloway's satirical talk describes how to protect yourself from industry change by spreading complexity through systems while following idiomatic practice. It uses this inversion to catalog software design anti-patterns.
27:00AT&T Archives: Saul Bass Pitch Video for Bell System Logo Redesign
417K views • 14 years ago
AT&T Tech Channel
The 1969 pitch film in which Saul Bass presents the Bell System logo redesign to AT&T, part of the largest corporate re-identity program in U.S. history.
25:215 steps to designing the life you want | Bill Burnett | TEDxStanford
11.4M views • 9 years ago
TEDx Talks
TEDxStanford talk by Bill Burnett, executive director of Stanford's design program, on applying design thinking to your own life and career. He offers five practical tips such as getting curious, talking to people and trying things.
58:24#Gamelab2018 - Jon Blow's Design decisions on creating Jai a new language for game programmers
210K views • 8 years ago
Gamelab Conference
Jonathan Blow talks at Gamelab 2018 about the design decisions behind Jai, the programming language he is building for game programmers. He covers low-friction development, quality of life and the effects of compile times.
44:03Google Developers Day US - Python Design Patterns
90K views • 19 years ago
GoogleDeveloperDay
Alex Martelli's Google Developers Day talk on classic design patterns (creational, structural and behavioral) and how they appear in Python. He stresses that patterns must be studied in the context of the implementing language.
18:19Why city flags may be the worst-designed thing you've never noticed | Roman Mars
5.2M views • 11 years ago
TED
Roman Mars gives a funny TED talk on vexillology, laying out five basic principles of good flag design and why many city flags fail them.
1:58:46Dynamic Languages Wizards Series - Panel on Language Design
16K views • 14 years ago
Eduardo Cavazos
A 2001 panel with Paul Graham, John Maeda, Jonathan Rees and Guy Steele on programming language design, part of the Dynamic Languages Wizards Series.
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.
1:03:14Category Theory, The essence of interface-based design - Erik Meijer
74K views • 11 years ago
FooCafe
Erik Meijer argues that category theory is the mathematicians' version of interface-based design. He shows that Java 8 lambdas and method references form a Cartesian closed category.
1:01:40A Philosophy of Software Design | John Ousterhout | Talks at Google
547K views • 8 years ago
Talks at Google
John Ousterhout, Stanford professor and creator of Tcl, presents the ideas of his book A Philosophy of Software Design in a Talks at Google session. He covers managing complexity, deep modules and interfaces, and what he teaches in his Stanford software design course.
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:16Clasp: Common Lisp using LLVM and C++ for Designing Molecules
9K views • 11 years ago
Google TechTalks
Christian Schafmeister's Google Tech Talk on Clasp and CANDO, a Common Lisp implementation on LLVM and C++ used to design molecules, including energy minimization and force-field calculations.
1:35:12Modernizing Compiler Design for Carbon Toolchain - Chandler Carruth - CppNow 2023
71K views • 3 years ago
CppNow
Chandler Carruth's CppNow 2023 talk on modernizing compiler design for the Carbon toolchain, using data-oriented design and modern hardware assumptions. It covers lexing, parsing and compact data structures aimed at compiler performance.
1:01:34Google I/O 2008 - Dalvik Virtual Machine Internals
188K views • 18 years ago
Google for Developers
Dan Bornstein's Google I/O 2008 talk on the internals of Dalvik, the virtual machine that runs Android code. It covers the motivation for its design, the dex format and its register-based interpreter, plus tips for writing code that suits the platform.
1:06:20Lars Bak - The Making of a Secure and Robust IoT Development Platform
3K views • 7 years ago
Curry On!
A Curry On talk by Lars Bak, known for V8 and Dart, on building a secure and robust IoT development platform. It discusses language and VM design choices for small devices.
59:34CppCon 2017: Matt Kulukundis “Designing a Fast, Efficient, Cache-friendly Hash Table, Step by Step”
137K views • 9 years ago
CppCon
Matt Kulukundis explains how Google designed SwissTable, a fast, cache-friendly hash table, step by step from std::unordered_map. The talk covers open addressing, SIMD probing and the tradeoffs of changing a fundamental data structure.
59:56AWS re:Invent 2018: Amazon DynamoDB Deep Dive: Advanced Design Patterns for DynamoDB (DAT401)
468K views • 7 years ago
Amazon Web Services
Rick Houlihan's AWS re:Invent 2018 deep dive on advanced DynamoDB design patterns. It covers index overloading, GSI sharding, composite keys, graph processing and transactions.
1:05:18What can Seattle learn from Dutch street design?
328K views • 13 years ago
UniversityGreenways
Seattle landscape architect Fred Young gives an hour-long visual tour of Dutch cycling infrastructure, covering design details, continuous networks and how cycling fits daily life in the Netherlands.
1:12:02Java on a 1000 Cores - Tales of Hardware / Software CoDesign
23K views • 17 years ago
Google TechTalks
Cliff Click of Azul Systems gives a Google Tech Talk on running Java business applications on a machine with about a thousand cores. He covers hardware and software codesign, including garbage collection hardware and the JIT.
46:40Andrew Kelley: A Practical Guide to Applying Data Oriented Design (DoD)
415K views • 2 years ago
ChimiChanga
Andrew Kelley, creator of Zig, presents practical data-oriented design techniques for shrinking memory footprint and making programs cache friendly. He ends with a case study of how these ideas sped up the Zig compiler.
1:17:21Sid Meier's Psychology of Game Design
137K views • 10 years ago
GDC Festival of Gaming
Civilization creator Sid Meier's GDC 2010 talk on applying psychology to game design. He discusses player perception, randomness, and win states, and why designers must account for how players experience events.
23:57GopherCon 2016: The Design of the Go Assembler - Rob Pike
116K views • 10 years ago
Gopher Academy
Rob Pike's GopherCon 2016 talk on the design of the Go assembler, explaining why Go uses a common assembly language translated to each architecture.
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.
58:39Robert C Martin - Clean Architecture and Design
285K views • 12 years ago
gnbitcom
Robert C. Martin (Uncle Bob) talks about clean architecture and design, including keeping the database and frameworks out of the center of an application. It is an hour-long conference talk.
1:00:52RimWorld: Contrarian, Ridiculous, and Impossible Game Design Methods
285K views • 7 years ago
GDC Festival of Gaming
RimWorld creator Tynan Sylvester explains at GDC 2017 how Ludeon framed the game as a story generator rather than a game. He covers the design methods that came out of that frame.
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:05:37Designing the Ideal Bootstrapped Business with Jason Cohen
551K views • 6 years ago
Rob Walling
Jason Cohen's MicroConf talk on designing a bootstrapped business by starting from your own strengths, goals and constraints. He works backward to the business model, pricing, market and product that fit, with practical points like annual prepay and pricing tiers.
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.
1:04:53Julia: to Lisp or not to Lisp?
24K views • 10 years ago
European Lisp Symposium
Stefan Karpinski's European Lisp Symposium 2016 talk asks whether Julia is a Lisp. He covers the features it borrows from Lisp, such as macros and closures, and where it departs, including syntax and its type system, with generated machine code shown.
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.
48:27Jonathan Blow: Game design: the medium is the message
119K views • 13 years ago
CreativeMornings HQ
Jonathan Blow's CreativeMornings talk arguing that business models shape game design, drawing an analogy between 1970s TV and HBO and between free-to-play and premium games. He calls for games that inspire awe rather than chase constraints.
1:44:09Jonathan Blow: Video Games and the Human Condition
158K views • 15 years ago
rubbermuck
Jonathan Blow's 2010 Rice University talk argues that game designers refine their techniques in ways that can manipulate players, as with A/B-tested social games. He discusses the ethical responsibility of designers and what games can offer beyond addiction.
2:03:12Co-dfns Live Stream: Compiler Design and Architecture
21K views • 9 years ago
Aaron Hsu (arcfide)
A two-hour live stream in which Aaron Hsu explains the architecture, design history and aesthetic of Co-dfns, his parallel APL compiler. He walks through the code and the reasoning behind its dense style.
1:26:02Stanford Seminar - The Soul of a New Machine: Rethinking the Computer
76K views • 6 years ago
Stanford Online
Bryan Cantrill of Oxide Computer Company gives a Stanford EE380 talk on rethinking the server. He argues that hyperscaler-style rack-scale machines with open firmware, RISC-V and Rust should be available to everyone, not just the giants.
59:34PRACTICE 2018: Joseph White
21K views • 8 years ago
NYU Game Center
Joseph White, creator of PICO-8, retraces the design of the fantasy console and how tools can shape and guide creative work. He discusses cozy, constrained design spaces and the influence of user-made cartridges.
1:01:45Information, Evolution, and intelligent Design - With Daniel Dennett
586K views • 11 years ago
The Royal Institution
Daniel Dennett gives a Royal Institution talk toward a unified theory of information, tying together evolution, learning and engineering. He argues that design can arise bottom-up through small steps without a designer.
1:00:271,500 Slot Machines Walk into a Bar: Adventures in Quantity Over Quality
184K views • 7 years ago
GDC Festival of Gaming
In this 2019 GDC talk, Alex Schwartz and Ziba Scott explain how they flooded the app stores with over 1,500 auto-generated slot machine games to find the lowest bar for success. They tour the dark side of the mobile app market.