Like him bashing SOLID principles. It read like a man arguing against hammers, and instead suggesting using drills (which is fine if you need to drill a hole but bad advice if you want to hammer a nail). Like yeah, SOLID is over used and over-stated, but they were invented to stop certain set of problems.
The emperor definitely doesn't have any clothes though when it comes to either one of them.
The problem is, when was it ever shown they solve any problem? Where are the measurements showing less dev time or less bugs or better performance? Where even is an algorithm to show your software is SOLID? People can't even agree on what those mean.
Software has gotten a lot more complicated since the 1990's and from my experience, projects where design patterns are used effectively run a lot more smoothly than those where they're not used or not used effectively. It's great when you can open a project from 15 years ago and say "Actually, the code isn't too bad!" because the developers followed some rules of thumb.
I agree with Casey that these rules of thumb aren't going to lead to higher-quality software from the end user's perspective. I doubt that they're going to make it worse though, unless they're blindly followed.
There's something to be said for not wasting time on things that don't matter to anyone but yourself, and code aesthetics is often one of those things.
I'm curious to know what you think is unmaintainable in his codebase. Sure he uses alternative little-known techniques for say, memory management, but once you know what is going on, the code is pretty clear I think.
He posted an issue about the Windows terminal being slow, and proposed simple things to speed things up. What happened? The Windows Terminal team declared that what he proposed is an entire doctoral research project that would be a massive investment. He did the freaking thing in 2 days and said that it's "nothing" and "very simple". The team then apologized for being dumb and is now working on implementing his idea, that they described as "original" and "very valuable"
T(n) = b + (T(1)-b)/n
T(n): Time to run task for n parallel threads (workers)
b: Time it takes to run part of task that can not be parallelized
Therefore:
T(inf) = b
This misses the cost of coordinating between workers. It also removes the key part of it being a theoretical limit of the speedup as resources increase.Their attempt to simplify it makes the new version dangerously wrong if you take their word for it.
Less wrong:
T(n) >= b + (T(1)-b)/n
Or even (but now it's not really Amdahl's again): T(n) >= b + (T(1)-b)/n + C(n)
In fact, for many problems T(n) > T(n-1) for some n, as at some point C(n) > (T(1)-b)/nThis is not really "a more subtle improvement", "new version", or "refinement". It was known in the field in the 70s. That is, Brook's Law can apply to parallelized computation, not just to teamwork. Which OP observes but still doesn't make them see the errors in their previous assertion.