Robert C Martin - Clean Architecture and Design
gnbitcom2 HN recommenders · recommended in 2 months, 2018-2024
285K views · 12 years ago · talk · evergreen
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.
Recommended as a formative talk on architecture that argues against putting the database at the center of a design.
1:13:24The Principles of Clean Architecture by Uncle Bob Martin
NorfolkDevelopers
591K views • 10 years ago
1:23:35"Uncle" Bob Martin
Program on Entrepreneurship
179K views • 11 years ago
1:23:35Bob Martin SOLID Principles of Object Oriented and Agile Design
People career
517K views • 11 years ago
1:06:39Ruby Midwest 2011 - Keynote: Architecture the Lost Years by Robert Martin
Confreaks
172K views • 14 years ago
1:48:42Clean Code - Uncle Bob / Lesson 1
UnityCoin
2.2M views • 7 years ago
1:18:21"Uncle" Bob Martin - "The Future of Programming"
Paul Stringer's Mobile Tech
1.8M views • 10 years ago
35:33Visualising software architecture with the C4 model - Simon Brown, Agile on the Beach 2019
Agile on the Beach
553K views • 7 years ago
1:04:00CppCon 2015: Sean Parent "Better Code: Data Structures"
CppCon
106K views • 11 years ago
49:54The Clean Architecture in Python
Next Day Video
114K views • 12 years ago
28:03Object-Oriented Programming is Embarrassing: 4 Short Examples
Brian Will
2.2M views • 10 years ago
1:15:58October CincyRb - Jim Weirich on Decoupling from Rails
Launch Scout
48K views • 13 years ago
54:52Introduction to NoSQL • Martin Fowler • GOTO 2012
GOTO Conferences
1M views • 13 years ago
22:29Gopherfest 2015 | Go Proverbs with Rob Pike
The Go Programming Language
317K views • 10 years ago
1:01:40A Philosophy of Software Design | John Ousterhout | Talks at Google
Talks at Google
547K views • 8 years ago
2:11:32How I program C
Eskil Steenberg
1M views • 9 years ago
1:03:36Christopher Alexander - Patterns in Architecture
Peter Petrash
135K views • 13 years ago
22:41"Clean" Code, Horrible Performance
Molly Rocket
1.2M views • 3 years ago
1:03:48Greg Young - CQRS and Event Sourcing - Code on the Beach 2014
Code on the Beach
170K views • 12 years ago
1:29:27The Forgotten Art of Structured Programming - Kevlin Henney [C++ on Sea 2019]
cpponsea
245K views • 7 years ago
1:05:59Modern C and What We Can Learn From It - Luca Sas [ ACCU 2021 ]
ACCU Conference
130K views • 5 years ago
3 comments from Hacker News
> it's both easier and more profitable to tell people that they need to OOP better than to use more appropriate paradigms in the design of their code. I don't think this is quite on target. Sure, he needs to go where the people are in order to communicate to the most people, but that doesn't mean he doesn't speak out against fads if it's appropriate. This talk was really formative for me: ▶ this video If I remember correctly, he rails against just sticking the database in the middle of your system and calling that your architecture. If I'm remembering link correctly, he says OOP is no big deal, it's just encapsulation-polymorphism-inheritance, and then goes on to say things like C had better encapsulation than OO languages (you can keep your .c file to yourself, and just give someone the .h to program against.). And c-style bytes with stdin/stdout was designed with perfect forward-compatibility - programs like your terminal don't need to be recompiled even though they interact with your program (which was written after). And for the last 5+ years he's been pushing FP pretty hard, especially closure. I don't see him as pushing OO on people at the expense of anything else.
It is a pity that so much effort has been put on writing/designing this booklet. Software Architecture is very hard to 'compress' into a booklet this size. And the concepts explained seem all mixed up. Also, I never understood the difference between Software Architect and Solution Architect, I think they are just marketing tags to specify a bit more what you can do as an architect (install/customize a turn-key solution, networking architecture, software development guidance from scratch, etc). There is so much noise in the space of Software Architecture. And I think is something natural: building software is not architecture, nor engineering, nor mathematics... still it is all that at the same time. It also has strong social, linguistic and design components. Maybe it is just too new a discipline to define it clearly. Personally I find these resources more convincing than the booklet or the references mentioned inside it: For the technical/organizational (Dev teams) part Architecture without Architects: link Clean Architecture: ▶ this video link link For the Enterprise Architect part: link link link
I wouldn't use Ruby/Python for web development given their know issues. I'd use Java/C#/Go/Closure; two of these existed at the time Twitter was made. While those two are more verbose, the IDEs make most of that easy (I use Eclipse and AOP to generate almost all of that bulk). So picking something that's good at the start will save you in the end. People tend to think, "We'll architect it later" means "We don't have to think now". You need to think at every step. You don't need to know how you'll deal with everything, but there is a lot of rooming for being rational. You should think about fault tolerance when you start. It could be that you think you don't need much since everything will deploy to one box (and you're okay with loosing the whole thing). You need to be rational. You need to know why you did what you did and what the impacts would be. I'm going to stop picking on Twitter since they are the case study in what not to do. They learned from themselves and taught us all much in the process. Many startups don't think all this through (even if they only need to think 2 moves ahead). They over-hire. They under design. They make lots of poor choices because they think they have the runway and want to be cool with the latest frameworks. All of these actions I'd place squarely in the folly camp since Uncle Bob and other resources have been free since at least 2014 ( ▶ this video ).