commit e3b43b1bae11f67d1daf78cb3c2284a51e68025a
parent f6bb66597ccc4797024176f39610b61a6ef719d6
Author: ugrnm <ultrageranium@bleu255.com>
Date: Fri, 6 Jun 2025 12:16:28 +0200
solid
Diffstat:
1 file changed, 34 insertions(+), 7 deletions(-)
diff --git a/build_on_solid_ground.mdwn b/build_on_solid_ground.mdwn
@@ -1,16 +1,43 @@
-Consider when to build on solid ground and when to design for disappearance. If longetivity is required some considerations are needed.
+Consider when to build on solid ground and when to design for disappearance. If
+longetivity is required some considerations are needed.
-Many computing systems are based on platforms, frameworks or even languages that change very rapidly, may become obsolete at any time, and are too complex to be easily reimplemented. This principle exists to minimize obsolescence and superfluous maintenance work in systems intended to last.
+Many computing systems are based on platforms, frameworks or even languages
+that change very rapidly, may become obsolete at any time, and are too complex
+to be easily reimplemented. This principle exists to minimize [[obsolescence]]
+and superfluous maintenance work in systems intended to last.
+
+It is good to experiment with new ideas, concepts and languages, but forming
+hard dependencies on them is usually a bad idea. Appreciate mature
+technologies, clear ideas and well-understood theories when building something
+that is intended to last. Software that uses open, well-documented standards
+will be more useful in communicating with the wider technological world. It
+also means that data can survive and still be readable even if the software is
+no longer functioning.
-It is good to experiment with new ideas, concepts and languages, but forming hard dependencies on them is usually a bad idea. Appreciate mature technologies, clear ideas and well-understood theories when building something that is intended to last. Software that uses open, well-documented standards will be more useful in communicating with the wider technological world. It also means that data can survive and still be readable even if the software is no longer functioning.
What can YOU do
+---------------
+
+**With or without a computer**
+
+* Consider using software that runs locally, is open-sourced, and has a thriving user community or is well-documented
+* Try to pick software that favours slow release cycles and thorough testing over rolling updates.
+* try to use smaller, more general-purpose tools instead of complex, prescriptive all-in-one solutions
+* You may also read this as "grow roots to a solid ground". Learn things that last. Learn the history of the technology you use.
-With or without a computer: * Consider using software that runs locally, is open-sourced, and has a thriving user community or is well-documented * Try to pick software that favours slow release cycles and thorough testing over rolling updates. * try to use smaller, more general-purpose tools instead of complex, prescriptive all-in-one solutions * You may also read this as "grow roots to a solid ground". Learn things that last. Learn the history of the technology you use.
-When creating and maintaining software, digital tools or infrastructure
+**When creating and maintaining software, digital tools or infrastructure**
* Avoid unreliable dependencies, especially those hard (non-optional) dependencies. If you can't work around them (in case of software), you can’t avoid using such dependencies, you should bundle them directly with your software keep local copies, instead of relying on downloading them from external servers every time. This way, your software won’t break if those external resources disappear.
-* It is possible to support several target platforms. In case of lasting programs, one of these should be a bedrock platform, or instruction set, that does not change too much and therefore increase accessibility, portability and fallback scenarios. * Imagine some of your users will never be able to get an update or find support - think about how they might solve their problems. * Try to use standard file and data exchange formats, ideally formats that are human-readable. * Don't take anything for granted. Especially don't expect the infrastructure such as the power grid and global networking to continue working indefinitely.
+* It is possible to support several target platforms. In case of lasting programs, one of these should be a bedrock platform, or instruction set, that does not change too much and therefore increase accessibility, portability and fallback scenarios.
+* Imagine some of your users will never be able to get an update or find support - think about how they might solve their problems.
+* Try to use standard file and data exchange formats, ideally formats that are human-readable. * Don't take anything for granted. Especially don't expect the infrastructure such as the power grid and global networking to continue working indefinitely.
+
+
+Principle in action
+-------------------
-Principle in action: * UXN - https://wiki.xxiivv.com/site/uxn.html * DuskOS - https://duskos.org/ * Actually Portable Executable - https://justine.lol/ape.html * Static HTML Site Generators - https://permacomputing.net/static_site_generator
+* [UXN](https://wiki.xxiivv.com/site/uxn.html)
+* [DuskOS](https://duskos.org/)
+* [Actually Portable Executable](https://justine.lol/ape.html)
+* [[static site generator]]