283
My fellow software engineer, It's the year 2024...
(mastodon.social)
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
having choices are the opposite of conforming to standards
Well, when software supports this standard, you as a user have a way to not confirm to it by setting the env variables to whatever you want, even per app. So you have two choises, either use it as is or change it.
But if software doesn't supportthe spec, there is no choise of using it. So ons choise less.
This standard makes your software's paths user-configurable, giving users a choice.
And if I don't agree with how that standard is implemented? I should have the choice to use something else. Isn't that how everything works?
You can of course not give users a choice. And a lot of applications do their own thing, having their own variables like
GOPATH
or a cli option like--config
or some way to do that in a config file like Idea IDEs. But implementing XDG from start is miles simpler for all parties, it's good practice to have your paths and variables somewhat organized in code anyway.To conform to a standard or do something else are each a choice. If you can justify your choice then perhaps it's a good one.
Choosing to not conform is also a choice
Of course, and is what I say.