permacomputing

Source repository for the main permacomputing wiki site
git clone http://git.permacomputing.net/repos/permacomputing.git # read-only access
Log | Files | Refs

commit beab501dd1281a9d0554e26a2dac57b46a611e8a
parent a7961769f96543de7591472d7efa107f8d377d58
Author: Ville-Matias Heikkila <viznut@low.fi>
Date:   Tue, 14 Jun 2022 15:56:14 +0300

new page

Diffstat:
Adependency.mdwn | 41+++++++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+), 0 deletions(-)

diff --git a/dependency.mdwn b/dependency.mdwn @@ -0,0 +1,41 @@ +# Dependency + +A **dependency** refers to another piece of technology ([[software]] or +[[hardware]]) a technology depends on for using. In software, "dependencies" +may refer to the entire network of dependencies or just the software part of +it. + +The dependencies of a normal computer application include the physical +computer, the energy source (including the grid and all the economic +dependencies needed to maintain it), the [[operating system]], and a set of +libraries (some of which may be bundled with the OS). An increasing number +of computer programs also depend on an [[Internet]] connection and an +arbitrary server often maintained by the corporate owner of the program. + +Nature is full of dependencies but most of them are **soft dependencies**: +animals can usually find nutrition from whatever other organisms are +available instead of strictly depending on specific species. In high +technology, however, we are mostly talking about **hard dependencies**: +computers and cars need to be built from very specific components, some of +which may only have only one manufacturing plant. Programs often depend on +specific versions of specific libraries, and changes to those libraries may +[[render the program unusable|software rot]]. + +[[Documentation]] can be thought of as a soft dependency in the computer +world. Some kind of documentation is usually needed in order to fully +utilize a program or a device, but this documentation can come from several +alternative sources. It can also be omitted if the user has already learned +the necessary information. + +Permacomputing calls for dependency-awareness, both regarding the material +dependencies (the grid, the manufacturing infrastructure, etc.) and the +digital ones. In both cases, the networks of hard dependencies are often +several orders of magniture larger than they should be, so permacomputing is +concerned about shrinking the networks as well as moving the emphasis +towards soft dependencies. + +Software dependencies may sometimes include non-open-source pieces of +software. These can usually be tolerated as long as there's a way to run +them in an open-sourced emulator. Depending on an Internet connection in +programs that are not essentially networking-related, however, should not be +tolerated, especially if this means depending on an arbitrary server.