type-driven 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.
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.
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.
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.
23:23Building Prototypes Dan Gelbart part 18 of 18 Design
99K views • 13 years ago
Dan Gelbart
The final part of Dan Gelbart's 18-part Building Prototypes series, focused on mechanical design. It opens with a demonstration of stiffness and covers practical design principles for prototype machines.
43:14Anders Hejlsberg and Lars Bak: TypeScript, JavaScript, and Dart
14K views • 13 years ago
DartlangTV
A Channel 9 conversation recorded at GOTO 2012 between Anders Hejlsberg (TypeScript) and Lars Bak (Dart). They discuss the two languages and different approaches to making JavaScript development safer, including runtime type checking.
39:40"Type-Driven Program Synthesis" by Nadia Polikarpova
15K views • 8 years ago
Strange Loop Conference
Nadia Polikarpova's Strange Loop talk on program synthesis driven by refinement types, as in Synquid. It shows how rich type specifications can be turned into verified, executable code.
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.
6:59TypeScript types can run DOOM
485K views • 1 year ago
Michigan TypeScript
The Michigan TypeScript group shows the Doom engine running entirely inside the TypeScript type system. It is open source, and two follow-up videos cover why and how they did it.
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.
27:36Why Western Designs Fail in Developing Countries
1.8M views • 2 years ago
Design Theory
A design essay on why products designed in Western contexts often fail when deployed in developing countries. It covers expert blindness and cultural assumptions, with examples such as malaria nets and the One Laptop Per Child project.
1:01:31TypeScript is being ported to Go | interview with Anders Hejlsberg
102K views • 1 year ago
Michigan TypeScript
An interview with Anders Hejlsberg, lead architect of TypeScript, about porting the TypeScript compiler to Go. He covers the 10x type-checking speedup, lower memory use, and why Go was chosen.
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.
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.
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.
33:39Music Software & Interface Design: MuseScore
959K views • 7 years ago
Tantacrul
Tantacrul gives a detailed UX and UI design review of the MuseScore 3 notation software and compares it with Sibelius. It examines visual appeal, navigation and notation quality.
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.
46:33How We Made MuseScore 4 - Music App Design is Challenging!
814K views • 3 years ago
Tantacrul
Tantacrul walks through how the MuseScore 4 team was built and how design decisions were made for the overhaul of a huge legacy notation app. It covers playback and engraving quality improvements.
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.
1:11:42ElixirConf 2023 - José Valim - The foundations of the Elixir type system
38K views • 3 years ago
ElixirConf
José Valim's ElixirConf US 2023 closing keynote on the foundations of the Elixir type system, covering set-theoretic types and gradual typing with strong arrows.
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.
54:31Does APL Need a Type System? by Aaron W Hsu at #FnConf18
6K views • 7 years ago
ConfEngine
Aaron Hsu's FnConf18 talk asks whether APL needs a static type system. He argues that APL's expressiveness and rapid iteration already deliver the benefits usually credited to types.
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.
1:40:06KiCad 6 STM32 PCB Design Full Tutorial - Phil's Lab #65
987K views • 4 years ago
Phil’s Lab
A 100-minute tutorial from Phil's Lab on designing an STM32-based 'black pill' PCB in KiCad 6. It covers schematic capture, two-layer layout and routing, USB, and sending the board for manufacture and assembly.
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: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.
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.
56:58Philip Wadler - Propositions as Types (Lambda Days 2016)
20K views • 10 years ago
Erlang Solutions
Philip Wadler's Lambda Days talk on propositions as types, the link between logic and computation that underlies theorem provers and programming language design.
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.
1:42:53Edward Kmett - Type Classes vs. the World
36K views • 11 years ago
Boston Haskell
Edward Kmett speaks at the Boston Haskell meetup about type classes and the design tradeoffs of global coherence compared with other approaches to implicit instances. It covers why uniqueness of instances matters for reasoning and refactoring.
47:25Introducing SILE: A New Typesetting System
5K views • 11 years ago
lathosjp
The SILE author's FOSDEM 2015 talk introducing SILE, a TeX-inspired typesetting system with frame-based layout, Unicode, OpenType and a Lua-based extensible design.
38:36"A Little Taste of Dependent Types" by David Christiansen
48K views • 8 years ago
Strange Loop Conference
David Christiansen gives a Strange Loop 2018 introduction to dependent types, where one language serves for both compile-time and run-time code and programs unite with proofs. It draws on his book The Little Typer.
7:26Teletype Model 19 - Part 1: A Teletype Arrives for Restoration
33K views • 8 years ago
CuriousMarc
CuriousMarc inspects a newly arrived Teletype Model 19, an early military unit built around a Model 15 keyboard and printer, after an initial rough cleaning. It is the first part of a restoration series and touches on 5-bit Baudot code.
11:02How to design an actually good toaster with lessons from the 1940's
851K views • 6 years ago
Technology Connections
Technology Connections praises a 1940s-50s Sunbeam toaster and explains what makes a toaster well designed, drawing on a vintage Sunbeam video.
18:53There's No Crying in Flag Design
20.6M views • 3 years ago
CGP Grey
CGP Grey discusses flag design principles and grades flags, following the Minnesota state flag redesign. It argues for simple, distinctive flags.
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.
36:30Pricing Design Work & Creativity (The Guide)
4.6M views • 10 years ago
The Futur
The Futur's guide to pricing design and creative work, arguing against hourly rates and for value-based pricing. It features Blair Enns and says to price the client, not the job.
12:23Typesetters in the '80s - Computerphile
105K views • 12 years ago
Computerphile
Professor Brailsford of the University of Nottingham describes how the university set out to print its own mathematics exam papers in the 1980s. The story centers on getting a Mergenthaler Linotron 202 typesetter to work with their own software.