At a previous job they offered Linux laptops (yay!), but...
- umask was not 022, so installing pretty much anything with `sudo make install` would fail, as would some software.
- Running nmap caused an alert to phone home to IT, who would nag me on slack.
- Opening well-known ports to my LAN (like 22) caused an alert to IT.
- An "agent" program ran constantly, often using 100% of a CPU. The system overall had about 45 minutes of battery life.
- Various system settings were overridden by a sysctl.d/ file that was regenerated by the agent at boot. Fortunately I know how ASCII sorting works and could produce a file that overrode the overrides.
- Various capabilities (CAP_...) were disabled for my sudoer user.
It wasn't that bad, and IT was helpful, but it was a persistent annoyance. Maybe what happened is somebody googled "how to harden Linux" and then just made everything on the first page of results company policy.
Lisp gives you an infinite amount of functions that operate on one data structure: the cons cell. :P
I guess all you really need are dynamically allocated arrays. A cons cell is an array of two. A struct with N fields is an array of N. Everything else is built on that.
I tend to think of "rule of law" as describing the fairness of the courts. But then you need effective law enforcement for the courts to mean anything.
In the [exec][1] family of POSIX functions, if the command path doesn't contain a slash, then it's looked up in the PATH.
> If the file argument contains a slash character, the file argument shall be used as the pathname for this file. Otherwise, the path prefix for this file is obtained by a search of the directories passed as the environment variable PATH [...]
Just because these types of annoyances can be easily disabled by someone with a little bit of technical know-how doesn't mean that one doesn't have the right to be annoyed by the tendency and call it out.
reply