commit: 57cdf3061f3995b534989be93111d0b3ef8104df
parent 5684cf603053e7c82d6f388324f114fcef213d08
Author: Haelwenn (lanodan) Monnier <contact@hacktivis.me>
Date: Sat, 14 Dec 2024 16:39:27 +0100
articles/choosing-dependencies: new
Diffstat:
4 files changed, 41 insertions(+), 0 deletions(-)
diff --git a/articles/choosing-dependencies.xml b/articles/choosing-dependencies.xml
@@ -0,0 +1,38 @@
+<entry>
+<title>How I choose dependencies</title>
+<link rel="alternate" type="text/html" href="https://hacktivis.me/articles/choosing-dependencies"/>
+<id>https://hacktivis.me/articles/choosing-dependencies</id>
+<published>2024-12-14T15:25:29Z</published>
+<updated>2024-12-14T15:25:29Z</updated>
+<!--
+<link rel="external replies" type="application/activity+json" href="https://queer.hacktivis.me/objects/50be9d37-dee6-4c69-818e-013fa3b010d0" />
+<link rel="external replies" type="text/html" href="https://queer.hacktivis.me/objects/50be9d37-dee6-4c69-818e-013fa3b010d0" />
+-->
+<content type="xhtml">
+<div xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" class="h-entry">
+
+<p>
+ Those are the question I always ask myself prior to picking a dependency:
+ <ol>
+ <li>Are other people using it? (easy to check via distros like Alpine or Gentoo)</li>
+ <li>Could I end up maintaining it? (either due to upstream passing me maintenance, or needing to fork/patch it)</li>
+ </ol>
+</p>
+
+<p>
+ The first question isn't very important but makes sense to check, could otherwise end up missing a better dependency without doing so, and sometimes turns out the dependency is used by no one because it's unusable.<br />
+ The second question is probably the most important, could skip it for throwaway scripts but well… temporary sometimes spans for a very long time.
+</p>
+
+<p>
+ Note: I tend to consider not just libraries but also utilities, buildsystems, language implementations as part of the dependencies.
+ Could even consider deployment like packaging into distros in there as well but can't really call that a dependency of the software.
+ <br />
+ I could consider Operating Systems as a dependency, but effectively it's more of a portability question.
+ And having experienced how OpenSolaris got shut down and how fast it went unusable as a desktop Operating System (mostly due to third-party software),
+ I don't really want to have my software being too tied to an Operating System.
+</p>
+
+</div>
+</content>
+</entry>
diff --git a/config.ninja b/config.ninja
@@ -16,6 +16,7 @@ build articles/2024-11-26-bloguidien-objet-rare.html: article_fr entrée.xsl art
build articles/T495-4Y-later.html: article entry.xsl articles/T495-4Y-later.xml
build articles/Why$ I$ embraced$ Wayland.html: article entry.xsl articles/Why$ I$ embraced$ Wayland.xml
build articles/bootstrap-initrd.html: article entry.xsl articles/bootstrap-initrd.xml
+build articles/choosing-dependencies.html: article entry.xsl articles/choosing-dependencies.xml
build articles/cve.org-disaster.html: article entry.xsl articles/cve.org-disaster.xml
build articles/drm-definition.html: article entry.xsl articles/drm-definition.xml
build articles/firefox-begone.html: article entry.xsl articles/firefox-begone.xml
diff --git a/feed.atom.in b/feed.atom.in
@@ -11,6 +11,7 @@
<updated>2024-02-26T05:44:00Z</updated>
<!-- new.sh: new articles here -->
+<xi:include href="articles/choosing-dependencies.xml"/>
<xi:include href="articles/mozilla-foundation-has-no-members.xml"/>
<xi:include href="articles/bootstrap-initrd.xml"/>
<xi:include href="articles/libre-software-security-disclosure.xml"/>
diff --git a/home.shtml b/home.shtml
@@ -13,6 +13,7 @@
<p>List of articles, newest first:</p>
<ol class="indexlist">
<!-- new.sh: new articles here -->
+ <li>2024-12-14: <a href="/articles/choosing-dependencies">How I choose dependencies</a></li>
<li>2024-06-25: <a href="/articles/mozilla-foundation-has-no-members">Mozilla Foundation has no members</a></li>
<li>2024-06-23: <a href="/articles/bootstrap-initrd">bootstrap-initrd: A self-building environment based on tcc+musl</a></li>
<li>2024-02-26: <a href="/articles/libre-software-security-disclosure">Security Disclosures for Libre Software</a></li>