Some background
When they're not busy designing pride flags the folx at Microsoft spend their time coding shitty software. Among these is the new Windows Terminal.
Casey Muratori is a programmer who, despite never releasing anything, clearly considers himself to be some kind of genius.
With that out of the way, here's the drama:
ACT 1: THE ISSUE
Frustrated with the slowness of Windows Terminal when printing colors, Casey submits a github issue. He even develops a benchmark application to accurately measure the speed.
After a bit of back and forth Casey starts to becomes frustrated:
Am I missing something? Why is all this stuff with "runs of characters" happening at all? Why would you ever need to separate the background from the foreground for performance reasons? It really seems like most of the code in the parser/renderer part of the terminal is unnecessary and just slows things down. What this code needs to do is extremely simple and it seems like it has been massively overcomplicated.
He receives this legendary response:
I believe what you’re doing is describing something that might be considered an entire doctoral research project in performant terminal emulation as “extremely simple” somewhat combatively. I am not aware of the body of work around performant GPU terminal emulation
Casey gets angry:
When we're at the stage when something that can be implemented in a weekend is described as "a doctoral research project", and then I am accused of "impugning the reader" for describing something as simple that is extremely simple, we're done. Consider the bug report closed.
After which a different Microsoft employee goes in on him:
You were overly confident in your opinion, but I hope [what I linked] helps you understand that it's actually really darn hard.
Basically the whole team agrees that what is being asked of them is extremely difficult. While Casey is insistent that it's trivially simple.
So who is right? A team of senior engineers in a trillion dollar company or a reclusive game dev?
ACT 2: A WEEKEND PROJECT
Casey tweets the following:
I take back literally everything I said about Microsoft taking an interest in fixing their terminal.https://t.co/K9ojvy1liX
— Casey Muratori (@cmuratori) June 17, 2021
And, over the following weekend, he implements from scratch a terminal that works in the way he proposed. It's ~100x faster than Windows Terminal:
(video timestamped to the part with the pretty colors, although the rest is fun too)
Twitter thread with some juicy questions from the audiance
Then this happens:
Afterward, the same dev [lhecker] also used a fake name to hang out on our groomercord and talk about Windows Terminal without telling anyone who he was. I figured it out and confronted them, and they failed to see anything wrong with that behavior. It's a really special team they have there.
— Casey Muratori (@cmuratori) May 6, 2022
ACT 3: MICROSOFT BENDS THE KNEE
Over the following months, there is an embarrassed silence from the Microsoft team. Eventually they release a blogpost basically admitting they were wrong, but don't mention Casey by name. Note that the person making the post is the one who snuck into Casey's groomercord.
Casey tweets:
When I tell the Windows Terminal team something is simple, I am "misguided", being "somewhat combative" and am "impugning the reader". But a year later when they call the exact same thing "trivial", that is just, you know, them writing a blog post:https://t.co/AXrgZjvUPT pic.twitter.com/UTDrD9s0o6
— Casey Muratori (@cmuratori) May 6, 2022
And finally one of them makes a post on Hacker News seething about the whole thing. Quotes:
We get it, Microsoft sucks, we should all be fired, rah rah rah.-
Casey, I'm sorry. We made a mistake. I made a mistake! We didn't know what we didn't know, and thought we were clever enough to pass for it.-
I just don't know what else he's asking for here. Credit? Us to die screaming? The blog post is matter-of-fact, and Casey is right: however, he said himself that it was trivial to do this. Is it not acceptable that we use the same language?
Truly a new low for Microsoft.
Want more nerd drama? See the previous post in this series.
Jump in the discussion.
No email address required.
I have never seen anything from Microsoft or 90% of currently employed Microsoft engineers that would lead me to believe Casey was wrong about his claims for a second. The amount of simple fricking bugs I've submitted and others I've watched over the years that sit unfixed for some upwards of a decade at this point is embarrassing. Good thing all of our first world governments will be beholden to them for the next century once they've finished porting all our infrastructure over to Azure. Microsoft software maintainers give the Gnome team a run for the stubbornly incorrect autism award.
Jump in the discussion.
No email address required.
Become a bug bounty hunter and get that bag king
Jump in the discussion.
No email address required.
More options
Context
More options
Context
A company I worked for hired a consultant to write Java (this was long ago when that was still very mainstream). He was a very good developer, smart guy, could adapt his code easily to cover all the company's very very weird business scenarios.
100% of the code he wrote was overengineered to the point where you were going through 20 layers of abstraction when debugging it to get to where it was actually fricking doing anything. Because I understood how smart this guy was, I knew he did it on purpose so we'd have to keep calling him for consulting. The bigger consulting firms all have similar tricks but this guy was just a freelancer. His code was like if you read the Design Patterns book that was big right around then and tried to fit every single one into your application. Want to put some text on the screen? You should call the InputHandlerFactory to get an instance of the UI element where you want to put the text and then call the fricking TextStringMakerFactory to get an object that you can pass to the other bullshit.
At the time I hated this guy so much, but after I went into consulting, I could appreciate the hustle.
Jump in the discussion.
No email address required.
Wow, you must be a JP fan.
Jump in the discussion.
No email address required.
A fellow hustler
Jump in the discussion.
No email address required.
More options
Context
More options
Context
Jump in the discussion.
No email address required.
Thats basic java
Jump in the discussion.
No email address required.
More options
Context
groovy is somehow stupider than its name.
Jump in the discussion.
No email address required.
More options
Context
More options
Context
Codecels stay seething at the Inscrutable Grindmaxxer.
Jump in the discussion.
No email address required.
More options
Context
It's likely just overanalysis rather than a hustle. Designing software architecture and forward-looking data schema without making it too convoluted is pretty darn hard. What you see is a software engineer attempting to cover all the potential bases without realizing that they've utterly sacrificed readability to make room for as many potential future functionality/business requirements as possible. What is lacking is the business sense to prioritize readability and maintainability at the expense of potential implementation options that will never realistically be necessary.
Jump in the discussion.
No email address required.
or just fricking incompetence
Jump in the discussion.
No email address required.
More options
Context
Yupp, the line is really fricking blurry. OP himself admitted the code could be adapted quickly to cater to very weird requirements. This is the price you pay. You can have simple code you need to design and implement anew for each feature or you can have a very hard to comprehend moloch of FeatureFactoryFactories. Doing it both simply and flexibly is the highest level of divine mastery.
TIL we have profanity filter. C*nt shart.
Jump in the discussion.
No email address required.
More options
Context
Response response = ResponseFactory.getInstance(rDrama.someGuy).generateResponse(ButtholeFactory.getCrankyInstance().getSnarkyResponse())))))))))))))))))) ))))) )))))))))))));;p;;l;;l;
Jump in the discussion.
No email address required.
print("fstragott")
Jump in the discussion.
No email address required.
More options
Context
Whenever I bust out the macro and template magic out of my sack to make that call into a single 'auto response = function<templateholder>(parameter)' my review becomes "no other marsey can read this shit bro. Stop it with the cutesy try harding and write obstruse code 5000 times in a row like a real npc monkey." </templateholder>
Jump in the discussion.
No email address required.
More options
Context
More options
Context
Jump in the discussion.
No email address required.
More options
Context
More options
Context
Java is still very mainstream, especially for soulless corpo enterprise apps or am I living in a different dimension?
Jump in the discussion.
No email address required.
you are, come back baby. your family wants you to wake up.
Jump in the discussion.
No email address required.
More options
Context
Now that .NET is available on most architectures and Linux, and Linux subsystems are available on the opposing operating systems, it loses a lot of its domination as the "run anywhere so everything" language.
Jump in the discussion.
No email address required.
More options
Context
It is, but not like it was 15 years ago. It's still got at least one popular web backend, so it's not like it's dying, but it's also not the consultant bonanza it was in its heyday. And this is coming from someone who exclusively works on soulless corpo bullshit.
Jump in the discussion.
No email address required.
More options
Context
More options
Context
clbuttic
Jump in the discussion.
No email address required.
More options
Context
More options
Context
Snapshots:
designing pride flags:
archive.org
ghostarchive.org
archive.ph (click to archive)
github issue:
archive.org
ghostarchive.org
archive.ph (click to archive)
legendary response:
archive.org
ghostarchive.org
archive.ph (click to archive)
different Microsoft employee:
archive.org
ghostarchive.org
archive.ph (click to archive)
https://t.co/K9ojvy1liX:
archive.org
ghostarchive.org
archive.ph (click to archive)
June 17, 2021:
archive.org
ghostarchive.org
archive.ph (click to archive)
Twitter thread announcing refterm with lots of juicy questions from the audiance:
archive.org
ghostarchive.org
archive.ph (click to archive)
May 6, 2022:
archive.org
ghostarchive.org
archive.ph (click to archive)
a blogpost:
archive.org
ghostarchive.org
archive.ph (click to archive)
https://t.co/AXrgZjvUPT:
archive.org
ghostarchive.org
archive.ph (click to archive)
pic.twitter.com/UTDrD9s0o6:
archive.org
ghostarchive.org
archive.ph (click to archive)
May 6, 2022:
archive.org
ghostarchive.org
archive.ph (click to archive)
post on Hacker News:
archive.org
ghostarchive.org
archive.ph (click to archive)
https://youtube.com/watch?v=hxM8QmyZXtg:
archive.org
ghostarchive.org
archive.ph (click to archive)
Jump in the discussion.
No email address required.
More options
Context
Neat, I also made a terminal as a learning project as a teen in a few weekends.
I suppose if they stopped overcomplicating things then a lot of them would be out of jobs, though.
Jump in the discussion.
No email address required.
More options
Context
Great post, all I can say.
Jump in the discussion.
No email address required.
More options
Context
@carpathianflorist @schizo You best pin this shit if you don't want your mother to die in her sleep tonight. and keep it pinned
Jump in the discussion.
No email address required.
Carp and schizo share the same mother.
Jump in the discussion.
No email address required.
More options
Context
@carpathianflorist @schizo i'm going to sleep now gn.
Jump in the discussion.
No email address required.
More options
Context
More options
Context
@schizo pin this pls I want to get to 300 updongers
Jump in the discussion.
No email address required.
Jump in the discussion.
No email address required.
carp unpinned it
oh well
Jump in the discussion.
No email address required.
It was pinned for over a day!!!
Jump in the discussion.
No email address required.
Technically it was a stack award
Jump in the discussion.
No email address required.
Oh I just saw the context and it was repinned lol
There you go
Jump in the discussion.
No email address required.
thanks
Jump in the discussion.
No email address required.
More options
Context
More options
Context
but yea people saw it already
Jump in the discussion.
No email address required.
More options
Context
More options
Context
More options
Context
More options
Context
More options
Context
More options
Context
Shit like this is why I wish I were a codecel.
Every programmer I meet is basically r-slurred.
Jump in the discussion.
No email address required.
So true king
Jump in the discussion.
No email address required.
More options
Context
It's the insecurity inherent to a field that is constantly trying to automate itself out of existence. No one can actually keep up with the latest tech and best practices for more than a sliver of the tools available but you're really supposed to pretend you know what all of the nonsense jargon other programmers are spouting means to not embarrass them and the people in charge of hiring and managing developers can't tell where the software their devs write ends and other software begins. It's like being a scribe in a society where only like 5% of people are literate enough to do anything beyond spell their names.
Jump in the discussion.
No email address required.
More options
Context
Just learn to code
Jump in the discussion.
No email address required.
More options
Context
Most programmers are fricking horrendous.
Jump in the discussion.
No email address required.
More options
Context
Software is the worst fricking field. Yeah, lots of, maybe even most programmers start out studying nonstop, more than 12 hours a day 7 days a week making sure they know the ins and outs of data structures and algorithms and pointers and so on. But inevitably they all reach a point where they're comfortable enough with their knowledge to stop challenging themselves and instead spend all day on groomercord or some online game, but they still think of themselves as that guy who works nonstop honing his craft, and they never spare an opportunity to remind you of it.
Any other industry I've worked in largely discourages this kind of chest puffing but programmers are so coddled (because they all pretend to be neurodivergent) none of them are used to being told to shut up, so this happens.
Jump in the discussion.
No email address required.
Jump in the discussion.
No email address required.
Yeah pretend. I don't doubt that there's a good chunk of programmers who are neurodivergent, but there are just way too many of them that are totally normal in every respect except they're really annoying and poorly socialized.
If you tell me the last handful of people producing quality software are neurodivergent I'll believe you. If you tell me the guy who spends more time sneeding on twitter than he does programming has autism because it says so in his bio I'll only wonder why he's avoiding coding in order to talk to people.
Jump in the discussion.
No email address required.
I know what you mean, I've met these programmers IRL
They were still using "introverted" as a crutch though, not autism.
DAE feel crushing despair picking up the phone? the world is so wrong for me and built by extroverts not wanting to speak up to the cashier and feeling unfathomable dread at small talk and seething about it later is normal actually. Introvert things.
Jump in the discussion.
No email address required.
Yes. "Introvert" fell out of favor when people realized claiming to have some diagnosable disorder (whether it was actually diagnosed or not) could just compel people to take you seriously under threat of losing their jobs. Plus it lets them commit as many mistakes as they want and still keep their enormous egos intact.
Jump in the discussion.
No email address required.
I've seen a dumb video once where someone in the tech sector describes "masking" at work for aspies and I was bewildered
This person was acting like they had to consciously create a mask (?) as an aspie so they could function at work.
.... and it was literally just "be professional" instead of an butthole egomaniac. They acted like their discovery of intentional professionalism was a unique and amazing thing. Do they think other people aren't trying to actively be professional?
Jump in the discussion.
No email address required.
More options
Context
More options
Context
More options
Context
More options
Context
More options
Context
The key to success in life is admitting you are a dumbass and striving to improve yourself in the quest of not being a dumbass.
Note: You will never not be a dumbass.
Jump in the discussion.
No email address required.
More options
Context
most programmers are dogshit from day one and dont' push themselves nor have the ability to improve beyond a certain amount anyway.
Jump in the discussion.
No email address required.
More options
Context
In chemistry and pharma the grind never ends
Jump in the discussion.
No email address required.
More options
Context
More options
Context
More options
Context
Jump in the discussion.
No email address required.
Casey will act like a huge smug butthole and then act like a baby when a Dev claps back.
Jump in the discussion.
No email address required.
More options
Context
More options
Context
With performance like that absolutely.
Good. A sperg in his mom's basement beat you, you should be.
It absolutely is, and it's completely acceptable for people to mock you for your initial opinion because without getting the answer from a sperg you would probably still have been creating and implementing shitty code.
Jump in the discussion.
No email address required.
I think they're still using the old implementation by default. Didn't actually bother checking.
Jump in the discussion.
No email address required.
More options
Context
They need to take their Ls like good boys. It really sounds like they've learnt nothing.
Jump in the discussion.
No email address required.
More options
Context
More options
Context
What a legend, they should hire the fricker. I'd hate my windows updates a lot less if their software didn't fricking suck
Jump in the discussion.
No email address required.
Real ones use windows 10 ltsc
Jump in the discussion.
No email address required.
fr fr
Jump in the discussion.
No email address required.
More options
Context
More options
Context
More options
Context
I just want Quake mode to work dawg why's this shit still got animation flicker a year and a half later
Jump in the discussion.
No email address required.
More options
Context
Imagine having this person on your team and needing to work with him
Jump in the discussion.
No email address required.
true but this is making the very bold assumption that everyone else on the team isn't exactly like this
Jump in the discussion.
No email address required.
or worse
Jump in the discussion.
No email address required.
Most emotionally regulated MicroSoft employee.
Jump in the discussion.
No email address required.
More options
Context
More options
Context
More options
Context
More options
Context
As my black brother j cole would say
Stay humble kings
Jump in the discussion.
No email address required.
More options
Context
Excellent post thanks frick m$
Jump in the discussion.
No email address required.
More options
Context