AstonJ

AstonJ

What are the USPs of each operating system?

I thought about posting this thread while dragging a window around macOS funnily enough. It seems that it makes intelligent guesses on whether you are trying to place windows near each other and ‘snaps’ them into place if it thinks you are - it’s ever so subtle - so subtle that it’s barely noticeable, making it feel very natural (thus, perhaps more importantly, also making it void of any frustration which might be the case were it was poorly implemented).

So that got me thinking - what is it about each OS that makes it unique, or, in your view, what makes it worth using over the others?

Most Liked

NobbZ

NobbZ

In nixOS my USPs are its reproducability and its “integrated toolchain manager”.

  1. Backing up and restoring /etc/nixos is enough to re-install all system relevant software, while backing up and restoring ~/.config/nixpkgs is enough to install user related programs and their configuration.
  2. In each project I can have a shell.nix or a default.nix which describes the development environment. Usually one loads this environment manually, though tools around that have been developed which make me able to enter the environment on dir change. as well as aggressive caching of those environments.
dimitarvp

dimitarvp

Would you recommend nixOS for development? I will have to make a decision in the next 2-4 weeks about a Linux development environment and I kind of forgot about nixOS.


For macOS my USPs are definitely the [alleged] high security of the system. Apple has gone out of their way – and often broke a lot of programs and scripts which isn’t nice of them – to make sure some plain virus, ransomware or rootkit won’t have an easy time taking over your machine. I do however have to say that the performance of programs under macOS has been mediocre. Linux reigns absolutely supreme here and stomps macOS like there’s no contest. Still, I like macOS’ beauty and opinionated approach in general and I feel that it’s suitable for a lot of people. But I do start to question if it’s a good fit for professionals at all…


For Linux my USPs are, obviously, extreme customisability (although that’s not always a good thing; I am more in the camp of people that want a good minimal working system out of the box and not an installer with 50 steps and checkboxes) and the raw speed. But Linux seems to have long way to go in terms of isolation (to this day, any X11 program can read and record keystrokes, and Wayland is sadly not that useable for everyday usage, I hear).


For Windows 10: ubiquity. A lot of Linux fans love to trash it but its backwards compatibility and stability (ever since Win7 which is a lot of years already) should give them pause and hopefully make them strive for a better ecosystem. I know it’s not Linux’s fault for many OEMs who never make drivers for it – or that games must use emulation / pass-through layers – but if Linux wants wider adoption it will have to climb 3 mountains, not 1.

Especially with WSL2, Win10 is now a very solid contender for a workstation + gaming OS and I imagine a lot of people might forgo their macOS laptops for work and just move to their Win10 PC for that.

NobbZ

NobbZ

I wouldn’t consider it if I had to learn it from scratch. Though using a random Linux or Mac with nix as auxiliary package manager for the shells, with regular installed toolchains as escape hatches is what I’ve done first to learn how to deal with nix peculiarities.

Where Next?

Popular General Dev topics Top

Devtalk
Reading something? Working on something? Planning something? Changing jobs even!? If you’re up for sharing, please let us know what you’...
1063 23582 394
New
AstonJ
What chair do you have while working… and why? Is there a ‘best’ type of chair or working position for developers?
New
AstonJ
If you’re a fan, why? If you’re not fussed on it, how comes?
New
siddhant3030
I’m thinking of buying a monitor that I can rotate to use as a vertical monitor? Also, I want to know if someone is using it for program...
New
Exadra37
Cloudflare as workers to run serverless code without using containers: So it seems that Isolates is based on: What we ended up settl...
New
AstonJ
Just been adding some more portals, currently have the following languages: Apache Groovy C C# C++ Clojure CoffeeScript Crystal ...
New
AstonJ
The dev world doesn’t sit still, in fact it is probably one of the fastest paced industries around - meaning to stay current we are conti...
New
DevotionGeo
The V Programming Language Simple language for building maintainable programs V is already mentioned couple of times in the forum, but I...
New
OvermindDL1
What shell(s) do you use, why do you use them, and how do you have them configured? Note, this is about shell’s, not terminals, terminal...
New
AstonJ
Do we have any digital nomads here? Anyone fancy it? If so, which countries would you consider? I’ve been toying with the idea for a wh...
New

Other popular topics Top

PragmaticBookshelf
Brace yourself for a fun challenge: build a photorealistic 3D renderer from scratch! In just a couple of weeks, build a ray tracer that r...
New
PragmaticBookshelf
Learn from the award-winning programming series that inspired the Elixir language, and go on a step-by-step journey through the most impo...
New
Exadra37
I am thinking in building or buy a desktop computer for programing, both professionally and on my free time, and my choice of OS is Linux...
New
DevotionGeo
I know that -t flag is used along with -i flag for getting an interactive shell. But I cannot digest what the man page for docker run com...
New
Rainer
My first contact with Erlang was about 2 years ago when I used RabbitMQ, which is written in Erlang, for my job. This made me curious and...
New
dimitarvp
Small essay with thoughts on macOS vs. Linux: I know @Exadra37 is just waiting around the corner to scream at me “I TOLD YOU SO!!!” but I...
New
DevotionGeo
I have always used antique keyboards like Cherry MX 1800 or Cherry MX 8100 and almost always have modified the switches in some way, like...
New
New
PragmaticBookshelf
Develop, deploy, and debug BEAM applications using BEAMOps: a new paradigm that focuses on scalability, fault tolerance, and owning each ...
New
PragmaticBookshelf
Escape callback hell and ship fast, clean code that reads as smoothly as it runs. Squash bugs and stamp out memory leaks with an intuitiv...
New