Video yükleniyor...

Video Yüklenemedi

Ana Sayfaya Dön

Morning bathrobe rant at the cabin: performance.

301,861 görüntüleme • 1 yıl önce •via X (Twitter)

11 Yorum

nils profil fotoğrafı
nils1 yıl önce

This haircut screams high-performance programmer

Seven Eleven Records profil fotoğrafı
Seven Eleven Records1 yıl önce

🎶 Get 'Lost in Bedroom Pop' 🌌 Dive into dreamy melodies and chill vibes – the ultimate soundtrack for your late-night escapes. ✨ #NewMusic 🎧 Stream it now: ➡️

Viva profil fotoğrafı
Viva1 yıl önce

Not sure how to agree with you on clean code not impacting performance in any meaningful way. Mentality not caring about code performance might be why we have some terrible software out there and that these milliseconds actually do stack up pretty quickly

Uncle Bob Martin profil fotoğrafı
Uncle Bob Martin1 yıl önce

Here's how you can agree. 1. Choosing good names does not impact performance. 2. Being careful with comments does not impact performance. 3. Polymorphic dispatch, used carefully, impacts performance by a few nanoseconds per dispatch. 4. Breaking large functions into smaller well named functions might add a couple of nanoseconds per call if the compiler isn't smart enough to inline the code. It's true the milliseconds can stack up quickly to be noticeable. Nanoseconds, on the other hand, stack up a million times slower than milliseconds. Even the tiniest amount of care will prevent such stacks from forming.

The Moisrex profil fotoğrafı
The Moisrex1 yıl önce

Yeaaah, I was on board with this until you came for performance. Performance is THE red line. I'm using way too many applications advertised as highly optimized that I see things happen in seconds. - Computers got better, but batteries didn't - Those nanoseconds add up to seconds

Uncle Bob Martin profil fotoğrafı
Uncle Bob Martin1 yıl önce

A billion nanoseconds add up to a second. If you are wasting a nanosecond a billion time per second you've got a real problem on your hands. If you are wasting a nanosecond once every microsecond you won't even notice the slowdown. If you _really_ cared about performance you'd be writing in assembler and optimizing every single memory fetch and every single cache hit. The moment you decide that one of those doesn't matter is the moment you've come over to my side. Sometimes a nanosecond can be spared to make the job of the programmer a bit easier.

Mihai Dinu profil fotoğrafı
Mihai Dinu1 yıl önce

I agree with some things he said and clean code is great up to the point it impacts performance, but overall this might be the worst take uncle bob has had so far. Uncle Bob, isn’t a pound made up of multiple pennies? 🤔

Uncle Bob Martin profil fotoğrafı
Uncle Bob Martin1 yıl önce

A pound is made up of many pennies. But spending a pound to save a penny is not very bright.

Rodrigo Jaroszewski profil fotoğrafı
Rodrigo Jaroszewski1 yıl önce

I have watched both sides of the discussion (yes, you @cmuratori). Two thoughts I want to share: 1. Clean Code != (OOP & SOLID). Clean code == writing code that is respectful of your coworkers' time. 2. Your work domains are different and require different solutions. Respectful code is different for each domain. Thoughts below: Writing "a clean code" is not the same as following OOP. Writing clean code is not the same as following SOLID. If I could point any criticism, I wish the Clean Code book was just about "clean code," and wouldn't touch specifically on OOP or SOLID. The reason is that even if part of those two practices are germaine to the question, Clean Code is not not bound by the whole of it. It's just about writing software of any sort in a way that is respectful of your coworkers' time. It could be done in procedural, functional, or object-oriented programming. The last point is: your domains are so different. Bob has worked on enterprise software, while Casey worked on game engines. It is completely absurd to me that anyone in the world would ever ever dismiss a whole book over the fact that it doesn't work on his domain; just as much, it's completely absurd for someone to ever think writing software in OOP, and following the SOLID principles, will give them the real-time performance necessary to write a game engine! There is no way you can reconcile those practices with the way interpreters/compilers work today, and it is a foolish waste of human hours to be continuously discussing about this like people have been for the past 17 years since this book hit the shelves. Why can't people see this is a domain-driven issue, not a performance discussion? Casey, I want to watch you eek every gram of performance out of the computer, and I want to watch Bob teach people write software in a respectful manner. But please, make it very clear that your views are domain-specific, and if you try those techniques in another domain, you might ruin the day of a whole bunch of people. The amount of bike-shedding I had to deal with in day-to-day because someone was shit-talking Clean Code, worring about performance while copying 8GB or RAM maps of a parsed JSON with 5 cores dying and the 6th a knife's edge away from harakiri is insane, and it starts when people look too much at engineering and too little at what the actual f*** they're doing!

Thomas Prikryl profil fotoğrafı
Thomas Prikryl1 yıl önce

"Human time" - obvious yet very fitting term, gonna be using that from now on.

George Kremenliev profil fotoğrafı
George Kremenliev1 yıl önce

Every generation of seniors taught their juniors to count milliseconds and by the time they learned that milliseconds don't matter they already were not teaching. The next generation made the same mistake. So this practice persists to this day in some pockets of the world.

Benzer Videolar