summaryrefslogtreecommitdiff
path: root/gemfeed
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2022-08-28 09:53:17 +0100
committerPaul Buetow <paul@buetow.org>2022-08-28 09:53:17 +0100
commit1a1ad2c9039ab091c2e771592cd875a233e3a940 (patch)
tree585ba5ff42f84e38a63ce041dbb213eaa91d73d5 /gemfeed
parent74157ee7cf410532a1606795c8642120a386bb8d (diff)
restructure
Diffstat (limited to 'gemfeed')
-rw-r--r--gemfeed/2008-06-26-perl-poetry.gmi6
-rw-r--r--gemfeed/2008-12-29-using-my-nokia-n95-for-fixing-my-mta.gmi6
-rw-r--r--gemfeed/2010-04-09-standard-ml-and-haskell.gmi2
-rw-r--r--gemfeed/2010-05-07-lazy-evaluation-with-standarn-ml.gmi6
-rw-r--r--gemfeed/2010-05-09-the-fype-programming-language.gmi6
-rw-r--r--gemfeed/2011-05-07-perl-daemon-service-framework.gmi6
-rw-r--r--gemfeed/2014-03-24-the-fibonacci.pl.c-polyglot.gmi2
-rw-r--r--gemfeed/2015-12-05-run-debian-on-your-phone-with-debroid.gmi6
-rw-r--r--gemfeed/2016-04-03-offsite-backup-with-zfs.gmi6
-rw-r--r--gemfeed/2016-04-09-jails-and-zfs-on-freebsd-with-puppet.gmi6
-rw-r--r--gemfeed/2016-04-16-offsite-backup-with-zfs-part2.gmi6
-rw-r--r--gemfeed/2016-05-22-spinning-up-my-own-authoritative-dns-servers.gmi2
-rw-r--r--gemfeed/2016-11-20-object-oriented-programming-with-ansi-c.gmi6
-rw-r--r--gemfeed/2018-06-01-realistic-load-testing-with-ioriot-for-linux.gmi6
-rw-r--r--gemfeed/2021-04-22-dtail-the-distributed-log-tail-program.gmi2
-rw-r--r--gemfeed/2021-04-24-welcome-to-the-geminispace.gmi2
-rw-r--r--gemfeed/2021-05-16-personal-bash-coding-style-guide.gmi6
-rw-r--r--gemfeed/2021-06-05-gemtexter-one-bash-script-to-rule-it-all.gmi6
-rw-r--r--gemfeed/2021-07-04-the-well-grounded-rubyist.gmi2
-rw-r--r--gemfeed/2021-08-01-on-being-pedantic-about-open-source.gmi10
-rw-r--r--gemfeed/2021-09-12-keep-it-simple-and-stupid.gmi8
-rw-r--r--gemfeed/2021-10-22-defensive-devops.gmi6
-rw-r--r--gemfeed/2021-11-29-bash-golf-part-1.gmi8
-rw-r--r--gemfeed/2021-12-26-how-to-stay-sane-as-a-devops-person.gmi6
-rw-r--r--gemfeed/2022-01-01-bash-golf-part-2.gmi6
-rw-r--r--gemfeed/2022-01-23-welcome-to-the-foo.zone.gmi6
-rw-r--r--gemfeed/2022-02-04-computer-operating-systems-i-use.gmi6
-rw-r--r--gemfeed/2022-03-06-the-release-of-dtail-4.0.0.gmi6
-rw-r--r--gemfeed/2022-04-10-creative-universe.gmi6
-rw-r--r--gemfeed/2022-05-27-perl-is-still-a-great-choice.gmi6
-rw-r--r--gemfeed/2022-06-15-sweating-the-small-stuff.gmi6
-rw-r--r--gemfeed/2022-07-30-lets-encrypt-with-openbsd-and-rex.gmi6
-rw-r--r--gemfeed/2022-08-27-gemtexter-1.1.0-lets-gemtext-again.gmi2
33 files changed, 92 insertions, 86 deletions
diff --git a/gemfeed/2008-06-26-perl-poetry.gmi b/gemfeed/2008-06-26-perl-poetry.gmi
index f79fa803..164da589 100644
--- a/gemfeed/2008-06-26-perl-poetry.gmi
+++ b/gemfeed/2008-06-26-perl-poetry.gmi
@@ -1,5 +1,7 @@
# Perl Poetry
+> Published by Paul at 2008-06-26, last updated at 2021-05-04
+
```
'\|/' *
-- * -----
@@ -23,8 +25,6 @@ _~~|~/_|_|__/|~~~~~~~ | / ~~~~~ | | ~~~~~~~~
(__) (____)
```
-> Published by Paul at 2008-06-26, last updated at 2021-05-04
-
Here are some Perl Poems I wrote. They don't do anything useful when you run them, but they don't produce a compiler error either. They only exist for fun and demonstrate what you can do with Perl syntax.
Wikipedia: "Perl poetry is the practice of writing poems that can be compiled as legal Perl code, for example the piece known as Black Perl. Perl poetry is made possible by the large number of English words that are used in the Perl language. New poems are regularly submitted to the community at PerlMonks."
@@ -161,6 +161,6 @@ Did you like what you saw? Have a look at Codeberg to see my other poems too:
=> https://codeberg.org/snonux/perl-poetry
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2008-12-29-using-my-nokia-n95-for-fixing-my-mta.gmi b/gemfeed/2008-12-29-using-my-nokia-n95-for-fixing-my-mta.gmi
index 635a1290..32ffbf0c 100644
--- a/gemfeed/2008-12-29-using-my-nokia-n95-for-fixing-my-mta.gmi
+++ b/gemfeed/2008-12-29-using-my-nokia-n95-for-fixing-my-mta.gmi
@@ -1,5 +1,7 @@
# Using my Nokia N95 for fixing my MTA
+> Published by Paul at 2008-12-29, last updated at 2021-12-01
+
```
_
@@ -17,8 +19,6 @@ _jgs_\|//_\\|///_\V/_\|//__
Art by Joan Stark
```
-> Published by Paul at 2008-12-29, last updated at 2021-12-01
-
The last week I was in Vidin, Bulgaria with no internet access and I had to fix my MTA (Postfix) at host.0.buetow.org which serves E-Mail for all my customers at P. B. Labs. Good, that I do not guarantee high availability on my web services (I've to do a full time job somewhere else too).
My first attempt to find an internet café, which was working during Christmastime, failed. However, I found with my N95 phone lots of free WLAN hotspots. The hotspots refused me logging into my server using SSH as I have configured a non-standard port for SSH for security reasons. Without knowing the costs, I used the GPRS internet access of my German phone provider (yes, I had to pay roaming fees).
@@ -36,6 +36,6 @@ It was a pain in the ass. My next mobile phone MUST have a full QWERTY keyboard.
At the moment I am in Sofia, Bulgaria. Here I can use at least an unprotected WLAN hotspot which belongs to one of the neighbours which I don’t know in person, and it is not blocking any port at all :)
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2010-04-09-standard-ml-and-haskell.gmi b/gemfeed/2010-04-09-standard-ml-and-haskell.gmi
index 5adda706..d86dbb0a 100644
--- a/gemfeed/2010-04-09-standard-ml-and-haskell.gmi
+++ b/gemfeed/2010-04-09-standard-ml-and-haskell.gmi
@@ -169,6 +169,6 @@ fun my_filter f l = foldr (make_filter_fn f) [] l
my_filter f l = foldr (make_filter_fn f) [] l
```
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2010-05-07-lazy-evaluation-with-standarn-ml.gmi b/gemfeed/2010-05-07-lazy-evaluation-with-standarn-ml.gmi
index 7bdfc8a0..6da57b56 100644
--- a/gemfeed/2010-05-07-lazy-evaluation-with-standarn-ml.gmi
+++ b/gemfeed/2010-05-07-lazy-evaluation-with-standarn-ml.gmi
@@ -1,5 +1,7 @@
# Lazy Evaluation with Standard ML
+> Published by Paul at 2010-05-07
+
```
_____|~~\_____ _____________
@@ -13,8 +15,6 @@
`||||
```
-> Published by Paul at 2010-05-07
-
In contrast to Haskell, Standard SML does not use lazy evaluation by default but an eager evaluation.
=> https://en.wikipedia.org/wiki/Eager_evaluation
@@ -97,6 +97,6 @@ first 10 nat_pairs_not_null
=> http://www.haskell.org/
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2010-05-09-the-fype-programming-language.gmi b/gemfeed/2010-05-09-the-fype-programming-language.gmi
index 09cb266a..cf700252 100644
--- a/gemfeed/2010-05-09-the-fype-programming-language.gmi
+++ b/gemfeed/2010-05-09-the-fype-programming-language.gmi
@@ -1,5 +1,7 @@
# The Fype Programming Language
+> Published by Paul at 2010-05-09, last updated at 2021-05-05
+
```
____ _ __
/ / _|_ _ _ __ ___ _ _ ___ __ _| |__ / _|_ _
@@ -9,8 +11,6 @@
|___/|_| |___/ |___/
```
-> Published by Paul at 2010-05-09, last updated at 2021-05-05
-
Fype is an interpreted programming language created by me for learning and fun. The interpreter is written in C. It has been tested on FreeBSD and NetBSD and may also work on other Unix like operating systems such as Linux based ones. Besides learning and fun, there is no other use case of why Fype exists as many other programming languages are much faster and more powerful.
The Fype syntax is straightforward and uses a maximum look ahead of 1 and an effortless top-down parsing mechanism. Fype is parsing and interpreting its code simultaneously. This means that syntax errors are only detected during program runtime.
@@ -505,6 +505,6 @@ You can find all of this on the GitHub page. There is also an "examples" folders
=> https://codeberg.org/snonux/fype
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2011-05-07-perl-daemon-service-framework.gmi b/gemfeed/2011-05-07-perl-daemon-service-framework.gmi
index 92feacbf..c6b43558 100644
--- a/gemfeed/2011-05-07-perl-daemon-service-framework.gmi
+++ b/gemfeed/2011-05-07-perl-daemon-service-framework.gmi
@@ -1,5 +1,7 @@
# Perl Daemon (Service Framework)
+> Published by Paul at 2011-05-07, last updated at 2021-05-07
+
```
a'! _,,_ a'! _,,_ a'! _,,_
\\_/ \ \\_/ \ \\_/ \.-,
@@ -7,8 +9,6 @@
//\ //\\ //\ //\\ //\ //\\jrei
```
-> Published by Paul at 2011-05-07, last updated at 2021-05-07
-
PerlDaemon is a minimal daemon for Linux and other Unix like operating systems programmed in Perl. It is a minimal but pretty functional and fairly generic service framework. This means that it does not do anything useful other than providing a framework for starting, stopping, configuring and logging. To do something useful, a module (written in Perl) must be provided.
## Features
@@ -158,6 +158,6 @@ You can find PerlDaemon (including the examples) at:
=> https://codeberg.org/snonux/perldaemon
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2014-03-24-the-fibonacci.pl.c-polyglot.gmi b/gemfeed/2014-03-24-the-fibonacci.pl.c-polyglot.gmi
index 3fe85a38..dbc1158d 100644
--- a/gemfeed/2014-03-24-the-fibonacci.pl.c-polyglot.gmi
+++ b/gemfeed/2014-03-24-the-fibonacci.pl.c-polyglot.gmi
@@ -138,6 +138,6 @@ fib(10) = 55
It's entertaining to play with :-).
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2015-12-05-run-debian-on-your-phone-with-debroid.gmi b/gemfeed/2015-12-05-run-debian-on-your-phone-with-debroid.gmi
index 97fa612f..c2de4368 100644
--- a/gemfeed/2015-12-05-run-debian-on-your-phone-with-debroid.gmi
+++ b/gemfeed/2015-12-05-run-debian-on-your-phone-with-debroid.gmi
@@ -1,5 +1,7 @@
# Run Debian on your phone with Debroid
+> Published by Paul at 2015-12-05, last updated at 2021-05-16
+
```
____ _ _ _
| _ \ ___| |__ _ __ ___ (_) __| |
@@ -9,8 +11,6 @@
```
-> Published by Paul at 2015-12-05, last updated at 2021-05-16
-
You can use the following tutorial to install a full-blown Debian GNU/Linux Chroot on an LG G3 D855 CyanogenMod 13 (Android 6). First of all, you need to have root permissions on your phone, and you also need to have the developer mode activated. The following steps have been tested on Linux (Fedora 23).
=> ./2015-12-05-run-debian-on-your-phone-with-debroid/Deboroid.png
@@ -175,6 +175,6 @@ exit
Reboot & test! Enjoy!
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2016-04-03-offsite-backup-with-zfs.gmi b/gemfeed/2016-04-03-offsite-backup-with-zfs.gmi
index f631c54b..87ca3d85 100644
--- a/gemfeed/2016-04-03-offsite-backup-with-zfs.gmi
+++ b/gemfeed/2016-04-03-offsite-backup-with-zfs.gmi
@@ -1,5 +1,7 @@
# Offsite backup with ZFS
+> Published by Paul at 2016-04-03
+
```
________________
|# : : #|
@@ -13,8 +15,6 @@
\____||__|_____|__|
```
-> Published by Paul at 2016-04-03
-
=> ./2016-04-03-offsite-backup-with-zfs.gmi Offsite backup with ZFS Part 1 (you are reading this atm.)
=> ./2016-04-16-offsite-backup-with-zfs-part2.gmi Offsite backup with ZFS Part 2
@@ -40,6 +40,6 @@ The solution is adding another USB drive (2TB) with an encryption container (GEL
I am thinking of buying a second 2TB USB drive and setting it up the same way as the first one. So I could alternate the backups. One drive would be at the secret location, and the other drive would be at home. And these drives would swap place after each cycle. This would give some security about the failure of that drive, and I would have to go to the secret location only once (swapping the drives) instead of twice (picking that drive up to update the data + bringing it back to the remote location).
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2016-04-09-jails-and-zfs-on-freebsd-with-puppet.gmi b/gemfeed/2016-04-09-jails-and-zfs-on-freebsd-with-puppet.gmi
index 5ccfc3a6..6387c977 100644
--- a/gemfeed/2016-04-09-jails-and-zfs-on-freebsd-with-puppet.gmi
+++ b/gemfeed/2016-04-09-jails-and-zfs-on-freebsd-with-puppet.gmi
@@ -1,5 +1,7 @@
# Jails and ZFS with Puppet on FreeBSD
+> Published by Paul at 2016-04-09
+
```
__ __
(( \---/ ))
@@ -20,8 +22,6 @@
\ `.
```
-> Published by Paul at 2016-04-09
-
Over the last couple of years I wrote quite a few Puppet modules in order to manage my personal server infrastructure. One of them manages FreeBSD Jails and another one ZFS file systems. I thought I would give a brief overview in how it looks and feels.
## ZFS
@@ -385,6 +385,6 @@ Of course I am operating multiple Jails on the same host this way with Puppet:
All done in a pretty automated manor.
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2016-04-16-offsite-backup-with-zfs-part2.gmi b/gemfeed/2016-04-16-offsite-backup-with-zfs-part2.gmi
index 8c5c2126..b2a42e24 100644
--- a/gemfeed/2016-04-16-offsite-backup-with-zfs-part2.gmi
+++ b/gemfeed/2016-04-16-offsite-backup-with-zfs-part2.gmi
@@ -1,5 +1,7 @@
# Offsite backup with ZFS (Part 2)
+> Published by Paul at 2016-04-16
+
```
________________
|# : : #|
@@ -15,8 +17,6 @@
\____||__|_____|__|
```
-> Published by Paul at 2016-04-16
-
=> ./2016-04-03-offsite-backup-with-zfs.gmi Offsite backup with ZFS Part 1
=> ./2016-04-16-offsite-backup-with-zfs-part2.gmi Offsite backup with ZFS Part 2 (you are reading this atm.)
@@ -26,6 +26,6 @@ Whenever I update the offsite backup, I am doing it to the drive, which is kept
Furthermore, I added scrubbing ("zpool scrub...") to the script. It ensures that the file system is consistent and that there are no bad blocks on the disk and the file system. To increase the reliability, I also run a "zfs set copies=2 zroot". That setting is also synchronized to the offsite ZFS pool. ZFS stores every data block to disk twice now. Yes, it consumes twice as much disk space, making it better fault-tolerant against hardware errors (e.g. only individual disk sectors going bad).
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2016-05-22-spinning-up-my-own-authoritative-dns-servers.gmi b/gemfeed/2016-05-22-spinning-up-my-own-authoritative-dns-servers.gmi
index d0ee14bd..581c56bc 100644
--- a/gemfeed/2016-05-22-spinning-up-my-own-authoritative-dns-servers.gmi
+++ b/gemfeed/2016-05-22-spinning-up-my-own-authoritative-dns-servers.gmi
@@ -234,6 +234,6 @@ Whenever I have to change a DNS entry, all I have to do is:
That's much more comfortable now than manually clicking at some web UIs at Schlund Technologies.
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2016-11-20-object-oriented-programming-with-ansi-c.gmi b/gemfeed/2016-11-20-object-oriented-programming-with-ansi-c.gmi
index b320e4ca..024809c3 100644
--- a/gemfeed/2016-11-20-object-oriented-programming-with-ansi-c.gmi
+++ b/gemfeed/2016-11-20-object-oriented-programming-with-ansi-c.gmi
@@ -1,5 +1,7 @@
# Object oriented programming with ANSI C
+> Published by Paul at 2016-11-20, updated 2022-01-29
+
```
___ ___ ____ ____
/ _ \ / _ \| _ \ / ___|
@@ -9,8 +11,6 @@
```
-> Published by Paul at 2016-11-20, updated 2022-01-29
-
You can do a little of object-oriented programming in the C Programming Language. However, that is, in my humble opinion, limited. It's easier to use a different programming language than C for OOP. But still it's an interesting exercise to try using C for this.
## Function pointers
@@ -98,6 +98,6 @@ Big C software projects, like Linux, also follow some OOP techniques:
C is a very old programming language with it's quirks. This might be one of the reasons why Linux will also let Rust code in.
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2018-06-01-realistic-load-testing-with-ioriot-for-linux.gmi b/gemfeed/2018-06-01-realistic-load-testing-with-ioriot-for-linux.gmi
index 7cf16c9b..806e6cab 100644
--- a/gemfeed/2018-06-01-realistic-load-testing-with-ioriot-for-linux.gmi
+++ b/gemfeed/2018-06-01-realistic-load-testing-with-ioriot-for-linux.gmi
@@ -1,5 +1,7 @@
# Realistic load testing with I/O Riot for Linux
+> Published by Paul at 2018-06-01, last updated at 2021-05-08
+
```
.---.
/ \
@@ -11,8 +13,6 @@
jgs\__/'---'\__/
```
-> Published by Paul at 2018-06-01, last updated at 2021-05-08
-
## Foreword
This text first was published in the german IT-Administrator computer Magazine. 3 years have passed since and I decided to publish it on my blog too.
@@ -186,6 +186,6 @@ For example, the open syscall opens a file and returns the responsible file desc
=> https://graphiteapp.org Graphite
=> https://en.wikipedia.org/wiki/Memory-mapped_I/O Memory mapped I/O
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2021-04-22-dtail-the-distributed-log-tail-program.gmi b/gemfeed/2021-04-22-dtail-the-distributed-log-tail-program.gmi
index 243a3dcc..d0cd04f6 100644
--- a/gemfeed/2021-04-22-dtail-the-distributed-log-tail-program.gmi
+++ b/gemfeed/2021-04-22-dtail-the-distributed-log-tail-program.gmi
@@ -103,6 +103,6 @@ Mimecast highly encourages you to have a look at DTail and submit an issue for a
=> https://dtail.dev
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2021-04-24-welcome-to-the-geminispace.gmi b/gemfeed/2021-04-24-welcome-to-the-geminispace.gmi
index e13e296c..64295bc9 100644
--- a/gemfeed/2021-04-24-welcome-to-the-geminispace.gmi
+++ b/gemfeed/2021-04-24-welcome-to-the-geminispace.gmi
@@ -76,6 +76,6 @@ Check out one of the following links for more information about Gemini. For exam
=> gemini://gemini.circumlunar.space
=> https://gemini.circumlunar.space
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2021-05-16-personal-bash-coding-style-guide.gmi b/gemfeed/2021-05-16-personal-bash-coding-style-guide.gmi
index 6e3e26be..7e693b70 100644
--- a/gemfeed/2021-05-16-personal-bash-coding-style-guide.gmi
+++ b/gemfeed/2021-05-16-personal-bash-coding-style-guide.gmi
@@ -1,5 +1,7 @@
# Personal Bash coding style guide
+> Published by Paul at 2021-05-16
+
```
.---------------------------.
/,--..---..---..---..---..--. `.
@@ -13,8 +15,6 @@
"\__/"---------------"\__/"-+---+'
```
-> Published by Paul at 2021-05-16
-
Lately, I have been polishing and writing a lot of Bash code. Not that I never wrote a lot of Bash, but now as I also looked through the Google Shell Style Guide, I thought it is time also to write my thoughts on that. I agree with that guide in most, but not in all points.
=> https://google.github.io/styleguide/shellguide.html Google Shell Style Guide
@@ -380,6 +380,6 @@ I also highly recommend having a read through the "Advanced Bash-Scripting Guide
=> https://tldp.org/LDP/abs/html/ Advanced Bash-Scripting Guide
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2021-06-05-gemtexter-one-bash-script-to-rule-it-all.gmi b/gemfeed/2021-06-05-gemtexter-one-bash-script-to-rule-it-all.gmi
index f44e7337..e3e4f73e 100644
--- a/gemfeed/2021-06-05-gemtexter-one-bash-script-to-rule-it-all.gmi
+++ b/gemfeed/2021-06-05-gemtexter-one-bash-script-to-rule-it-all.gmi
@@ -1,5 +1,7 @@
# Gemtexter - One Bash script to rule it all
+> Published by Paul at 2021-06-05
+
```
o .,<>., o
|\/\/\/\/|
@@ -41,8 +43,6 @@
`+a:f:......jrei'''
```
-> Published by Paul at 2021-06-05
-
You might have read my previous blog post about entering the Geminispace, where I pointed out the benefits of having and maintaining an internet presence there. This whole site (the blog and all other pages) is composed in the Gemtext markup language.
=> ./2021-04-24-welcome-to-the-geminispace.gmi Welcome to the Geminispace
@@ -166,6 +166,6 @@ It was quite a lot of fun writing Gemtexter. It's a relatively small project, bu
I finally revamped my personal internet site and started to blog again. I wanted the result to be exactly how it is now: A slightly retro-inspired internet site built for fun with unconventional tools.
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2021-07-04-the-well-grounded-rubyist.gmi b/gemfeed/2021-07-04-the-well-grounded-rubyist.gmi
index 8a568e5c..fb8ca294 100644
--- a/gemfeed/2021-07-04-the-well-grounded-rubyist.gmi
+++ b/gemfeed/2021-07-04-the-well-grounded-rubyist.gmi
@@ -102,6 +102,6 @@ I liked this book so much so that I even bought myself a (used) paper copy of it
Will I abandon my beloved Perl? Probably not. There are also some Perl scripts I use at work. But unfortunately I only have a limited amount of time and I have to use it wisely. I might look into Raku (formerly known as Perl 6) next year and use it for a personal pet project, who knows. :-). I also highly recommend reading the two Perl books "Modern Perl" and "Higher-Order Perl".
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2021-08-01-on-being-pedantic-about-open-source.gmi b/gemfeed/2021-08-01-on-being-pedantic-about-open-source.gmi
index 96583f64..b02c2f57 100644
--- a/gemfeed/2021-08-01-on-being-pedantic-about-open-source.gmi
+++ b/gemfeed/2021-08-01-on-being-pedantic-about-open-source.gmi
@@ -1,5 +1,7 @@
# On being Pedantic about Open-Source
+> Published by Paul at 2021-08-01
+
```
__
_____....--' .'
@@ -12,8 +14,6 @@
'^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' LGB - Art by lgbearrd
```
-> Published by Paul at 2021-08-01
-
I believe that it is essential to always have free and open-source alternatives to any kind of closed-source proprietary software available to choose from. But there are a couple of points you need to take into consideration.
## The costs of open-source
@@ -56,7 +56,9 @@ Security bugs in open-source projects are exposed to the public and fixed quickl
## Always watch out for open-source alternatives
-Do you need Microsoft Word? Why don't you just use the Vim text editor or GNU Emacs to write your letters? If that's too nerdy, you can still use open-source alternatives such as AbiWord or LibreOffice. Larger organizations have the tendency to standardize the software their employees have to use. Unfortunately, as Microsoft Word is the de-facto standard text processing program, most companies prefer Word over LibreOffice. Same with Microsoft Excel vs LibreOffice Calc or other spreadsheet alternatives like Gnumeric. I don't know why that is; please E-Mail me, and I will update this blog article. I guess the devil lies in the detail here.
+Do you need Microsoft Word? Why don't you just use the Vim text editor or GNU Emacs to write your letters? If that's too nerdy, you can still use open-source alternatives such as AbiWord or LibreOffice. Larger organizations have the tendency to standardize the software their employees have to use. Unfortunately, as Microsoft Word is the de-facto standard text processing program, most companies prefer Word over LibreOffice. Same with Microsoft Excel vs LibreOffice Calc or other spreadsheet alternatives like Gnumeric. I don't know why that is; please....
+
+=> gemini://paul.buetow.org E-Mail me your comments :-)
I only use free and open-source operating systems on my personal Laptops, Desktop PCs and servers (FreeBSD and Linux based ones). Most of the programs and apps I use on them are free and open-source as well, and I am comfortable with it for over twenty years. Exceptions are the BIOSes and some firmwares of my devices. I also use Skype as most of my friends and family are using it. They are, unfortunately, proprietary software still. But I will be looking into Matrix as a Skype alternative when I have time. There are also open BIOS alternatives, but they usually don't work on my devices.
@@ -108,6 +110,6 @@ Should you be pedantic about open-source software? It depends. It depends on you
You have better chances when you know how to manage your own server and install and manage alternatives to the big cloud providers by yourself. I have the advantage that I have work experience as a Linux Systems Administrator here. I mentioned NextCloud already. I use NextCloud for online photo and file storage, contact and calendar sync and as an RSS news feed server. You could do the same with your own E-Mail server, you can also host your own website and blog. I also mentioned Matrix as a Skype alternative (which could also be an alternative to WhatsApp, Skype, Telegram, Viber, ...). I don't know a lot about Matrix yet, but it seems to be a very neat alternative. I am ready to invest time in it as one of my future personal pet projects. Not only because I think it's better, but also because for fun and as a hobby. But this doesn't mean that I invest *all* of my personal free time in it.
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2021-09-12-keep-it-simple-and-stupid.gmi b/gemfeed/2021-09-12-keep-it-simple-and-stupid.gmi
index ce17b016..215b7368 100644
--- a/gemfeed/2021-09-12-keep-it-simple-and-stupid.gmi
+++ b/gemfeed/2021-09-12-keep-it-simple-and-stupid.gmi
@@ -1,5 +1,7 @@
# Keep it simple and stupid
+> Published by Paul at 2021-09-12, last updated at 2022-04-21
+
```
_______________ |*\_/*|_______
| ___________ | .-. .-. ||_/-\_|______ |
@@ -15,8 +17,6 @@
-------------------- --------------------
```
-> Published by Paul at 2021-09-12, last updated at 2022-04-21
-
A robust computer system must be kept simple and stupid (KISS). The fancier the system is, the more can break. Unfortunately, most systems tend to become complex and challenging to maintain in today's world. In the early days, so I was told, engineers understood every part of the system, but nowadays, we see more of the "lasagna" stack. One layer or framework is built on top of another layer, and in the end, nobody has got a clue what's going on.
# Need faster hardware
@@ -91,7 +91,9 @@ There is, however, a trap. The more you spend time with things, the more these t
=> https://unixsheikh.com/articles/is-the-madness-ever-going-to-end.html Is the madness ever going to end?
-Enough ranted for now :-). E-Mail me your comments to paul at buetow dot org!
+Enough ranted for now!
+
+=> gemini://paul.buetow.org E-Mail me your comments :-)
> Controversially, a lack of features is a feature. Enjoy your peace an quiet. - Michael W Lucas
diff --git a/gemfeed/2021-10-22-defensive-devops.gmi b/gemfeed/2021-10-22-defensive-devops.gmi
index 7dfeba41..54ca01f8 100644
--- a/gemfeed/2021-10-22-defensive-devops.gmi
+++ b/gemfeed/2021-10-22-defensive-devops.gmi
@@ -1,5 +1,7 @@
# Defensive DevOps
+> Published by Paul at 2021-10-22
+
```
c=====e
H
@@ -10,8 +12,6 @@
ASCII Art by Clyde Watson
```
-> Published by Paul at 2021-10-22
-
I have seen many different setups and infrastructures during my carreer. My roles always included front-line ad-hoc fire fighting production issues. This often involves identifying and fixing these under time pressure, without the comfort of 2-week-long SCRUM sprints and without an exhaustive QA process. I also wrote a lot of code (Bash, Ruby, Perl, Go, and a little Java), and I followed the typical software development process, but that did not always apply to critical production issues.
Unfortunately, no system is 100% reliable, and you can never be prepared for a subset of the possible problem-space. IT infrastructures can be complex. Not even mentioning Kubernetes yet, a Microservice-based infrastructure can complicate things even further. You can take care of 99% of all potential problems by following all DevOps best practices. Those best practices are not the subject of this blog post; this post is about the sub 1% of the issues arising from nowhere you can't be prepared for.
@@ -99,6 +99,6 @@ For every major incident, you need to follow up with an incident retrospective.
This usually means creating one or more tickets, which will be dealt with soon. Once the permanent fix is deployed, you can remove your ad-hoc automation and monitoring around it and focus on your regular work again.
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2021-11-29-bash-golf-part-1.gmi b/gemfeed/2021-11-29-bash-golf-part-1.gmi
index a22b2597..c53925a7 100644
--- a/gemfeed/2021-11-29-bash-golf-part-1.gmi
+++ b/gemfeed/2021-11-29-bash-golf-part-1.gmi
@@ -1,5 +1,7 @@
# Bash Golf Part 1
+> Published by Paul at 2021-11-29, last updated at 2022-01-05
+
```
'\ . . |>18>>
@@ -12,8 +14,6 @@ jgs^^^^^^^`^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Art by Joan Stark
```
-> Published by Paul at 2021-11-29, last updated at 2022-01-05
-
This is the first blog post about my Bash Golf series. This series is about random Bash tips, tricks and weirdnesses I came across. It's a collection of smaller articles I wrote in an older (in German language) blog, which I translated and refreshed with some new content.
=> ./2021-11-29-bash-golf-part-1.gmi Bash Golf Part 1 (you are reading this atm.)
@@ -461,6 +461,8 @@ In the Bash you will have to fall back to an external command like "bc" (the arb
.10
```
-See you later for the next post of this series. E-Mail me your comments to paul at buetow dot org!
+See you later for the next post of this series.
+
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2021-12-26-how-to-stay-sane-as-a-devops-person.gmi b/gemfeed/2021-12-26-how-to-stay-sane-as-a-devops-person.gmi
index 0fc5d755..f9a279c4 100644
--- a/gemfeed/2021-12-26-how-to-stay-sane-as-a-devops-person.gmi
+++ b/gemfeed/2021-12-26-how-to-stay-sane-as-a-devops-person.gmi
@@ -1,5 +1,7 @@
# How to stay sane as a DevOps person
+> Published by Paul at 2021-12-26, last updated at 2022-01-12
+
```
)
) (( (
@@ -22,8 +24,6 @@
~~~~~'
```
-> Published by Paul at 2021-12-26, last updated at 2022-01-12
-
Log4shell (CVE-2021-44228) made it clear, once again, that working in information technology is not an easy job (especially when you are a DevOps person). I thought it would be interesting to summarize a few techniques to help you to relax.
(PS: When I mean DevOps, I also mean Site Reliability Engineers and Sysadmins. I believe SRE, DevOps Engineer and Sysadmin are just synonym titles for the same job).
@@ -123,6 +123,6 @@ Another blog post worth reading:
=> https://unixsheikh.com/articles/how-to-stay-sane-in-todays-world-of-tech.html
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2022-01-01-bash-golf-part-2.gmi b/gemfeed/2022-01-01-bash-golf-part-2.gmi
index ff4f595d..6d9e4ce1 100644
--- a/gemfeed/2022-01-01-bash-golf-part-2.gmi
+++ b/gemfeed/2022-01-01-bash-golf-part-2.gmi
@@ -1,5 +1,7 @@
# Bash Golf Part 2
+> Published by Paul at 2022-01-01, last updated at 2022-01-05
+
```
'\ '\ . . |>18>>
@@ -12,8 +14,6 @@ jgs^^^^^^^`^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Art by Joan Stark, mod. by Paul Buetow
```
-> Published by Paul at 2022-01-01, last updated at 2022-01-05
-
This is the second blog post about my Bash Golf series. This series is random Bash tips, tricks and weirdnesses I came across. It's a collection of smaller articles I wrote in an older (in German language) blog, which I translated and refreshed with some new content.
=> ./2021-11-29-bash-golf-part-1.gmi Bash Golf Part 1
@@ -480,6 +480,6 @@ To change this behaviour, pipefile can be used. Now, the pipes exit status is 1
1
```
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2022-01-23-welcome-to-the-foo.zone.gmi b/gemfeed/2022-01-23-welcome-to-the-foo.zone.gmi
index be5727a4..4e1d7990 100644
--- a/gemfeed/2022-01-23-welcome-to-the-foo.zone.gmi
+++ b/gemfeed/2022-01-23-welcome-to-the-foo.zone.gmi
@@ -1,5 +1,7 @@
# Welcome to the foo.zone
+> Published by Paul at 2022-01-23
+
```
__
/ _| ___ ___ _______ _ __ ___
@@ -9,8 +11,6 @@
```
-> Published by Paul at 2022-01-23
-
I don't count this as a real blog post, but more of an announcement (I aim to write one real post once monthly). From now on, "foo.zone" is the new address of this site. All other addresses will still forward to it and eventually (based on the traffic still going through) will be deactivated.
As you can read on Wikipedia, "foo" is, alongside to "bar" and "baz", a metasyntactic variable (you know what I mean if you are a programmer or IT person):
@@ -44,6 +44,6 @@ As a funny bit, I almost chose "foo.surf" over "foo.zone" as in "surfing this si
The host buetow.org will stay. However, not as the primary address for this site. I will keep using it for my personal internet infrastructure as well as for most of my E-Mail addresses. I used buetow.org for that over the past 10 years already anyway and that won't change any time soon. I don't know what I am going to do with snonux.de in the long run. A .de SLD (for Germany) is pretty cheap, so I might just keep it for now.
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2022-02-04-computer-operating-systems-i-use.gmi b/gemfeed/2022-02-04-computer-operating-systems-i-use.gmi
index c254edc6..effb7046 100644
--- a/gemfeed/2022-02-04-computer-operating-systems-i-use.gmi
+++ b/gemfeed/2022-02-04-computer-operating-systems-i-use.gmi
@@ -1,5 +1,7 @@
# Computer operating systems I use(d)
+> Published by Paul at 2022-02-04, updated 2022-02-18
+
```
/( )`
\ \___ / |
@@ -21,8 +23,6 @@
`--{__________) \/ "Berkeley Unix Daemon"
```
-> Published by Paul at 2022-02-04, updated 2022-02-18
-
This is a list of Operating Systems I currently use. This list is in no particular order and also will be updated over time. The very first operating system I used was MS-DOS (mainly for games) and the very first Unix like operating system I used was SuSE Linux 5.3. My first smartphone OS was Symbian on a clunky Sony Ericsson device.
## Fedora Linux
@@ -225,6 +225,6 @@ I have been using NetBSD on an old Sun Sparcstation 10 as a student. I also have
=> https://www.dragonflybsd.org/ DragonFly BSD - Fork of FreeBSD 4
=> http://wiki.postmarketos.org/wiki/Phosh Phosh (on postmarketOS) - A true Linux shell for the smartphone
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2022-03-06-the-release-of-dtail-4.0.0.gmi b/gemfeed/2022-03-06-the-release-of-dtail-4.0.0.gmi
index 75fe6ccd..3f542317 100644
--- a/gemfeed/2022-03-06-the-release-of-dtail-4.0.0.gmi
+++ b/gemfeed/2022-03-06-the-release-of-dtail-4.0.0.gmi
@@ -1,5 +1,7 @@
# The release of DTail 4.0.0
+> Published by Paul at 2022-03-06
+
```
,_---~~~~~----._
_,,_,*^____ _____``*g*\"*,
@@ -14,8 +16,6 @@
| |
```
-> Published by Paul at 2022-03-06
-
I have recently released DTail 4.0.0 and this blog post goes through all the new goodies. You can also read my previous post about DTail in case you wonder what DTail is:
=> ./2021-04-22-dtail-the-distributed-log-tail-program.gmi DTail - The distributed log tail program
@@ -294,6 +294,6 @@ Thanks!
Paul
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2022-04-10-creative-universe.gmi b/gemfeed/2022-04-10-creative-universe.gmi
index 7839daf6..6da5c250 100644
--- a/gemfeed/2022-04-10-creative-universe.gmi
+++ b/gemfeed/2022-04-10-creative-universe.gmi
@@ -1,5 +1,7 @@
# Creative universe
+> Published by Paul at 2022-04-10, last updated at 2022-04-18
+
```
. + . . . . . .
. . . *
@@ -21,8 +23,6 @@
- the universe
```
-> Published by Paul at 2022-04-10, last updated at 2022-04-18
-
## Prelude
I have been participating in an annual work-internal project contest (we call it Pet Project contest) since I moved to London and switched jobs to my current employer. I am very happy to say that I won a "silver" prize last week here 🎆. Over the last couple of years I have been a finalist in this contest six times and won some kind of prize five times. Some of my projects were also released as open source software. One had a magazine article published, and for another one I wrote an article on my employer's engineering blog. If you have followed all my posts on this blog (the one you are currently reading), then you have probably figured out what these projects were:
@@ -137,6 +137,6 @@ Relevant books I can recommend are:
* The Off Switch; Mark Cropley; Virgin Books
* Ultralearning; Scott Young; Thorsons
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2022-05-27-perl-is-still-a-great-choice.gmi b/gemfeed/2022-05-27-perl-is-still-a-great-choice.gmi
index 58485064..9b499ea6 100644
--- a/gemfeed/2022-05-27-perl-is-still-a-great-choice.gmi
+++ b/gemfeed/2022-05-27-perl-is-still-a-great-choice.gmi
@@ -1,9 +1,9 @@
# Perl is still a great choice
-=> ./2022-05-27-perl-is-still-a-great-choice/regular_expressions.png
-
> Published by Paul at 2022-05-27, Comic source: XKCD
+=> ./2022-05-27-perl-is-still-a-great-choice/regular_expressions.png
+
Perl (the Practical Extraction and Report Language) is a battle-tested, mature, multi-paradigm dynamic programming language. Note that it's not called PERL, neither P.E.R.L. nor Pearl. "Perl" is the name of the language and "perl" the name of the interpreter or the interpreter command.
Unfortunately (it makes me sad), Perl's popularity has been declining over the last years as Google trends shows:
@@ -118,7 +118,7 @@ Btw.: Did you know that the first version of PHP was a set of Perl snippets? Onl
=> https://www.perl.org
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2022-06-15-sweating-the-small-stuff.gmi b/gemfeed/2022-06-15-sweating-the-small-stuff.gmi
index 982f316d..d3987571 100644
--- a/gemfeed/2022-06-15-sweating-the-small-stuff.gmi
+++ b/gemfeed/2022-06-15-sweating-the-small-stuff.gmi
@@ -1,5 +1,7 @@
# Sweating the small stuff - Tiny projects of mine
+> Published by Paul at 2022-06-15, last updated at 2022-06-18
+
```
_
/_/_ .'''.
@@ -8,8 +10,6 @@
`..'
```
-> Published by Paul at 2022-06-15, last updated at 2022-06-18
-
This blog post is a bit different from the others. It consists of multiple but smaller projects worth mentioning. I got inspired by Julia Evan's "Tiny programs" blog post and the side projects of The Sephist, so I thought I would also write a blog posts listing a couple of small projects of mine:
=> https://jvns.ca/blog/2022/03/08/tiny-programs/ Tiny programs
@@ -323,6 +323,6 @@ If you wonder what Gemini is:
=> ./2021-04-24-welcome-to-the-geminispace.gmi Welcome to the Geminispae
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2022-07-30-lets-encrypt-with-openbsd-and-rex.gmi b/gemfeed/2022-07-30-lets-encrypt-with-openbsd-and-rex.gmi
index 8ad25513..ca7b5f0e 100644
--- a/gemfeed/2022-07-30-lets-encrypt-with-openbsd-and-rex.gmi
+++ b/gemfeed/2022-07-30-lets-encrypt-with-openbsd-and-rex.gmi
@@ -1,5 +1,7 @@
# Let's Encrypt with OpenBSD and Rex
+> Published by Paul at 2022-07-30
+
```
/ _ \
The Hebern Machine \ ." ". /
@@ -27,8 +29,6 @@
ASCII Art by John Savard
```
-> Published by Paul at 2022-07-30
-
I was amazed how easy it is to automatically generate and update Let's Encrypt certificates with OpenBSD.
## What's Let's Encrypt?
@@ -657,6 +657,6 @@ OpenBSD suits perfectly here as all the tools are already part of the base insta
I love the fact that a `Rexfile` is just a Perl DSL. Why re-inventing the wheel? Also, OpenBSD comes with Perl in the base system. So no new programming language had to be added to my mix for the configuration management system. Also, the `acme.sh` shell script is not a Bash but a standard Bourne shell script so that I didn't have to install yet another shell as OpenBSD does not come with the Bash pre-installed.
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site
diff --git a/gemfeed/2022-08-27-gemtexter-1.1.0-lets-gemtext-again.gmi b/gemfeed/2022-08-27-gemtexter-1.1.0-lets-gemtext-again.gmi
index 2fe9948f..fd7c5dd6 100644
--- a/gemfeed/2022-08-27-gemtexter-1.1.0-lets-gemtext-again.gmi
+++ b/gemfeed/2022-08-27-gemtexter-1.1.0-lets-gemtext-again.gmi
@@ -86,6 +86,6 @@ Additionally, there were a couple of bug fixes, refactorings and overall improve
Overall, it's a pretty solid `1.1.0` release without anything groundbreaking (therefore no major version jump). But I am happy about it.
-E-Mail me your comments to paul at buetow dot org!
+=> gemini://paul.buetow.org E-Mail me your comments :-)
=> ../ Go back to the main site