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 b0705be5217cffead6ca840679996eea7bf98045
parent 2179641b6d7becd8b98d44e7b3e2cce1b111f3f5
Author: ugrnm <ultrageranium@bleu255.com>
Date:   Fri,  6 Jun 2025 11:08:00 +0200

Merge branch 'master' of borok:/var/www/git.bleu255.com/repos/permacomputing

Diffstat:
Mkeep_it_flexible.mdwn | 17+++++++++++++----
1 file changed, 13 insertions(+), 4 deletions(-)

diff --git a/keep_it_flexible.mdwn b/keep_it_flexible.mdwn @@ -2,12 +2,21 @@ Flexibility means adaptability to different purposes and circumstances, includin Computing systems should adapt to the changes in their operating environments (especially in relation to energy and heat). 24/7 availability of all parts of the system should not be required, and neither should a constant operating performance (e.g. networking speed). -If it is possible to imagine all the possible use cases when designing a system, the design may very well be too simple and/or too inflexible. Smallness, simplicity and flexibility are also part of the "small, sharp tools" ideal of the Unix command line. Here the key to flexibility is the ability to creatively combine small tools that do small, individual things. +If it is possible to imagine all the possible use cases when designing a system, the design may very well be too simple and/or too inflexible. Smallness, simplicity and flexibility are also part of the "small, sharp tools" ideal of the [[Unix]] command line. Here the key to flexibility is the ability to creatively combine small tools that do small, individual things. + What can YOU do -With or without a computer: - Identifying inflexibilities in digital systems can be simple (e.g. it breaks immediately) or difficult (e.g. it refuses to work in some way but it's very unclear why). It is important to not give up in both cases. Is it reasonable that the system is inflexible in this way? Can we raise this as a discussion with the designers? - You do not have to be always available yourself. Speaking of flexibility, if we collectively refuse to always being available, our devices don't have to always be on, online, at full speed either. +With or without a computer: +- Identifying inflexibilities in digital systems can be simple (e.g. it breaks immediately) or difficult (e.g. it refuses to work in some way but it's very unclear why). It is important to not give up in both cases. Is it reasonable that the system is inflexible in this way? Can we raise this as a discussion with the designers? +- You do not have to be always available yourself. Speaking of flexibility, if we collectively refuse to always being available, our devices don't have to always be on, online, at full speed either. -When creating and maintaining software, digital tools or infrastructure - Consider the idea of static and runtime flexibility. Static flexibility defines what the system can do in general, whereas runtime flexibility refers to how it can adapt to a changing environment (e.g. changes in temperature, energy and network availability). - Computing technology in general is very flexible because of its programmability. Programming and programmability should be supported and encouraged everywhere, and artificial lock-ins that prevent (re)programming should be broken. - Design systems you can gradually modify and improve while running them. In this some case this could also means designing a self-obviating system. - In a long term, software and hardware systems should not get obsoleted by changing needs and conditions. New software can be written even for old computers, old software can be modifed to respond to new needs, and new devices can be built from old components. +When creating and maintaining software, digital tools or infrastructure +- Consider the idea of static and runtime flexibility. Static flexibility defines what the system can do in general, whereas runtime flexibility refers to how it can adapt to a changing environment (e.g. changes in temperature, energy and network availability). +- Computing technology in general is very flexible because of its programmability. Programming and programmability should be supported and encouraged everywhere, and artificial lock-ins that prevent (re)programming should be broken. +- Design systems you can gradually modify and improve while running them. In this some case this could also means designing a self-obviating system. +- In a long term, software and hardware systems should not get obsoleted by changing needs and conditions. New software can be written even for old computers, old software can be modifed to respond to new needs, and new devices can be built from old components. -Principle in Action - solar.lowtechmagazine.com - remote.materialsmatter.ie +Principle in Action +- [solar.lowtechmagazine.com](https://solar.lowtechmagazine.com/about/the-solar-website/) +- [remote.materialsmatter.ie](https://remote.materialsmatter.ie)