all repos — h3rald @ f82798977cd5ebdb9b287ee088be49dd588806cd

The sources of https://h3rald.com

contents/articles/pragmatic-permacomputing.md

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
-----
id: pragmatic-permacomputing
title: "Pragmatic Permacomputing"
draft: true
subtitle: "Consideraton on building practical and resilient software"
content-type: article
timestamp: 1747484731
-----

[Permacomputing](https://permacomputing.net) should be taught at school. It should provide a _forma mentis_ for future engineers interested in building software and hardware that is mean to last, rather than doomed to be thrown away after a relatively short time. 

> [Permacomputing] values maintenance and refactoring of systems to keep them efficient, instead of planned obsolescence, permacomputing practices planned longevity. It is about using computation only when it has a strengthening effect on ecosystems.

-- Devine Lu Linvega on [Permacomputing](https://wiki.xxiivv.com/site/permacomputing.html)

Interesting stuff, no doubt, but _why_? What drives this semi-underground, off-the-beaten-track movement that aims at doing more with less, recycling old hardware, and building _resilient_ software?

[Collapse OS](https://collapseos.org) and its less radical brother [Dusk OS](https://duskos.org) are two examples of software that is meant to be used at the [first and second stage](https://collapseos.org/why.html) of a [collapse of civilization](https://collapseos.org/civ.html) that is both _imminent_ and _inevitable_.

Scary stuff. A bit over the top, if you ask me, and these two remarkable projects regularly get [criticized](https://news.ycombinator.com/item?id=43482705) on Hacker News for being excessively alarmist. Also, in a future where humanity is not able to produce computers anymore — maybe due to a sudden catastrophe like a nuclear holocaust, alien invasion, zombie apocalypse, ...take yor pick — people would be more concerned about survival rather than programming some old computer in Forth.

I do think, however, that permacomputing can be a very practical philosophy for developing or choosing software and hardware. You can definitely be pragmatic about it, and do something good for yourself and the planet in the process.

### Realistic motivations

There are definitely more down-to-Earth motivations to embrace permacomputing than imminent civilization collapse. Here are a few:

- **Temporary or partial infrastructure failure** — Think earthquakes, black outs, terrorist attacks, cyber attacks, civil unrest, and the likes. Nasty, but definitely plausible as they did happen already. Still on the alarmist side of things, but if you are 100% reliant on the Internet, would you be OK if you couldn't connect to it for a day? How about a week?
- **Lack of financial resources** — Imagine not being able to afford a new laptop or smartphone. Can you make do with older hardware
- **Lack of free time** — You are studying at high school or uni, and building software using the latest stuff. You don't mind using hundreds of NPM packages and keeping them up-to-date every week. Fast forward a few years, you have a family and kids. Your priority changes, but you still want to run your own web site and apps even if you don't have 2 hours of spare time per day, or per week, even. 
- **Save money on VPS or self-host on RPis etc.** — A VPS is a fairly cheap way to run your own server. For four bucks per month, [DigitalOcean gives you a droplet](https://www.digitalocean.com/pricing/droplets) with Linux on it, and you can install whatever you want on it and run it 24/7. As long as 512MB of RAM is enough for you. You want more? You pay more. You can get 4GB of RAM for $24/month for example, are you OK to pay that amount? Even then, your laptop has what, 16GB of RAM these days? Forget running bloated software there. Same thing if you plan to self-host on your Raspberry Pi: you are going to have to deal with more resource-constrained hardware... but that's a _good thing_, because it forces you to re-evaluate your software stack and often go for less-bloated alternatives.
- **Service shuutting down (or increasing prices)** — After enjoying _free_ Google Apps for your Domains for... ten years, Google suddenly started charging for it. A special, discounted price at first, but after a year it started increasing it more and more. After running all my family infrastructure there, it was time to either pay like another 25-35$/month, or move. I did the latter, and iCloud is just fine as a mail provider, especially considering I was already paying for it (but a much smaller amount). Will it be OK for the next 10 years? I hope so, but for now, the cost (in time and effort) of self-hosting my emails outweighs the actual cost for a proprietary solution.

Your mileage may vary, but chances are that you already experienced at least one of the scenarios above.

### Recycle and salvage

One of the first steps to reduce the amounts of e-waste that gets generated every year is realizing that _you may not need_ the latest and gratest laptop, or the latest iPhone. You don't need to change smartphone every year, especially because — let's face it — upgrading your phone is no way near as exciting as it was in the 2010s. You get what, a better camera? More GBs? Even higher processing power? Sure. But do you _really_ need it? Maybe not. 



### Portability: Target multiple architectures 

### Understandability

### limit reliance on 3rd parties (within reason)

### Run on limited memory/cpu

### local first (avoid AI, cloud, internet, containers)

### open source and knowledge 

### interoperability (import/export)

### build for resilience