Hacker News new | past | comments | ask | show | jobs | submit login

The nature of Linux platform problems is that they crop up for specific combinations of hardware and software. The biggest thing that Microsoft has over the open source community is the money to pay developers to bulldoze the combinatoric jungle that is compatibility. That, and the platform clout to get vendors to make their stuff work.



> the money to pay developers to bulldoze the combinatoric jungle that is compatibility

For hardware support, the biggest thing is stable kernel ABI for drivers.

> the combinatoric jungle that is compatibility

Windows doesn't have combinatoric jungle. With their amount of supported hardware, combinatoric jungle would be prohibitively expensive even for Microsoft.

Instead, Windows has well-specified ABIs the drivers must conform to. And a set of development tools to verify that's the case, both static like code analysis, and runtime like driver verifier.


Plus reasonably good documentation.


My experience is that Windows is just as bad. HiDPI doesn't work right unless the developer goes out of their way to support it. Random combinations of software hard-crash the entire OS. (My current easily-reproducible example? If you use PowerToys to tile windows, and a tiling operation happens concurrently with a DPI-resize operation, the computer blue screens! Fun!)

I was an early adopter of Linux and used a lot of weird hardware with it, and no combination of dragging windows ever caused the computer to reboot. What annoyed me most about Linux is how I got used to the brokenness, and it got fixed without being able to replicate the brokenness I was used to. For example, circa 2012 I got an early 4K monitor. It was implemented as two scalers connected to one panel, with both scalers connected to the same Displayport interface. Basically, it appeared to the computer as two separate and totally unrelated monitors, but was of course a single monitor. I could not for the life of me get Linux to treat both panels as a single monitor. But I used multiple monitors in the very early days of Linux, before XRandR, and I could never get it to treat my two monitors as separate devices -- windows would just pop up right in the gap between two monitors; X had no awareness of where the boundary was. I longed for that behavior, but the option was simply removed... because who would ever want that brokenness? (I did end up getting it working. There was a bug in the Nvidia driver that allowed you to turn on two options that caused all XRandR related functionality to silently break, and then my one monitor appeared as one monitor to the OS. Of course, even though my graphics card had 3 more video ports on the back, I could never connect another monitor. And I was always worried that a driver update would fix the multiple-interacting-bugs. But it never did! Or at least I replaced the monitor before it became a problem for me.)


I'm not sure that applies here. Steam specifically ships it's own version of libraries for compatibility between different distributions.


of course it applies, they have less resources to support more systems than Microsoft do to support one system, this will be reflected in compatibility


Unless Steam somehow operates directly with hardware, I don't see how that could happen. They ship their own runtime, with pinned versions of libraries Steam depends on. As far as I know it should work just fine on any Linux system (which is my experience running it on 3 different machines on multiple different distributions over the years).




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: