News for hackers. Stuff that matters.
Re:eBPF on Windows by jaywalk on Monday May 10, 2021 @03:18PM (#27109694)
I like Windows Server more than Linux. I administer both of them, although I am more familiar with Windows Server which definitely plays a big part in my preference. But I think that's going to be the biggest part of anyone's preference.

Everything you complain about Windows Server not supporting is actually supported, but it was your unfamiliarity that was ultimately the issue. "Linux guy who is unfamiliar with Windows Server prefers Linux" isn't particularly shocking news.

Re:eBPF on Windows by jiggawatts on Monday May 10, 2021 @04:14PM (#27110343)
"When in Rome, do as the Romans do."

I don't complain that Linux is hard to administer with PowerShell. I learned SSH and Bash.

The reverse does not seem to be true, Linux admins generally expect everything to work exactly the same in Windows as in Linux.

A negative effect of this is that Windows has many recent hires working on some of their teams with mostly Linux experience, and they're copying Linuxisms into Windows bug-for-bug. Even if it makes no sense in Windows.

A recent example that boiled my blood is that the new Windows Terminal emulates the incorrect "Clear-Host" behaviour of ancient Linux terminals. It doesn't clear the virtual terminal any more, just the current viewport. Before, it was a convenient way to reset the terminal's display state without resetting variables. NOW, it just deletes some of the display state, so if you scroll back you get scrambled garbage.

This is not a small thing: it's significantly impacting my workflow. I've seen garbage output, overwritten output, scrolling back accidentally corrupts the output completely, you name it. This is not a coding error, this is correctly copying a limitation of some terrible terminal from the 1960s nobody should give a shit about in 2021.

Worse: If you look back at the history of the debate around fixing this, as far back as the early 1990s there were Linux people advocating for fixing this! It's obviously broken.

Then: When the same debate came up in the Windows Terminal issue tracker, people making the same rational, logical arguments were shot down with: "We have to copy the standard."

Hint: There is no "standard". This is not an RFC. It's just what Linux does! Linux does this just because this is what some random MIT or Berkley student wrote in a hurry in the 1960s! If you make the argument that the majority of systems work some way or another, and that's a defacto standard... then Windows should win because it was used for the the vast majority of computing for many decades. Linux has taken over only recently, and only in some areas (Android and web servers).

Re:eBPF on Windows by DHowett on Monday May 10, 2021 @07:11PM (#27112046)
> A recent example that boiled my blood is that the new Windows Terminal emulates the incorrect "Clear-Host" behaviour of ancient Linux terminals.

Hi! I run the team who made this decision, and I flatly reject the characterization that these changes were made by "recent hires" who are "copying Linuxisms into Windows bug-for-bug."

The discussion you're referring to spans multiple threads, so I'm not certain the exact one you're referring to. I can, however, give some of my input:

1. We worked pretty hard to make sure that PowerShell's Clear-Host and CMD's "CLS", which operate on the entire scrollback buffer in the traditional console, are properly translated into a full buffer clear over SSH/in Terminal/etc.

2. Terminal fully supports CSI 3 J, a non-standard extension to the Erase in Display control sequence that clears the scrollback buffer. The handful of tools I am using that support "clear" actually seem to emit both "clear viewport" and "clear buffer." If you're using a version of clear that has been configured to NOT emit ED 3 (clear scrollback history) by default, that's simply not my team's fault. I've heard that you can use "clear -x" to affect your desired behavior.

It turns out that there being no true standard here plays to our advantage: we can support requests for all manner of clear, and trust that an application can be made to do the right thing. If you're using an application that can't be made to do the right thing per at least thirty other terminal emulators' designs--spanning more than just Windows and Linux, mind you--I apologize.

If you'd like to reopen that discussion here instead of on GitHub, you are more than welcome to.

Re:eBPF on Windows by jiggawatts on Monday May 10, 2021 @08:41PM (#27112801)
> Hi! I run the team who made this decision, and I flatly reject the characterization that these changes were made by "recent hires" who are "copying Linuxisms into Windows bug-for-bug."

Hi! I see Microsoft people on "docs.microsoft.com" use forward slashes now in examples that only work on Windows. So, there's that.

If I open the latest version of Windows Terminal, running PowerShell Core (not some Bash thing with some VTY codes or whatever) and I run "Clear-Host", I can scroll back and see content that wasn't cleared.

THIS BREAKS MY WORKFLOW. I used Clear-Host so I can run a command with pages out of output, and then I know that scrolling back will go back to that output only, not something that happened three hours ago but superficially looks identical.

If I do this with PowerShell 5.1 with the old Terminal, it works as expected. It works like it has for the last 40 years of DOS and Windows history.

PS: It's broken even worse in Visual Studio Code.

You guys outright abandoned your user base to pander to Linux users. On Windows. Linux users on Windows. That enormous, huge majority of your paying user base that is apparently more important that the hundreds of millions of people like me.

So yeah, you should reopen the issue and rethink your priorities...

Re:eBPF on Windows by RulerOf on Monday May 10, 2021 @09:33PM (#27113119)
>You guys outright abandoned you user base to pander to Linux users. On Windows. Linux users on Windows.

IMO they're going after developers using Macs. Linux (and Docker) runs better on Windows than it does on Mac OS. They're doing _something_ right.

Re:eBPF on Windows by jiggawatts on Tuesday May 11, 2021 @12:39AM (#27114271)
So you're saying that Linux developers on Macs are now Microsoft's target market?

Not Windows developers on Windows?

Re:eBPF on Windows by pjmlp on Tuesday May 11, 2021 @01:55AM (#27114693)
Basically it feels like going after the SV crowd coding with macs on starbucks.
Re:eBPF on Windows by jiggawatts on Tuesday May 11, 2021 @03:31AM (#27115286)
It feels like that Blizzard developer Wyatt Cheng that got on stage and asked the PC gamer crowd: "Do you guys not have phones?" https://www.youtube.com/watch?v=n5QRgpjfarY

The Windows Terminal guys are similar. "Do you have any plans at all to make this work for users of Windows?" "No."

Re:eBPF on Windows by pjmlp on Tuesday May 11, 2021 @04:47AM (#27115761)
I feel your pain, what used to be Visual Studio wizards are now CLI tools.

With luck you need to install VSCode and there is an extension to call said CLI.

Who needs VS designers or Blend for Windows UI development? Just recompile and run WinUI applications.

I really don't get it.

Re:eBPF on Windows by pjmlp on Monday May 10, 2021 @06:30PM (#27111677)
Those recent hires are also affecting how Visual Studio gets developed.

It is starting to become tiresome to get some CLI stuff instead of proper VS wizards.

Re:eBPF on Windows by jaywalk on Monday May 10, 2021 @04:25PM (#27110487)
Microsoft is getting really lazy with their new "PowerShell for everything" mantra. Many examples with Windows Server and even the Azure Portal. It's great to have the ability to do things with both a GUI and CLI, but then arbitrarily limiting things to one or the other (usually the CLI) gets incredibly annoying.
Re:eBPF on Windows by majkinetor on Monday May 10, 2021 @04:34PM (#27110572)
Lets limit GUI then :)
Re:eBPF on Windows by jaywalk on Monday May 10, 2021 @04:46PM (#27110722)
Ha, that's actually what I'm complaining about. So many things that can only be done via CLI and there's no way to even know they're possible without crawling through documentation or (more often) finding somebody's blog post or a StackOverflow answer.
Re:eBPF on Windows by majkinetor on Monday May 10, 2021 @04:50PM (#27110759)
PowerShell CLI is totally discoverable tho.
Re:eBPF on Windows by EvanAnderson on Monday May 10, 2021 @03:30PM (#27109835)
I'm probably pretty similar in experience to you. I "grew up" with Linux (and Xenix) in the early 90s, not being able to afford to buy Windows Server. I transitioned over to Windows Server around NT 3.51 and now handle both.

All the tooling for headless / remotely-manageable Windows is "in there" in 2008 and later. Prior versions required more jumping thru hoops to manage via command line, but Resource Kit tools helped.

Re:eBPF on Windows by jaywalk on Monday May 10, 2021 @03:44PM (#27110036)
My server administration journey actually began with a pirated copy of Windows 2000 Advanced Server. And I don't feel bad for it, because having started very young with Windows Server has directly led to many tens/hundreds of thousands of dollars in licensing fees paid to Microsoft at my direction :)
Re:eBPF on Windows by EvanAnderson on Monday May 10, 2021 @04:06PM (#27110281)
You missed a lot of tedious reboots by starting your experience with the Windows NT family w/ Windows 2000. Windows NT 4.0 was a breath of fresh air, as far as the UI went, compared to NT 3.51, but Windows NT didn't really come into its own, in my opinion, until Windows 2000.

The tedious "re-apply the service pack and reboot" or "you thought about changing a setting, so therefore reboot" scenarios were nearly removed with Windows 2000. Having plug 'n play and hot-plug hardware work well was great, too.

Re:eBPF on Windows by pjmlp on Monday May 10, 2021 @04:25PM (#27110479)
I do mostly Windows, and given the option would rather keep doing so, however you just reminded me of the "fun" of writing ISAPI extensions on Windows 2000.

For those unaware of it, IIS used to execute fully on kernel level, so ISAPI extensions were comparable to device drivers, which meant any programming error would just kill the kernel, thus requiring a reboot.

So tracking down memory corruption issues on ISAPI extensions was bound to have a countless amount of reboots during the work day.

Re:eBPF on Windows by voidfunc on Monday May 10, 2021 @08:09PM (#27112568)
Goodness, who decided that was a good idea?!
Re:eBPF on Windows by EvanAnderson on Monday May 10, 2021 @08:37PM (#27112770)
Thr ISAPI modules don't run in kernel mode, but they're in-process with IIS (back in W2K) and it's a bit fraught.

I assumed that kernel-mode HTTP service was an answer by Microsoft to the "Tux" web server: https://en.m.wikipedia.org/wiki/TUX_web_server

Re:eBPF on Windows by pjc50 on Monday May 10, 2021 @04:14PM (#27110350)
> Everything you complain about Windows Server not supporting is actually supported, but it was your unfamiliarity that was ultimately the issue.

Funny, I've seen people saying exactly that when newbies bounce off some aspect of Linux, and in both cases it's a usability failure.

Discoverability of this stuff on Windows is terrible. Things like powershell remoting exist but getting them working between two random machines is opaque. Yes, some of it gets easier in a domain, and that's one of the big Windows wins (since the NIS/YP era), but domains are an extremely premium feature.

Re:eBPF on Windows by pjmlp on Monday May 10, 2021 @04:20PM (#27110428)
As if UNIX was any better with its archaic configuration files and cryptic commands to avoid typing one extra character.

Most of the stuff I learned about UNIX required actually buying books, not much different from Windows.

Drop someone on a proper UNIX just with man to see how far they go joining a NFS server or logging in via yellow pages.

Re:eBPF on Windows by majkinetor on Monday May 10, 2021 @04:18PM (#27110395)
Its trivial without domain TBH.

If on workgroup, you just have to have the same user name on different machine and it works like in domain.

> Discoverability of this stuff on Windows is terrible

Meh... matter of taste and adequate Windows social skills, not a fact.

Re:eBPF on Windows by gerdesj on Monday May 10, 2021 @07:06PM (#27112001)
"If on workgroup, you just have to have the same user name on different machine and it works like in domain"

... and password. ... and no it doesn't really because an AD has a few other extras, such as Kerberos and an LDAP database with some odd ideas to chat to. You can of course spin up a Samba AD DC or two for a cheaper alternative.

Re:eBPF on Windows by jaywalk on Monday May 10, 2021 @04:20PM (#27110425)
I don't think comparing discoverability of features in Desktop Linux to Windows Server is fair at all.

And really, if you want to talk about discoverability between Linux in a server role and a Windows Server... Windows Server wins by an absolute landslide. But I don't think discoverability is all that important when you're talking about server administration.

Re:eBPF on Windows by majkinetor on Monday May 10, 2021 @04:18PM (#27110407)
This. RTFM
Re:eBPF on Windows by coliveira on Monday May 10, 2021 @04:25PM (#27110481)
Windows OS is a thing of the past, when people were supposed to do most of their work from a desktop. As soon as computing become based on remote services, Windows lost its main reason to exist. It is Windows that needs to adapts to the new times, not people working on other OSs.
Re:eBPF on Windows by rasputnik6502 on Monday May 10, 2021 @06:44PM (#27111781)
It is the OS from the past and still most people use it on their computers. Because they are still doing things from the desktop. And I suppose they're happy not having to adapt to technology du jour again and again.