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部切开,顺序看的是被推荐跨越了多少个月,不是播放量。每条标题下面那一句是这部片子自己的内容说明,用来区分它在讲定义、过程、演示还是观点。点进去能看到推荐原话、原文链接和适合谁看。看的时候把强烈推荐当成有人明确叫你去看,把引用当成只是拿来举例,把批评留下来对照,不要把每条评论都当成同一力度。

"Clean" Code, Horrible Performance
Casey Muratori shows how typical 'clean code' object-oriented patterns can cost large factors in performance.

Design Patterns vs Anti pattern in APL by Aaron W Hsu at FnConf17
Aaron Hsu discusses design patterns and anti-patterns in APL and why the language is productive despite its write-only reputation.

Domain Modeling Made Functional - Scott Wlaschin - KanDDDinsky 2019
Scott Wlaschin shows how statically typed functional languages, using F# examples, can model a business domain so that invalid states cannot be represented.

Old Is the New New • Kevlin Henney • GOTO 2018
Kevlin Henney's GOTO 2018 talk argues that much of what looks new in software is a recycling of concepts with long histories.

Rich Hickey: Deconstructing the Database
Rich Hickey, creator of Clojure and designer of Datomic, gives a JaxConf 2012 talk that takes apart traditional database architecture.

10 Things I Regret About Node.js - Ryan Dahl - JSConf EU
Node.js creator Ryan Dahl discusses ten design mistakes he made in Node, including package.json, npm, and module resolution.

The Functional Programmer's Toolkit - Scott Wlaschin
Scott Wlaschin demystifies functional programming terms like monads, monoids, functors and catamorphisms by showing how they fit into a small toolkit.

Concurrency is not Parallelism by Rob Pike
Rob Pike's Go talk distinguishing concurrency, the structuring of independent processes, from parallelism, their simultaneous execution.

Debt Metaphor
Ward Cunningham explains the history and intent of the debt metaphor, which he coined while refactoring the WyCash product.

Ron Pressler - Pull Push: Please stop polluting our imperative languages with pure concepts-Curry On
Ron Pressler's Curry On 2015 talk arguing that imperative languages should not be polluted with pure functional concepts like monads.

Om Next - David Nolen
David Nolen presents Om Next, the redesign of the ClojureScript Om library, drawing on Relay, Netflix's JSONGraph and Datomic.

RailsConf 2015 - Nothing is Something
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.

"Data Driven UIs, Incrementally" by Yaron Minsky
Yaron Minsky of Jane Street shows how the OCaml Incremental library lets trading UIs express data transformations that are easy to read and efficient on streaming data.

J B Rainsberger Integrated Tests Are A Scam HD
J.

"Agile Methods The Good, the Hype and the Ugly," Bertrand Meyer
Bertrand Meyer's ACM webcast giving a critical look at agile methods, separating good ideas from hype and from practices he thinks damage projects.

Keynote - JSON Graph: Reactive REST at Netflix
Jafar Husain's ACM keynote presents Netflix's JSON Graph and Falcor, which let web developers treat all cloud data as one virtual JSON model.

"Stop Rate Limiting! Capacity Management Done Right" by Jon Moore
Jon Moore's Strange Loop 2017 talk argues that rate limiting is the wrong tool for protecting services from noisy clients.

CppCon 2015: Sean Parent "Better Code: Data Structures"
Sean Parent's CppCon 2015 talk on better use of standard containers and the goal of having no incidental data structures.

Dan Abramov The wet codebase
Dan Abramov's talk on the wet codebase, using visualizations to show how removing all duplication too early produces wrong abstractions that are hard to unwind.

Alan Kay : July 2007 : A Conversation with CMU Faculty & Students
Alan Kay visits Carnegie Mellon's School of Computer Science in 2007 for an informal conversation with faculty and students.

Nordic.js 2014 • Douglas Crockford - The Better Parts
Douglas Crockford's Nordic.js 2014 talk on 'the better parts' of JavaScript and programming in general.

Programming is terrible—Lessons learned from a life wasted. EMF2012
Tef's EMF 2012 talk on lessons from a career in programming, a candid and humorous look at why programming is so often terrible.

MountainWest RubyConf 2014 - But Really, You Should Learn Smalltalk
Noel Rappin's MountainWest RubyConf talk introduces Smalltalk to Ruby programmers.

A New Way to look at Networking
Van Jacobson's 2006 Google Tech Talk argues for rethinking networking around named data rather than host-to-host connections.