4 ms·
I agree with your general sentiment that leaning into the platform and away from compatibility layers is a good strategy. There are reasons these things are dif
by sqeaky 2y ago
I agree with your general sentiment that leaning into the platform and away from compatibility layers is a good strategy. There are reasons these things are differently and compatibility layers by you little and cost a dependency.
I think we disagree on some details. I don't think windows is a serious server OS, and never has been. Look at the crowdstrike failure, solar winds leak, or the yearly issues that are biting millions of people and there is no sane way to avoid.
So I am just surprised when you said:
> fragile, and error prone than Windows.
Are we living in the same universe?! Crowdstrike aside, every windows shop I have worked at, including EA and the USAF, had massive and constant CI failures if they could get CI working at all. Often they had teams of dozens working on remediating this stuff perpetually. These places also have infrastructure go down for the dumbest of reasons, like unscheduled updates or impossible version mismatches.
The Linux shops generally had predictable,repeatable, and knowable causes for failures. Places like TD Ameritrade and Nationwide Insurance go down because they screw up.
It isn't always like that, but the Unix/Linux shops I have worked at measure yearly downtime in seconds and windows shops measure uptime as a percentage.
> If you hard coded /usr/lib or similar you're a bad person.
1000% agree, but I also see plenty of hardcoded "c:\\" in code also written by bad people. I also find the amount of people who claim that "include "windows.h"" is always valid C++ is infuriating, like other platforms don't exist. The people including "dirent.h" (Unix DIRectory ENTries) are so common that the MSVC saw fit to implement it some time about VC6 and VC2022.
Writing cross platform code isn't that hard if you just test. 99% of the time it works to just write a wrapper around the platform call to do a thing and call that wrapper.
- forrestthewoods 2y ago> I don't think windows is a serious server OS, and never has been. This is a very silly statement. I hope you realize that Crowdstrike also runs on Linux and has also broken Linux machines. https://access.redhat.com/solutions/7068083 https://access.redhat.com/solutions/7068083 I don't know why your companies had issues with Windows CI. If I had to guess I'd say because it was Linux shop with people who refused to learn Windows, ha! Everywhere I've worked had perfectly stable Windows CI.
- genocidicbunny 2y agoAnd unscheduled updates and reboots is the IT department failing to do their job. Last Windows shop I worked at, every single update and system restart was scheduled days if not weeks in advance and the systems mostly only went down unexpectedly when hardware was failing, which is pretty OS-agnostic. Of course, if you just have a few fly-by-night Windows systems that aren't centrally managed, you're going to have issues.
- sqeaky 2y ago> And unscheduled updates and reboots is the IT department failing to do their job. Why do I keep seeing this at windows shops and not Linux shops? Maybe it is just selection bias, I have only had 16 contracts in the past 20 years not quite a statistical level sampling yet. But I would seriously like to explore non-selection bias reasons why this IT departments seem to fail like so often using windows and not as often or at least not as publicly otherwise.
- genocidicbunny 2y agoI think it depends. In my experience, this tended to be more of a problem in places that had mixed systems, or allowed people to BYOD. Every place that was running windows exclusively tended to have a halfway reasonable AD setup and at least someone in IT who was intimately familiar with administrating a fleet of Windows machines.
- sqeaky 2y agoOn the failing CI, I suspect it was more a culture thing than a specific technical detail thing. Windows shops often try to purchase solutions to their own organization's failures, like the crowdstrike thing (Yeah I know some Linux machine were impacted but it was like a thousand to one). There is a non-zero amount of technical failures, but not enough to explain the vast disparity I have witnessed and keep witnessing.