User:Rudxain/Permacomputing: Difference between revisions
move prog-langs to new Suggestions section |
m move 100R link, for style-guide compliance |
||
| Line 10: | Line 10: | ||
==Why== | ==Why== | ||
Here's a quote from 100R (links added by me; typos corrected):<ref>https://100r.co/site/weathering_software_winter.html</ref><blockquote>Many of the tools that we thought we could rely on broke down, whether it is [[Apple]] products, or software that require [[Subscription service|subscription services]], <abbr>[[Digital rights management|DRM]]</abbr>, etc. As an artist you spend time developing a skill, you become a Photoshop illustrator. When your connection to the internet fails and that the software locks up, that skill that you thought was [[Right to own|yours]] was actually entirely owned by someone, and can be taken away. | Here's a quote from [[wikipedia:Hundred_Rabbits#Permacomputing|100R]] (links added by me; typos corrected):<ref>https://100r.co/site/weathering_software_winter.html</ref><blockquote>Many of the tools that we thought we could rely on broke down, whether it is [[Apple]] products, or software that require [[Subscription service|subscription services]], <abbr>[[Digital rights management|DRM]]</abbr>, etc. As an artist you spend time developing a skill, you become a Photoshop illustrator. When your connection to the internet fails and that the software locks up, that skill that you thought was [[Right to own|yours]] was actually entirely owned by someone, and can be taken away. | ||
Even though we've been paying for this sort of software for years, the moment that you can't have access to [[Forced account|authenticate yourself]] that skill is gone. We didn't expect this, it scared us.</blockquote>Here's one from Maxime Chevalier-Boisvert (links added):<ref>https://github.com/maximecb/uvm/blob/778114c4adf9a928a77c3491bb8dd3c1e464fd84/doc/vision.md</ref><blockquote>We live in a world where software is increasingly complex, and increasingly fragile as a result. It's very easy to end up in a situation where software that was working just fine a few months ago can no longer compile and run due to broken dependencies. One of the main goals of UVM is to combat the phenomenon known as [[wikipedia:Software_rot|"code rot" or "bit rot"]]. | Even though we've been paying for this sort of software for years, the moment that you can't have access to [[Forced account|authenticate yourself]] that skill is gone. We didn't expect this, it scared us.</blockquote>Here's one from Maxime Chevalier-Boisvert (links added):<ref>https://github.com/maximecb/uvm/blob/778114c4adf9a928a77c3491bb8dd3c1e464fd84/doc/vision.md</ref><blockquote>We live in a world where software is increasingly complex, and increasingly fragile as a result. It's very easy to end up in a situation where software that was working just fine a few months ago can no longer compile and run due to broken dependencies. One of the main goals of UVM is to combat the phenomenon known as [[wikipedia:Software_rot|"code rot" or "bit rot"]]. | ||
| Line 20: | Line 20: | ||
This is more than just [[wikipedia:Link_rot|link rot]], it's the increasing complexity of keeping alive indie content on the web, leading to a reliance on platforms and time-sorted publication formats (blogs, feeds, tweets).</blockquote> | This is more than just [[wikipedia:Link_rot|link rot]], it's the increasing complexity of keeping alive indie content on the web, leading to a reliance on platforms and time-sorted publication formats (blogs, feeds, tweets).</blockquote> | ||
== Suggestions == | ==Suggestions== | ||
Ideally, this should be a guide, but there is no one-size-fits-all guide to "achieve permacompute nirvana". So here's a list of my own suggestions/"guidelines": | Ideally, this should be a guide, but there is no one-size-fits-all guide to "achieve permacompute nirvana". So here's a list of my own suggestions/"guidelines": | ||
| Line 26: | Line 26: | ||
If you've seen [[User:Rudxain/Unix|my Unix article]], you probably already know that [[wikipedia:POSIX|POSIX]] [https://pubs.opengroup.org/onlinepubs/9799919799/idx/utilities.html utilities] are the best practical/pragmatic choice. Most notably, <code>sh</code> and [[wikipedia:C_(programming_language)|C]] are the most popular, so you can assume they're portable simply because of their ubiquity. There's even a project that allows compiling C into ''extremely''-portable executables.<ref>https://justine.lol/cosmopolitan/</ref> | If you've seen [[User:Rudxain/Unix|my Unix article]], you probably already know that [[wikipedia:POSIX|POSIX]] [https://pubs.opengroup.org/onlinepubs/9799919799/idx/utilities.html utilities] are the best practical/pragmatic choice. Most notably, <code>sh</code> and [[wikipedia:C_(programming_language)|C]] are the most popular, so you can assume they're portable simply because of their ubiquity. There's even a project that allows compiling C into ''extremely''-portable executables.<ref>https://justine.lol/cosmopolitan/</ref> | ||
100R recommends [[wikipedia:Forth_(programming_language)|Forth]]. | |||
There's also [[wikipedia:Zig_(programming_language)|Zig]], which has "reusable software" as part of its slogan. It also has good-enough C [[wikipedia:Interoperability|interop]]. However, it's still in an [[wikipedia:API#Public_API_implications|API-unstable]] state, so you'll have to wait before everything is settled. | There's also [[wikipedia:Zig_(programming_language)|Zig]], which has "reusable software" as part of its slogan. It also has good-enough C [[wikipedia:Interoperability|interop]]. However, it's still in an [[wikipedia:API#Public_API_implications|API-unstable]] state, so you'll have to wait before everything is settled. | ||