To be fair, I had not heard of the Witness until well after it came out.
Braid came out the same time XBox Indie Games.
I will say, I do not find a lot of their rhetoric convincing. Especially for people who have never attempted to write the software they are criticizing.
Blow only writes single player games that do not persist significant data to the machine. Nothing bad happens if your save file is corrupted. Nothing of value is lost if scene transitions have a bug.
But they're going to tell me that hyper-scaled multi-user real-time software is written poorly?
Also, I've been watching Muratori's Handmade Hero series. The deeper it gets into the game, the worse it gets. At one point, he's like "Ah, I dunno, we'll implement bubble sort because we don't have time to do any other sort." Followed by a diatribe about why bubble sort is a bad name. It's a fine name. Things bubble up.
Second, merge sort is just as quick to write and faster.
But in general, they alternate between speaking in platitudes and disparaging other software.
> Especially for people who have never attempted to write the software they are criticizing.
E.g. Casey and Blow often criticise the Visual Studio debugger. It's slow, has quite limited functionality. And it progressively gets worse over time (e.g. it can no longer update watched values at the same speed as you step through the program).
Do they both have to write a debugger to demonstrate how bad it is?
No. Other people do it, single-handedly. See RAD Debugger (https://github.com/EpicGamesExt/raddebugger) and RemedyBG (https://remedybg.handmade.network). Relevant Casey rant: https://www.youtube.com/watch?v=GC-0tCy4P1U
And the same is true for a lot of other software.
You don't have to write some software to criticise how bad it is. E.g. I cannot but make fun of Discord for implementing "we will intentionally kill our app if it consumes 4GB of memory and are very good at prioritising fixing memory issues seeing a whopping 5% improvement for p95 of users": https://www.reddit.com/r/discordapp/comments/1pej7l7/restart...
Doesn't mean I have to write Discord to criticise it. All I need is an understanding of rather basic performance and of general engineering practices.
And also, you've probably failed to even understand what they are criticising/saying: https://news.ycombinator.com/item?id=46315616
What the hell language was Muratori teaching with that he doesn't have a sort?
Even C provides a halfway useful comparison sort in the box† and they're so cheap they don't even supply the O(1) growable array type
† It's named qsort, but despite the name it might not just be Hoare's "Quicksort". However it also won't be somebody's half-remembered bubble sort.
> Especially for people who have never attempted to write the software they are criticizing.
Casey was criticizing new Windows Terminal got into an argument with Microsoft's project manager that said that it was impossible to implement optimizations that Casey talked about. Well, Casey reimplemented terminal, it was not that hard.
https://news.ycombinator.com/item?id=38650254