(In all fairness, PowerShell has a lot of good ideas)
It could just be a coincidence/confirmation bias, so I wonder if there's actually something to that.
Simon Peyton Jones, Simon Marlow, Edward Kmett, Conal Elliott, and I’m sure a lot of other people with fundamental contributions to the Haskell ecosystem who I can’t remember offhand all work or previously worked at Microsoft Research, so that part is just straightforwardly true.
I have no idea what their blog posts are saying, but at least I've always found it pretty nice.
Have you read Casey's twitter feed? The man routinely goes into long twitter thread rants about how stupid everyone else is.
His favorite target seems to be...drumroll please...large corporation software teams.
> His favorite target seems to be...drumroll please...large corporation software teams.
To be fair, that's... not unreasonable. I've thought unkind things about large corporate software teams while I was working at said large corp.
> His favorite target seems to be...drumroll please...large corporation software teams.
I missed the part where he is wrong.
He very clearly states that his implementation is a terminal renderer.
> And almost none of the techniques "he" brags about can be applied to a real terminal
Elsewhere one of the people from the screenshots says "we implemented the same approach" because these techniques can be and have been applied. Both in Windows Terminal and, as I understand it, in every single modern terminal emulator.
Edit: Also read this https://news.ycombinator.com/item?id=31285723 "We implemented Casey's approach and most modern terminals implement it". You need more proof?
"We actually took the same approach Casey suggested... A lot of terminals implement it that way." [1]
I guess authors of a lot of terminals are trolling you.
From the refterm README: "VT codes for setting colors and cursor positions, as well as strikethrough, underline, blink, reverse video, etc." [2]
And, to begin with, Windows Terminal was horrendously slow even without VT codes. Also, for context, [3]
[1] https://news.ycombinator.com/item?id=31285723
No. No you're not. Because you keep shifting goalposts and ignoring inconvenient truths.
First you claimed that "almost none of the techniques "he" brags about can be applied to a real terminal".
To which I linked and quoted Windows Terminal team: "We actually took the same approach Casey suggested. A lot of terminals implement it that way."
Then you shifted the goalpost to saying "We should distinguish here between renderer and VT terminal backend."
To which I replied: he implements VT parsing and rendering.
Is it a complete VT parsing and rendering pipeline? No. Does it invalidate his approach? No.
And to put this into additional perspective, Windows Terminal was abysmally slow with no VT parsing, and with no color output to begin with. It couldn't handle most of Unicode, wide characters and dozens of other things.
And so on. Now it's "sickness", "plain garbage" and other stuff. Tell me, are you perhaps on Windows Terminal team? Because that's a fine if exaggerated example of their behaviour just a year ago. Now they are like "yup, we're doing exactly the same things that Casey is doing".
But wait, don't tell me. I'm definitely not going to engage in this useless thread any longer.
> No. No you're not. Because you keep shifting goalposts and ignoring inconvenient truths.
I still am. Please submit a PR to refterm to that implements the VT sequences I mentioned above, until then I must continue to believe that you just repeat what other people say, without using your own brain. Shifting goalposts is probably not the best wording here. I keep listing arguments.
> First you claimed that "almost none of the techniques "he" brags about can be applied to a real terminal". > > To which I linked and quoted Windows Terminal team: "We actually took the same approach Casey suggested. A lot of terminals implement it that way."
"Almost none" does not mean "none". What WT applied is related to the tiling renderer. And I am sure I said "isn't that bad as a product" with respect to that. But Cassay also said that such things are super basic (if you know about it).
> Then you shifted the goalpost to saying "We should distinguish here between renderer and VT terminal backend." > > To which I replied: he implements VT parsing and rendering. > > Is it a complete VT parsing and rendering pipeline? No. Does it invalidate his approach? No.
VT parsing and actually doing something based on it, how often do I need to write that until you do understand that (!?), are two entirely different things. VT parsing is done in refterm, because it's needed for SGR and CUP, obviously. But everything else is discarded. All the other VT sequences that are parsed are not interpreted. Again, Please implement the VT sequences I mentioned above in refterm, without degradation of refterms claims.
> And to put this into additional perspective, Windows Terminal was abysmally slow with no VT parsing, and with no color output to begin with. It couldn't handle most of Unicode, wide characters and dozens of other things.
You use Cassays wording here. I'm fine with that, WT was and is in fact still slow. Just fork it, and make it faster. You guys keep saying it's simple, it's easy, it's all proven numerous times. Yet noone of you ever provided a terminal that is implementing enough VT sequences to be taken serious. refterm is a joke, it's garbage, and simply harmful. Not to its entirety, certainly not, it prove a point on rendering speed (7000 frames per second in a terminal-like application). Ignoring the usefulness of such for a moment, the reason why this whole rant of Cassay and his demo program is harmful to the public is, because you keep blindingly following him. Without questioning, without thinking about it, because thinking costs energy, one could say. I do not know your true reasons, but I can just encourage you to try.
I HEREBY CALL YOU OUT! Please work on refterm, and proof your point by implementing:
1. DECSTBM, DECSLRM 2. SM/RM/DECRQPM 3. alt-screen 4. DL, ICH, IL 5. rectangular operations (DECCRA, DECFRA, DECRQCRA, ...) 6. SD, SU (respecting margins set by DECSTBM) 7. DECAWM correctly applied.
> Tell me, are you perhaps on Windows Terminal team?
I am not part of Microsoft nor their WT team. I do however know how terminals work internally, because I have implemented one. So I do know what I am speaking about here. I even took refterm very serious and looked into the source code and tried to learn from it. Again, I was already saying repeatively that there are some good techniques applied, and also has some architecturally good decisions. But this does not hold on the performance level when you actually start implementing more than just bling-bling SGR plus CUP. Ignoring DECAWM is also a damaging descision.
> But wait, don't tell me. I'm definitely not going to engage in this useless thread any longer.
Because I call you out? That's cheap. Please at least have the balls and react on the actual content of my post (the VT sequences): technically!. Until then I must just assume you are (amongst many), a sickness of the internet: just repeating what narcissistic influencer keep saying, yet knowing nothing.
<casey> Windows Terminal is slow at rendering things
<microsoft> Yes, rendering is a hard problem worthy of a doctoral research project
<casey> No it's not, you literally just use a glyph atlas
<microsoft> You are naive
<casey> *writes refterm to demonstrate glyph atlas*
You keep complaining that it's not a fully working terminal. Casey, on the other hand, writes:"These features are not designed to be comprehensive, since this is only meant to be a reference renderer, not a complete terminal."
It is confusing.
It doesn’t really read like that for me, more of a look at this cool thing we made with an undercurrent of fucking finally, and that seems entirely fair.
s/years/multiple decades/They were also pretty quick and helpful with answering any question I had. I guess it depends on what team you get ahold of. Or, maybe how you ask the questions. I always try to be polite and patient, which is hard to do when you're in a time crunch.
They really were trying to push azure hard in a situation that didn't require it. It was odd at the time. I chalked it up to the team evangelizing a new feature that they knew was going to rake in money, so they were required to bring it up. I remember it was funny and a little annoying to have to keep saying no... now let's get back on topic.
But, they never insulted me. It was a very professional experience. Sad to hear this kind of thing is happening now.
I'm just trying to understand here, thanks. :)
All your talk of 'narcissistic injury' and his personal motivations for anything is pure projection and tells me a lot more about you than about him. And yes, the New York Times is no better than reading Twitter.
I sometimes wonder if there are any adults on this site.
> And yes, the New York Times is no better than reading Twitter.
You're high as a kite if you believe that. Toking the dankest shit anyone's ever toked, long deep inhalations. You're dropping LSD you got from your friend's friend who you think is homeless and you're not sure what it's laced with. You're consuming craft psilocybin perfected in the lab to give the most detailed, most immersive hallucinations over hours and hours. You're babbling that you've seen God, that you know the secrets of the universe, that you're being bugged by the KGB, that your brother isn't really your brother but is an imposter who just looks and sounds exactly like your brother.
You're crazy.
The original discussion. There is absolutely nothing wrong with the way the Casey individual approaches it. At all. And yes it is simple. If your basic text terminal gets 30 FPS on modern hardware (or worse), you have started with a bad foundation. That is just gross.
The NYT commentary is a bit hilarious as you see that claim on here daily, repeatedly.
Even if I agree it’s factually easy, walking up to someone and saying “walking is easy if you’re not a cripple, am I missing something?” is rude if the person is disabled and even more rude if they aren’t. “But they’re crippled! Fact!” doesn’t make it not-rude behaviour. He isn’t Linus Torvalds and even LT insulted devs on behalf of userland and good code and not just to make himself feel superior. And doesn’t have an eggshell thin skin.
> "Can you be more specific here about what you are talking about? While text output can be "hard", for some not particularly hard definition of "hard""
Insulting, dismissive, rude.
> "to me that a great deal of improvement could be made to the performance of the product if one were so inclined."
After someone said they'd been working on improving performance for 2 years and engaging in good faith with many detailed replies, someone who said they were dependent on changes in the OS which they couldn't make; to then insinuate that they just "weren't inclined" to make improvements is rude.
> "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."
Closing a bug report about performance which affects all users, an issue with many detailed comments from many people, because he's taken offense? And at something which was far less rude than the things he said to them in the same discussion? Prima-donna bullshit.
I like. Please submit a PR and make Windows Terminal as fast as refterm, trivially speaking, 2GB/s, no slower than the unoptimized refterm. Just to quote you: simple.
:-D
Steps to reproduce:
1) Report a bug.
2) Get called dumb by developers at <BIG COMPANY>.
3) Demonstrate that it is, in fact, a bug with examples, test cases, and offer a potential fix/PR.
4) Hear that it’s being “handled internally”.
5) Wait for the blog post re-iterating what they called dumb, talking about how great the team is that fixed it, and see your demonstration code or test cases in the linked commit.
6) Why are you still here? No, you’re not going to be credited, this is going in my promotion packet.
I’ve lost count of the times I’ve seen this over the past 20 years. Whenever I’m about to report a bug in a <BIG COMPANY> project I smile to my girlfriend and say “OK, I’m going to go get called dumb.”