💾 Archived View for paritybit.ca › arboretum › knowledge › permacomputing.gmi captured on 2023-01-29 at 02:55:40. Gemini links have been rewritten to link to archived content
View Raw
More Information
-=-=-=-=-=-=-
Permacomputing
← Back
Permacomputing is an approach to computing inspired by permaculture, aiming to be more sustainable than our current consume-and-throw-away approach to building hardware and software systems.
https://permacomputing.net/
"Permaculture is an approach to land management and settlement design that adopts arrangements observed in flourishing natural ecosystems"
https://en.wikipedia.org/wiki/Permaculture
It is related to Solarpunk which is a lifestyle movement and genre of art and fiction that envisions how the future might look if humanity adopted solutions that emphasised sustainability and human impact on the environment, in which humanity is re-integrated with nature, and where technology is used for human- and eco-centric purposes (as opposed to capital-centric).
https://www.re-des.org/a-solarpunk-manifesto/
https://www.appropedia.org/Solarpunk
Permacomputing aims to:
- Create systems that minimize the use of non-renewable resources and strengthen human connection.
- Maximise the longevity of that which has already been produced, repair and salvage broken systems, and encourage cooperation in communities to avoid excessive consumption
- Keep things simple such that they can be reasonably understood by a single person (human-scale). Simple systems tend to have smaller hardware and energy requirements and are easier to maintain and manage.
- Build resilient software, hardware, and a vision/outlook that can withstand interruptions in resource flows, the collapse of the internet or power grid, and other disastrous scenarios. In essence: hope for the best, prepare for the worst.
- Design flexible systems that can be built upon, molded, and shaped. Support programmability and hacking instead of trying to imagine every possible use case. Allow users of your systems to mold it to their needs.
- Appreciate mature technologies, clear ideas, and well-understood principles when designing systems that are intended to last (i.e. systems that are not experimental or exploring new technologies).
- Build long-lasting systems upon stable platforms that are unlikely to significantly change in the future so that programs will continue to work for many decades to come, avoiding the phenomenon of software rot.
- Amplify awareness of the concrete world, how things work, and in what context things operate. Instead of shutting ourselves away in blind pursuits of knowledge and progress, explore the world that exists and create systems that amplify awareness of that world.
- Expose everything about the workings of a system. Things should be open, modifiable, and flexible, and nothing about the state of a system should be completely hidden from the user or programmer.
- Avoid pseudo-simplicity, where things are simple only in appearance.
- Design systems that adapt to changes in operating environments. Constant availability or operating performance should not be required. Software and hardware systems should not be obsoleted by changing needs and conditions. New software should be able to be written for old systems and old software should be able to be modified to respond to new needs. New hardware should be buildable from old components, and old components should continue to be integratable into new systems.
- Be present in the place and moment, but not ignorant of the past or future. Nothing is obsolete or irrelevant.
- Eschew the concepts of universality. Nothing is universal and there is no one correct way of doing things.
- Embrace uselessness and fun. Strict utilitarianism impoverishes and degrades the soul and spirit.
- Appreciate diversity, avoid monocultures, but recognize that standards are useful tools (e.g. UTF-8). There is a place for slow and fast, gradual and one-shot processes, and not everything should be examined from the same perspective.
- Cherish locality and avoid centralisation. Each community should have software and hardware systems that fit their needs and which they can adapt, maintain, and grow to serve themselves.
Note that although Permacomputing heavily involves the ideas of simplicity, using what is stable, and generally goes against the current way we think of and treat computing, it does not advocate for going back in time, "living in the dark ages", or standing still and never improving what already exists. It advocates for a complete reframing of the way we think about computing to more carefully consider the effects, longevity, performance, maintainability, and sustainability of the systems we create.
It combines the ideas of frugal computing (using computational resources only when necessary and as effectively as possible), salvage computing (making use of what has already been produced), and collapse computing (utilizing what can survive the collapse of industrial production or processes).
Some Permacomputing Technologies
The UXN Ecosystem
CollapseOS
Infrared ports and audio-cable-based data communication. They might be slow but they are simple and easy to hack on. (NOT Bluetooth. Anything but Bluetooth.)
Resources
Permacomputing 2020
Permacomputing Update 2021
XXIIVV Wiki on Permacomputing
Unplanned Obsolescence: Hardware and Software After Collapse
A pluriverse of local worlds: a review of Computing within Limits related terminology and practices
Regenerative Computing: De-limiting hope.
Abstraction, Indirection, and Sevareid's Law: Towards Benign Computing
Frugal Computing
Rustic Computing
The 100 Year Computer
Larry Wall's Quest for a 100-Year Programming Language
CivBoot
Simple Systems Manifesto
Maximalism and Virtualism
Design for Disassembly and Deconstruction
Collapse Informatics and Practice: Theory, Method, and Design
On Cosmotechnics For a Renewed Relation between Technology and Nature in the Anthropocene
Simple Made Easy - Rich Hickey
Re-evaluating technology
A New Old Idea
Tools For Thought by Howard Rheingold