summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSadeep Madurange <sadeep@asciimx.com>2025-11-02 22:31:21 +0800
committerSadeep Madurange <sadeep@asciimx.com>2025-11-02 22:31:21 +0800
commit0f453ad099344794a6c7897b787f1e990305dfe4 (patch)
treec3afc0b7a3c1bc80756bd3266ec7e83f6555937a
parente98506bcc846b86092cc0f9ea77fd8c9f9be3a1a (diff)
downloadwww-0f453ad099344794a6c7897b787f1e990305dfe4.tar.gz
wip: post on Unix.
-rw-r--r--_archive/desktop-unix.md43
-rw-r--r--_site/archive/desktop-unix/index.html42
-rw-r--r--_site/feed.xml2
-rw-r--r--_site/posts.xml2
4 files changed, 56 insertions, 33 deletions
diff --git a/_archive/desktop-unix.md b/_archive/desktop-unix.md
index ebfdf81..29784e0 100644
--- a/_archive/desktop-unix.md
+++ b/_archive/desktop-unix.md
@@ -29,27 +29,38 @@ Capitalism' by Professor Shoshana Zuboff documents in detail unassailable
evidence and poignant consequences of the surveillance activities by these
corporations.
-
-The year 2020 transformed my personal computing experience. In March 2020, I
-stumbled upon Arch Linux and discovered that I could customize my desktop
-environment to look and work any way I liked. I exercised that newfound freedom
-to create a Matrix-themed setup:
+Conversely, Unix-like operating systems are open to the user to use them as
+they deem fit. They do not spy on their users, sell hidden agendas, and some,
+like OpenBSD, do not show commercial interests whatsoever. The following is a
+screenshot of my custom Arch Linux setup in 2020. It uses X display server and
+i3 for window management, Urxvt terminal emulator made translucent with the
+help of the Xcompmgr compositor.
![Arch Linux](linux.png)
-The system employs the X display server and the i3 window manager. The terminal
-emulator used is Urxvt. The translucent effect is achieved with the help of the
-Xcompmgr compositor. This sort of setup was popular among minimalist Linux
-users.
-
-In February 2024, I switched to an OpenBSD system with Xenocara (the OpenBSD
-build of X display server) as the display server and i3 as the window manager:
+The following is an equivalent setup on OpenBSD from my 2024 desktop:
![OpenBSD i3](openbsd.png)
-Unlike Linux, OpenBSD includes a coherent desktop environment out of the box.
-Except for the window manager, for which I prefer a tiling one, I'm now using
-the default OpenBSD setup. For the window manager, I use dwm from the Suckless
-team.
+This degree of customization is impossible with commercial operating systems.
+The operating system vendor sets firm boundaries around how the machine should
+be used. As a consequence, the user is forced to suffer slow animations,
+arrangement of windows, and blatant infringements of privacy.
+
+The conceptual elegance and technological superiority of Unix-like operating
+systems lie in how programs developed independently come together to accomplish
+complex tasks. For instance, to read and reply to an HTML email on OpenBSD,
+Mutt, my email client, requests credentials from Pass, which retrieves
+credentials and requests GPG to decrypt them. With the decrypted credentials
+Mutt fetches the email, opens the Lynx browser to render the HTML content. To
+reply, I press Shift+R key, which opens Vim, the text editor I use for all my
+text editing tasks. I prepare the reply and press 'y' to dispatch it.
+
+The entire process of handing control from one program to another is seamless
+and instantaneous. The magic is in the fact each of these programs are
+developed by different programmers, without so much as exchanging an email to
+make sure that they can interoperate. In fact, none of these programs were
+designed to interoperate for the specific use case of sending an email. The
+interoperability is a direct consequence of how Unix was designed.
Files: [dotfiles.tar.gz](dotfiles.tar.gz)
diff --git a/_site/archive/desktop-unix/index.html b/_site/archive/desktop-unix/index.html
index 02d4325..82acb97 100644
--- a/_site/archive/desktop-unix/index.html
+++ b/_site/archive/desktop-unix/index.html
@@ -67,27 +67,39 @@ Capitalism’ by Professor Shoshana Zuboff documents in detail unassailable
evidence and poignant consequences of the surveillance activities by these
corporations.</p>
-<p>The year 2020 transformed my personal computing experience. In March 2020, I
-stumbled upon Arch Linux and discovered that I could customize my desktop
-environment to look and work any way I liked. I exercised that newfound freedom
-to create a Matrix-themed setup:</p>
+<p>Conversely, Unix-like operating systems are open to the user to use them as
+they deem fit. They do not spy on their users, sell hidden agendas, and some,
+like OpenBSD, do not show commercial interests whatsoever. The following is a
+screenshot of my custom Arch Linux setup in 2020. It uses X display server and
+i3 for window management, Urxvt terminal emulator made translucent with the
+help of the Xcompmgr compositor.</p>
<p><img src="linux.png" alt="Arch Linux" /></p>
-<p>The system employs the X display server and the i3 window manager. The terminal
-emulator used is Urxvt. The translucent effect is achieved with the help of the
-Xcompmgr compositor. This sort of setup was popular among minimalist Linux
-users.</p>
-
-<p>In February 2024, I switched to an OpenBSD system with Xenocara (the OpenBSD
-build of X display server) as the display server and i3 as the window manager:</p>
+<p>The following is an equivalent setup on OpenBSD from my 2024 desktop:</p>
<p><img src="openbsd.png" alt="OpenBSD i3" /></p>
-<p>Unlike Linux, OpenBSD includes a coherent desktop environment out of the box.
-Except for the window manager, for which I prefer a tiling one, I’m now using
-the default OpenBSD setup. For the window manager, I use dwm from the Suckless
-team.</p>
+<p>This degree of customization is impossible with commercial operating systems.
+The operating system vendor sets firm boundaries around how the machine should
+be used. As a consequence, the user is forced to suffer slow animations,
+arrangement of windows, and blatant infringements of privacy.</p>
+
+<p>The conceptual elegance and technological superiority of Unix-like operating
+systems lie in how programs developed independently come together to accomplish
+complex tasks. For instance, to read and reply to an HTML email on OpenBSD,
+Mutt, my email client, requests credentials from Pass, which retrieves
+credentials and requests GPG to decrypt them. With the decrypted credentials
+Mutt fetches the email, opens the Lynx browser to render the HTML content. To
+reply, I press Shift+R key, which opens Vim, the text editor I use for all my
+text editing tasks. I prepare the reply and press ‘y’ to dispatch it.</p>
+
+<p>The entire process of handing control from one program to another is seamless
+and instantaneous. The magic is in the fact each of these programs are
+developed by different programmers, without so much as exchanging an email to
+make sure that they can interoperate. In fact, none of these programs were
+designed to interoperate for the specific use case of sending an email. The
+interoperability is a direct consequence of how Unix was designed.</p>
<p>Files: <a href="dotfiles.tar.gz">dotfiles.tar.gz</a></p>
</div>
diff --git a/_site/feed.xml b/_site/feed.xml
index 185e211..0a075a3 100644
--- a/_site/feed.xml
+++ b/_site/feed.xml
@@ -1 +1 @@
-<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator><link href="http://localhost:4000/feed.xml" rel="self" type="application/atom+xml" /><link href="http://localhost:4000/" rel="alternate" type="text/html" /><updated>2025-11-02T20:52:16+08:00</updated><id>http://localhost:4000/feed.xml</id><title type="html">ASCIIMX | Archive</title><author><name>Wickramage Don Sadeep Madurange</name></author><entry><title type="html">Unix-like operating systems</title><link href="http://localhost:4000/archive/desktop-unix/" rel="alternate" type="text/html" title="Unix-like operating systems" /><published>2025-09-21T00:00:00+08:00</published><updated>2025-09-21T00:00:00+08:00</updated><id>http://localhost:4000/archive/desktop-unix</id><author><name>Wickramage Don Sadeep Madurange</name></author><summary type="html"><![CDATA[The Unix operating system project appears to have started in 1969 at Bell Labs. Something resembling contemporary Unix-like systems may have been developed in 1973 when Dennis Ritchie and Ken Thompson rewrote the Unix kernel in C. Both of these important milestones, unfortunately, predate me by a number of years.]]></summary></entry><entry><title type="html">Neo4J A* search</title><link href="http://localhost:4000/archive/neo4j-a-star-search/" rel="alternate" type="text/html" title="Neo4J A* search" /><published>2025-09-14T00:00:00+08:00</published><updated>2025-09-14T00:00:00+08:00</updated><id>http://localhost:4000/archive/neo4j-a-star-search</id><author><name>Wickramage Don Sadeep Madurange</name></author><summary type="html"><![CDATA[Back in 2018, we used the Neo4J graph database to track the movement of marine vessels. We were interested in the shortest path a ship could take through a network of about 13,000 route points. Performance issues with Neo4J’s shortest-path algorithms limited our search to about 4,000 route points.]]></summary></entry><entry><title type="html">MOSFETs</title><link href="http://localhost:4000/archive/mosfet-switches/" rel="alternate" type="text/html" title="MOSFETs" /><published>2025-06-22T00:00:00+08:00</published><updated>2025-06-22T00:00:00+08:00</updated><id>http://localhost:4000/archive/mosfet-switches</id><author><name>Wickramage Don Sadeep Madurange</name></author><summary type="html"><![CDATA[Recently, I needed a low-power circuit for one of my battery-operated projects. Much of the system’s power savings depended on its ability to switch off power to components, such as servos, electronically when not needed. That’s how I stumbled upon MOSFETs, transistors capable of controlling circuits operating at voltages far above their own.]]></summary></entry><entry><title type="html">Awesome books</title><link href="http://localhost:4000/archive/awesome-books/" rel="alternate" type="text/html" title="Awesome books" /><published>2025-04-20T00:00:00+08:00</published><updated>2025-04-20T00:00:00+08:00</updated><id>http://localhost:4000/archive/awesome-books</id><author><name>Wickramage Don Sadeep Madurange</name></author><summary type="html"><![CDATA[This article contains a list of my favourite books.]]></summary></entry><entry><title type="html">Programming ATmega328P chips</title><link href="http://localhost:4000/archive/arduino-uno/" rel="alternate" type="text/html" title="Programming ATmega328P chips" /><published>2025-04-10T00:00:00+08:00</published><updated>2025-04-10T00:00:00+08:00</updated><id>http://localhost:4000/archive/arduino-uno</id><author><name>Wickramage Don Sadeep Madurange</name></author><summary type="html"><![CDATA[This post is a step-by-step guide for wiring up ATmega328P ICs to run at 5V with a 16MHz crystal and 3.3V with an 8MHz crystal. While the 5V configuration is common, the 3.3V configuration can be advantageous in low-power applications and when interfacing with parts that run at 3.3V.]]></summary></entry><entry><title type="html">Bare-metal ARM Cortex M3 chips</title><link href="http://localhost:4000/archive/arduino-due/" rel="alternate" type="text/html" title="Bare-metal ARM Cortex M3 chips" /><published>2024-10-05T00:00:00+08:00</published><updated>2024-10-05T00:00:00+08:00</updated><id>http://localhost:4000/archive/arduino-due</id><author><name>Wickramage Don Sadeep Madurange</name></author><summary type="html"><![CDATA[This post is about programming bare metal SAM3X8E Arm Cortex M3 chips found on Arduino Due boards. I had to learn how to do this because none of the high-level tools for programming Arduino Dues are available for OpenBSD, which I use for much of my personal computing.]]></summary></entry></feed> \ No newline at end of file
+<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator><link href="http://localhost:4000/feed.xml" rel="self" type="application/atom+xml" /><link href="http://localhost:4000/" rel="alternate" type="text/html" /><updated>2025-11-02T22:31:07+08:00</updated><id>http://localhost:4000/feed.xml</id><title type="html">ASCIIMX | Archive</title><author><name>Wickramage Don Sadeep Madurange</name></author><entry><title type="html">Unix-like operating systems</title><link href="http://localhost:4000/archive/desktop-unix/" rel="alternate" type="text/html" title="Unix-like operating systems" /><published>2025-09-21T00:00:00+08:00</published><updated>2025-09-21T00:00:00+08:00</updated><id>http://localhost:4000/archive/desktop-unix</id><author><name>Wickramage Don Sadeep Madurange</name></author><summary type="html"><![CDATA[The Unix operating system project appears to have started in 1969 at Bell Labs. Something resembling contemporary Unix-like systems may have been developed in 1973 when Dennis Ritchie and Ken Thompson rewrote the Unix kernel in C. Both of these important milestones, unfortunately, predate me by a number of years.]]></summary></entry><entry><title type="html">Neo4J A* search</title><link href="http://localhost:4000/archive/neo4j-a-star-search/" rel="alternate" type="text/html" title="Neo4J A* search" /><published>2025-09-14T00:00:00+08:00</published><updated>2025-09-14T00:00:00+08:00</updated><id>http://localhost:4000/archive/neo4j-a-star-search</id><author><name>Wickramage Don Sadeep Madurange</name></author><summary type="html"><![CDATA[Back in 2018, we used the Neo4J graph database to track the movement of marine vessels. We were interested in the shortest path a ship could take through a network of about 13,000 route points. Performance issues with Neo4J’s shortest-path algorithms limited our search to about 4,000 route points.]]></summary></entry><entry><title type="html">MOSFETs</title><link href="http://localhost:4000/archive/mosfet-switches/" rel="alternate" type="text/html" title="MOSFETs" /><published>2025-06-22T00:00:00+08:00</published><updated>2025-06-22T00:00:00+08:00</updated><id>http://localhost:4000/archive/mosfet-switches</id><author><name>Wickramage Don Sadeep Madurange</name></author><summary type="html"><![CDATA[Recently, I needed a low-power circuit for one of my battery-operated projects. Much of the system’s power savings depended on its ability to switch off power to components, such as servos, electronically when not needed. That’s how I stumbled upon MOSFETs, transistors capable of controlling circuits operating at voltages far above their own.]]></summary></entry><entry><title type="html">Awesome books</title><link href="http://localhost:4000/archive/awesome-books/" rel="alternate" type="text/html" title="Awesome books" /><published>2025-04-20T00:00:00+08:00</published><updated>2025-04-20T00:00:00+08:00</updated><id>http://localhost:4000/archive/awesome-books</id><author><name>Wickramage Don Sadeep Madurange</name></author><summary type="html"><![CDATA[This article contains a list of my favourite books.]]></summary></entry><entry><title type="html">Programming ATmega328P chips</title><link href="http://localhost:4000/archive/arduino-uno/" rel="alternate" type="text/html" title="Programming ATmega328P chips" /><published>2025-04-10T00:00:00+08:00</published><updated>2025-04-10T00:00:00+08:00</updated><id>http://localhost:4000/archive/arduino-uno</id><author><name>Wickramage Don Sadeep Madurange</name></author><summary type="html"><![CDATA[This post is a step-by-step guide for wiring up ATmega328P ICs to run at 5V with a 16MHz crystal and 3.3V with an 8MHz crystal. While the 5V configuration is common, the 3.3V configuration can be advantageous in low-power applications and when interfacing with parts that run at 3.3V.]]></summary></entry><entry><title type="html">Bare-metal ARM Cortex M3 chips</title><link href="http://localhost:4000/archive/arduino-due/" rel="alternate" type="text/html" title="Bare-metal ARM Cortex M3 chips" /><published>2024-10-05T00:00:00+08:00</published><updated>2024-10-05T00:00:00+08:00</updated><id>http://localhost:4000/archive/arduino-due</id><author><name>Wickramage Don Sadeep Madurange</name></author><summary type="html"><![CDATA[This post is about programming bare metal SAM3X8E Arm Cortex M3 chips found on Arduino Due boards. I had to learn how to do this because none of the high-level tools for programming Arduino Dues are available for OpenBSD, which I use for much of my personal computing.]]></summary></entry></feed> \ No newline at end of file
diff --git a/_site/posts.xml b/_site/posts.xml
index 0a030cd..b98a4ca 100644
--- a/_site/posts.xml
+++ b/_site/posts.xml
@@ -1 +1 @@
-<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator><link href="http://localhost:4000/posts.xml" rel="self" type="application/atom+xml" /><link href="http://localhost:4000/" rel="alternate" type="text/html" /><updated>2025-11-02T20:52:16+08:00</updated><id>http://localhost:4000/posts.xml</id><title type="html">ASCIIMX</title><author><name>Wickramage Don Sadeep Madurange</name></author></feed> \ No newline at end of file
+<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator><link href="http://localhost:4000/posts.xml" rel="self" type="application/atom+xml" /><link href="http://localhost:4000/" rel="alternate" type="text/html" /><updated>2025-11-02T22:31:07+08:00</updated><id>http://localhost:4000/posts.xml</id><title type="html">ASCIIMX</title><author><name>Wickramage Don Sadeep Madurange</name></author></feed> \ No newline at end of file