Best Software architecture & design Videos
「Software architecture & design」下面有177部被不同的人、在不同月份推荐过的视频。挑的时候先看对象:入门8部,适合还没学过的人;进阶132部,适合已经懂术语的人;普通向20部,按兴趣就能看;更硬的17部,留给想看推导或细节的人。这一类数量最多的是演讲,所以它们的共同点是一位讲者把一个判断讲完,例子是为了撑住这个判断。常出现的频道包括ClojureTV、Confreaks、Strange Loop Conference。目录给这个主题划的范围是:Software architecture and design: object-oriented programming, design patterns, clean architecture, API design, microservices vs monoliths, data-oriented design, versioning, abstraction, simplicity, Alan Kay, Uncle Bob.如果只看三部,就从《RailsConf 2014 - All the Little Things by Sandi Metz》开始,它负责把问题讲出画面;然后看《"Simple Made Easy" - Rich Hickey (2011)》,换一种讲法或例子;最后看《"Making Impossible States Impossible" by Richard Feldman》,留给已经有基础的人。页面按每页24部切开,顺序看的是被推荐跨越了多少个月,不是播放量。每条标题下面那一句是这部片子自己的内容说明,用来区分它在讲定义、过程、演示还是观点。点进去能看到推荐原话、原文链接和适合谁看。看的时候把强烈推荐当成有人明确叫你去看,把引用当成只是拿来举例,把批评留下来对照,不要把每条评论都当成同一力度。

The Language of the System - Rich Hickey
Rich Hickey's 2013 talk applies language-design thinking to whole systems, covering names, queues, data, failure, and the interfaces between programs.

Stop Writing Classes
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.

Pete Hunt: React: Rethinking best practices -- JSConf EU
Pete Hunt of Facebook and Instagram introduces React at JSConf EU 2013 and explains its design principles.

Bottom Up vs Top Down Design in Clojure - Mark Bastian
Mark Bastian contrasts top-down object-oriented design with bottom-up, data-oriented design in Clojure.

"The Mess We're In" by Joe Armstrong
Joe Armstrong, co-inventor of Erlang, gives a funny and opinionated Strange Loop talk on the tangled state of software: build tools, package managers, entropy and the physical limits of computation.

Jonathan Blow - Preventing the Collapse of Civilization (English only)
Jonathan Blow's DevGAMM 2019 talk argues that software knowledge is being lost between generations and that growing layers of abstraction could lead to a decline in technological civilization.

Rails Conf 2012 Keynote: Simplicity Matters by Rich Hickey
Rich Hickey's keynote at RailsConf 2012, a close sibling of his 'Simple Made Easy' talk.

Casey Muratori – The Big OOPs: Anatomy of a Thirty-five-year Mistake – BSC 2025
Casey Muratori's two-hour talk tracing the history of object-oriented programming back to the 1960s and examining how its ideas, and later entity component systems, came about.

Clean Code - Uncle Bob / Lesson 1
The first lesson of Uncle Bob (Robert C.

Alan Kay, 2015: Power of Simplicity
Alan Kay's 2015 talk on the power of simplicity, arguing that systems become simpler by building on more sophisticated fundamental building blocks and that big research horizons drove invention at Xerox PARC.

Domain Modeling Made Functional - Scott Wlaschin
Scott Wlaschin's NDC talk on using statically typed functional programming, F# in particular, to model a business domain.

Unix and Google
A short animated simulation comparing how Multics and Unix were developed, showing why Unix's small composable programs and pipes gave it a efficiency advantage.

James Powell: So you want to be a Python expert? | PyData Seattle 2017
James Powell's nearly two-hour PyData talk builds up Python's data model, decorators, generators and context managers, coding live in Vim.

Casey Muratori | Smart-Pointers, RAII, ZII? Becoming an N+2 programmer
Casey Muratori argues against smart pointers and RAII, advocating grouped-element thinking, zero-is-initialization and stubs as better ways to structure memory and handle errors.

Gtk to Qt - a strange journey [linux.conf.au 2014]
Dirk Hohndel explains why the Subsurface dive log project migrated from Gtk to Qt, the obstacles encountered, and advice for other applications frustrated with Gtk.

Functional architecture - The pits of success - Mark Seemann
Mark Seemann argues that functional programming naturally yields many of the best practices object-oriented developers learn painfully.

Joe Armstrong & Alan Kay - Joe Armstrong interviews Alan Kay
Joe Armstrong, creator of Erlang, interviews Alan Kay at Code Mesh.

Introduction to NoSQL • Martin Fowler • GOTO 2012
Martin Fowler's GOTO 2012 introduction to NoSQL databases: where they came from, their data models, how consistency thinking differs, and when to use them.

CppCon 2017: Titus Winters “C++ as a "Live at Head" Language”
Titus Winters' CppCon 2017 talk argues for C++ and Google's Abseil to be maintained as a live at head language, relying on testing and automated tooling rather than never changing or promising no compatibility.

"Transducers" by Rich Hickey
Rich Hickey introduces transducers in Clojure, a way to make map, filter and similar algorithms composable independent of the data source.

The Clean Architecture in Python
Brandon Rhodes' PyOhio 2014 talk on applying the Clean Architecture in Python.

Rich Hickey rants about HttpServletRequest in 1080p: Death By Specificity from Clojure Made Simple
A five-minute excerpt of Rich Hickey's Clojure Made Simple talk, with new slides, ranting about HttpServletRequest and specificity.

DjangoCon 2008 Keynote: Cal Henderson
Cal Henderson's DjangoCon 2008 keynote, "Why I Hate Django", is a funny critique of Django from a Flickr architect.

The Unreasonable Effectiveness of Multiple Dispatch | Stefan Karpinski | JuliaCon 2019
Julia co-creator Stefan Karpinski explains why multiple dispatch makes Julia code and types reusable across packages with so little friction.