summaryrefslogtreecommitdiff
path: root/gemfeed
diff options
context:
space:
mode:
Diffstat (limited to 'gemfeed')
-rw-r--r--gemfeed/2008-06-26-perl-poetry.md2
-rw-r--r--gemfeed/2008-12-29-using-my-nokia-n95-for-fixing-my-mta.md2
-rw-r--r--gemfeed/2010-04-09-standard-ml-and-haskell.md2
-rw-r--r--gemfeed/2010-05-07-lazy-evaluation-with-standarn-ml.md2
-rw-r--r--gemfeed/2010-05-09-the-fype-programming-language.md2
-rw-r--r--gemfeed/2011-05-07-perl-daemon-service-framework.md2
-rw-r--r--gemfeed/2014-03-24-the-fibonacci.pl.c-polyglot.md2
-rw-r--r--gemfeed/2015-12-05-run-debian-on-your-phone-with-debroid.md2
-rw-r--r--gemfeed/2016-04-03-offsite-backup-with-zfs.md2
-rw-r--r--gemfeed/2016-04-09-jails-and-zfs-on-freebsd-with-puppet.md2
-rw-r--r--gemfeed/2016-04-16-offsite-backup-with-zfs-part2.md2
-rw-r--r--gemfeed/2016-05-22-spinning-up-my-own-authoritative-dns-servers.md2
-rw-r--r--gemfeed/2016-11-20-object-oriented-programming-with-ansi-c.md2
-rw-r--r--gemfeed/2018-06-01-realistic-load-testing-with-ioriot-for-linux.md2
-rw-r--r--gemfeed/2021-04-22-dtail-the-distributed-log-tail-program.md2
-rw-r--r--gemfeed/2021-04-24-welcome-to-the-geminispace.md2
-rw-r--r--gemfeed/2021-05-16-personal-bash-coding-style-guide.md2
-rw-r--r--gemfeed/2021-06-05-gemtexter-one-bash-script-to-rule-it-all.md2
-rw-r--r--gemfeed/2021-07-04-the-well-grounded-rubyist.md2
-rw-r--r--gemfeed/2021-08-01-on-being-pedantic-about-open-source.md4
-rw-r--r--gemfeed/2021-09-12-keep-it-simple-and-stupid.md2
-rw-r--r--gemfeed/2021-10-22-defensive-devops.md2
-rw-r--r--gemfeed/2021-11-29-bash-golf-part-1.md2
-rw-r--r--gemfeed/2021-12-26-how-to-stay-sane-as-a-devops-person.md2
-rw-r--r--gemfeed/2022-01-01-bash-golf-part-2.md2
-rw-r--r--gemfeed/2022-01-23-welcome-to-the-foo.zone.md2
-rw-r--r--gemfeed/2022-02-04-computer-operating-systems-i-use.md2
-rw-r--r--gemfeed/2022-03-06-the-release-of-dtail-4.0.0.md2
-rw-r--r--gemfeed/2022-04-10-creative-universe.md2
-rw-r--r--gemfeed/2022-05-27-perl-is-still-a-great-choice.md2
-rw-r--r--gemfeed/2022-06-15-sweating-the-small-stuff.md2
-rw-r--r--gemfeed/2022-07-30-lets-encrypt-with-openbsd-and-rex.md2
-rw-r--r--gemfeed/2022-08-27-gemtexter-1.1.0-lets-gemtext-again.md2
-rw-r--r--gemfeed/2022-09-30-after-a-bad-nights-sleep.md2
-rw-r--r--gemfeed/2022-10-30-installing-dtail-on-openbsd.md2
-rw-r--r--gemfeed/2022-11-24-i-tried-emacs-but-i-switched-back-to-neovim.md2
-rw-r--r--gemfeed/2022-12-24-ultrarelearning-java-my-takeaways.md2
-rw-r--r--gemfeed/2023-01-23-why-grapheneos-rox.md2
-rw-r--r--gemfeed/2023-02-26-how-to-shut-down-after-work.md2
-rw-r--r--gemfeed/2023-03-16-the-pragmatic-programmer-book-notes.md2
-rw-r--r--gemfeed/2023-03-25-gemtexter-2.0.0-lets-gemtext-again-2.md2
-rw-r--r--gemfeed/2023-04-01-never-split-the-difference-book-notes.md2
-rw-r--r--gemfeed/2023-04-09-algorithms-and-data-structures-in-golang-part-1.md2
-rw-r--r--gemfeed/2023-05-06-the-obstacle-is-the-way-book-notes.md2
-rw-r--r--gemfeed/2023-06-01-kiss-server-monitoring-with-gogios.md2
-rw-r--r--gemfeed/2023-07-17-career-guide-and-soft-skills-book-notes.md2
-rw-r--r--gemfeed/2023-07-21-gemtexter-2.1.0-lets-gemtext-again-3.md2
-rw-r--r--gemfeed/2023-08-18-site-reliability-engineering-part-1.md2
-rw-r--r--gemfeed/2023-08-19-site-reliability-engineering-part-2.md2
-rw-r--r--gemfeed/2023-08-20-site-reliability-engineering-part-3.md2
-rw-r--r--gemfeed/2023-09-25-dtail-usage-examples.md2
-rw-r--r--gemfeed/DRAFT-dtail-usage-examples.md230
-rw-r--r--gemfeed/DRAFT-site-reliability-engineering.md2
-rw-r--r--gemfeed/W228
54 files changed, 53 insertions, 511 deletions
diff --git a/gemfeed/2008-06-26-perl-poetry.md b/gemfeed/2008-06-26-perl-poetry.md
index 354ee814..08f12e4c 100644
--- a/gemfeed/2008-06-26-perl-poetry.md
+++ b/gemfeed/2008-06-26-perl-poetry.md
@@ -167,6 +167,6 @@ Other related posts are:
[2011-05-07 Perl Daemon (Service Framework)](./2011-05-07-perl-daemon-service-framework.md)
[2022-05-27 Perl is still a great choice](./2022-05-27-perl-is-still-a-great-choice.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2008-12-29-using-my-nokia-n95-for-fixing-my-mta.md b/gemfeed/2008-12-29-using-my-nokia-n95-for-fixing-my-mta.md
index c8add833..acb2a67e 100644
--- a/gemfeed/2008-12-29-using-my-nokia-n95-for-fixing-my-mta.md
+++ b/gemfeed/2008-12-29-using-my-nokia-n95-for-fixing-my-mta.md
@@ -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 your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2010-04-09-standard-ml-and-haskell.md b/gemfeed/2010-04-09-standard-ml-and-haskell.md
index 6f487464..daad07b5 100644
--- a/gemfeed/2010-04-09-standard-ml-and-haskell.md
+++ b/gemfeed/2010-04-09-standard-ml-and-haskell.md
@@ -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 your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2010-05-07-lazy-evaluation-with-standarn-ml.md b/gemfeed/2010-05-07-lazy-evaluation-with-standarn-ml.md
index 4d7c6a7a..f2a97085 100644
--- a/gemfeed/2010-05-07-lazy-evaluation-with-standarn-ml.md
+++ b/gemfeed/2010-05-07-lazy-evaluation-with-standarn-ml.md
@@ -97,6 +97,6 @@ first 10 nat_pairs_not_null
[http://www.haskell.org/](http://www.haskell.org/)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2010-05-09-the-fype-programming-language.md b/gemfeed/2010-05-09-the-fype-programming-language.md
index 5435d022..c7f8850d 100644
--- a/gemfeed/2010-05-09-the-fype-programming-language.md
+++ b/gemfeed/2010-05-09-the-fype-programming-language.md
@@ -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](https://codeberg.org/snonux/fype)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2011-05-07-perl-daemon-service-framework.md b/gemfeed/2011-05-07-perl-daemon-service-framework.md
index e7e9fd33..3b4214c4 100644
--- a/gemfeed/2011-05-07-perl-daemon-service-framework.md
+++ b/gemfeed/2011-05-07-perl-daemon-service-framework.md
@@ -164,6 +164,6 @@ Other related posts are:
[2011-05-07 Perl Daemon (Service Framework) (You are currently reading this)](./2011-05-07-perl-daemon-service-framework.md)
[2022-05-27 Perl is still a great choice](./2022-05-27-perl-is-still-a-great-choice.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2014-03-24-the-fibonacci.pl.c-polyglot.md b/gemfeed/2014-03-24-the-fibonacci.pl.c-polyglot.md
index 499ec69d..6ff56ba0 100644
--- a/gemfeed/2014-03-24-the-fibonacci.pl.c-polyglot.md
+++ b/gemfeed/2014-03-24-the-fibonacci.pl.c-polyglot.md
@@ -138,6 +138,6 @@ fib(10) = 55
It's entertaining to play with :-).
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2015-12-05-run-debian-on-your-phone-with-debroid.md b/gemfeed/2015-12-05-run-debian-on-your-phone-with-debroid.md
index 402bcdcb..ccb9113b 100644
--- a/gemfeed/2015-12-05-run-debian-on-your-phone-with-debroid.md
+++ b/gemfeed/2015-12-05-run-debian-on-your-phone-with-debroid.md
@@ -175,6 +175,6 @@ exit
Reboot & test! Enjoy!
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2016-04-03-offsite-backup-with-zfs.md b/gemfeed/2016-04-03-offsite-backup-with-zfs.md
index 1d6c1a73..2331e82e 100644
--- a/gemfeed/2016-04-03-offsite-backup-with-zfs.md
+++ b/gemfeed/2016-04-03-offsite-backup-with-zfs.md
@@ -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 your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2016-04-09-jails-and-zfs-on-freebsd-with-puppet.md b/gemfeed/2016-04-09-jails-and-zfs-on-freebsd-with-puppet.md
index bc2316b3..7b49b7f9 100644
--- a/gemfeed/2016-04-09-jails-and-zfs-on-freebsd-with-puppet.md
+++ b/gemfeed/2016-04-09-jails-and-zfs-on-freebsd-with-puppet.md
@@ -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 your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2016-04-16-offsite-backup-with-zfs-part2.md b/gemfeed/2016-04-16-offsite-backup-with-zfs-part2.md
index 376ff829..f8152d7b 100644
--- a/gemfeed/2016-04-16-offsite-backup-with-zfs-part2.md
+++ b/gemfeed/2016-04-16-offsite-backup-with-zfs-part2.md
@@ -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 your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2016-05-22-spinning-up-my-own-authoritative-dns-servers.md b/gemfeed/2016-05-22-spinning-up-my-own-authoritative-dns-servers.md
index 2c9f08d8..b320bbab 100644
--- a/gemfeed/2016-05-22-spinning-up-my-own-authoritative-dns-servers.md
+++ b/gemfeed/2016-05-22-spinning-up-my-own-authoritative-dns-servers.md
@@ -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 your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2016-11-20-object-oriented-programming-with-ansi-c.md b/gemfeed/2016-11-20-object-oriented-programming-with-ansi-c.md
index 6d35c0fd..05cdaf88 100644
--- a/gemfeed/2016-11-20-object-oriented-programming-with-ansi-c.md
+++ b/gemfeed/2016-11-20-object-oriented-programming-with-ansi-c.md
@@ -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 your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2018-06-01-realistic-load-testing-with-ioriot-for-linux.md b/gemfeed/2018-06-01-realistic-load-testing-with-ioriot-for-linux.md
index b10a7bb0..4b03f475 100644
--- a/gemfeed/2018-06-01-realistic-load-testing-with-ioriot-for-linux.md
+++ b/gemfeed/2018-06-01-realistic-load-testing-with-ioriot-for-linux.md
@@ -186,6 +186,6 @@ For example, the open syscall opens a file and returns the responsible file desc
[Graphite](https://graphiteapp.org)
[Memory mapped I/O](https://en.wikipedia.org/wiki/Memory-mapped_I/O)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2021-04-22-dtail-the-distributed-log-tail-program.md b/gemfeed/2021-04-22-dtail-the-distributed-log-tail-program.md
index 8a88d1f5..3430990e 100644
--- a/gemfeed/2021-04-22-dtail-the-distributed-log-tail-program.md
+++ b/gemfeed/2021-04-22-dtail-the-distributed-log-tail-program.md
@@ -110,6 +110,6 @@ Other related posts are:
[2022-10-30 Installing DTail on OpenBSD](./2022-10-30-installing-dtail-on-openbsd.md)
[2023-09-25 DTail usage examples](./2023-09-25-dtail-usage-examples.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2021-04-24-welcome-to-the-geminispace.md b/gemfeed/2021-04-24-welcome-to-the-geminispace.md
index 262a6016..682d5f47 100644
--- a/gemfeed/2021-04-24-welcome-to-the-geminispace.md
+++ b/gemfeed/2021-04-24-welcome-to-the-geminispace.md
@@ -86,6 +86,6 @@ Other related posts are:
[2023-03-25 Gemtexter 2.0.0 - Let's Gemtext again²](./2023-03-25-gemtexter-2.0.0-lets-gemtext-again-2.md)
[2023-07-21 Gemtexter 2.1.0 - Let's Gemtext again³](./2023-07-21-gemtexter-2.1.0-lets-gemtext-again-3.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2021-05-16-personal-bash-coding-style-guide.md b/gemfeed/2021-05-16-personal-bash-coding-style-guide.md
index dc9d3d05..21cd38f2 100644
--- a/gemfeed/2021-05-16-personal-bash-coding-style-guide.md
+++ b/gemfeed/2021-05-16-personal-bash-coding-style-guide.md
@@ -387,6 +387,6 @@ Other related posts are:
[2021-11-29 Bash Golf Part 1](./2021-11-29-bash-golf-part-1.md)
[2022-01-01 Bash Golf Part 2](./2022-01-01-bash-golf-part-2.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2021-06-05-gemtexter-one-bash-script-to-rule-it-all.md b/gemfeed/2021-06-05-gemtexter-one-bash-script-to-rule-it-all.md
index 1b02cbb0..de6a843f 100644
--- a/gemfeed/2021-06-05-gemtexter-one-bash-script-to-rule-it-all.md
+++ b/gemfeed/2021-06-05-gemtexter-one-bash-script-to-rule-it-all.md
@@ -174,6 +174,6 @@ Other related posts are:
[2023-03-25 Gemtexter 2.0.0 - Let's Gemtext again²](./2023-03-25-gemtexter-2.0.0-lets-gemtext-again-2.md)
[2023-07-21 Gemtexter 2.1.0 - Let's Gemtext again³](./2023-07-21-gemtexter-2.1.0-lets-gemtext-again-3.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2021-07-04-the-well-grounded-rubyist.md b/gemfeed/2021-07-04-the-well-grounded-rubyist.md
index cb55b24e..290b6518 100644
--- a/gemfeed/2021-07-04-the-well-grounded-rubyist.md
+++ b/gemfeed/2021-07-04-the-well-grounded-rubyist.md
@@ -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 your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2021-08-01-on-being-pedantic-about-open-source.md b/gemfeed/2021-08-01-on-being-pedantic-about-open-source.md
index 218a9c0a..a57e01aa 100644
--- a/gemfeed/2021-08-01-on-being-pedantic-about-open-source.md
+++ b/gemfeed/2021-08-01-on-being-pedantic-about-open-source.md
@@ -58,7 +58,7 @@ Security bugs in open-source projects are exposed to the public and fixed quickl
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 your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
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.
@@ -114,6 +114,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 your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2021-09-12-keep-it-simple-and-stupid.md b/gemfeed/2021-09-12-keep-it-simple-and-stupid.md
index f5fdf32c..7fe544e1 100644
--- a/gemfeed/2021-09-12-keep-it-simple-and-stupid.md
+++ b/gemfeed/2021-09-12-keep-it-simple-and-stupid.md
@@ -94,7 +94,7 @@ There is, however, a trap. The more you spend time with things, the more these t
Enough ranted for now!
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
> 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.md b/gemfeed/2021-10-22-defensive-devops.md
index 5946a5e4..d46311ff 100644
--- a/gemfeed/2021-10-22-defensive-devops.md
+++ b/gemfeed/2021-10-22-defensive-devops.md
@@ -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 your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2021-11-29-bash-golf-part-1.md b/gemfeed/2021-11-29-bash-golf-part-1.md
index 04715e15..60c4ed08 100644
--- a/gemfeed/2021-11-29-bash-golf-part-1.md
+++ b/gemfeed/2021-11-29-bash-golf-part-1.md
@@ -470,6 +470,6 @@ Other related posts are:
[2021-11-29 Bash Golf Part 1 (You are currently reading this)](./2021-11-29-bash-golf-part-1.md)
[2022-01-01 Bash Golf Part 2](./2022-01-01-bash-golf-part-2.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2021-12-26-how-to-stay-sane-as-a-devops-person.md b/gemfeed/2021-12-26-how-to-stay-sane-as-a-devops-person.md
index 45c8206e..03367c30 100644
--- a/gemfeed/2021-12-26-how-to-stay-sane-as-a-devops-person.md
+++ b/gemfeed/2021-12-26-how-to-stay-sane-as-a-devops-person.md
@@ -123,6 +123,6 @@ Another blog post worth reading:
[https://unixsheikh.com/articles/how-to-stay-sane-in-todays-world-of-tech.html](https://unixsheikh.com/articles/how-to-stay-sane-in-todays-world-of-tech.html)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2022-01-01-bash-golf-part-2.md b/gemfeed/2022-01-01-bash-golf-part-2.md
index 7f3ea145..f9792a39 100644
--- a/gemfeed/2022-01-01-bash-golf-part-2.md
+++ b/gemfeed/2022-01-01-bash-golf-part-2.md
@@ -487,6 +487,6 @@ Other related posts are:
[2021-11-29 Bash Golf Part 1](./2021-11-29-bash-golf-part-1.md)
[2022-01-01 Bash Golf Part 2 (You are currently reading this)](./2022-01-01-bash-golf-part-2.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2022-01-23-welcome-to-the-foo.zone.md b/gemfeed/2022-01-23-welcome-to-the-foo.zone.md
index 227a7f5c..6ca4f1bf 100644
--- a/gemfeed/2022-01-23-welcome-to-the-foo.zone.md
+++ b/gemfeed/2022-01-23-welcome-to-the-foo.zone.md
@@ -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 your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2022-02-04-computer-operating-systems-i-use.md b/gemfeed/2022-02-04-computer-operating-systems-i-use.md
index f718a64e..67f068f6 100644
--- a/gemfeed/2022-02-04-computer-operating-systems-i-use.md
+++ b/gemfeed/2022-02-04-computer-operating-systems-i-use.md
@@ -225,6 +225,6 @@ I have been using NetBSD on an old Sun Sparcstation 10 as a student. I also have
[DragonFly BSD - Fork of FreeBSD 4](https://www.dragonflybsd.org/)
[Phosh (on postmarketOS) - A true Linux shell for the smartphone](http://wiki.postmarketos.org/wiki/Phosh)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2022-03-06-the-release-of-dtail-4.0.0.md b/gemfeed/2022-03-06-the-release-of-dtail-4.0.0.md
index 7400ba78..dcfcea69 100644
--- a/gemfeed/2022-03-06-the-release-of-dtail-4.0.0.md
+++ b/gemfeed/2022-03-06-the-release-of-dtail-4.0.0.md
@@ -297,6 +297,6 @@ Thanks!
Paul
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2022-04-10-creative-universe.md b/gemfeed/2022-04-10-creative-universe.md
index 5c614fb0..f884dc1b 100644
--- a/gemfeed/2022-04-10-creative-universe.md
+++ b/gemfeed/2022-04-10-creative-universe.md
@@ -137,6 +137,6 @@ Relevant books I can recommend are:
* The Off Switch; Mark Cropley; Virgin Books
* Ultralearning; Scott Young; Thorsons
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2022-05-27-perl-is-still-a-great-choice.md b/gemfeed/2022-05-27-perl-is-still-a-great-choice.md
index 9f9efee0..a1c9712e 100644
--- a/gemfeed/2022-05-27-perl-is-still-a-great-choice.md
+++ b/gemfeed/2022-05-27-perl-is-still-a-great-choice.md
@@ -141,6 +141,6 @@ Other related posts are:
[2022-05-27 Perl is still a great choice (You are currently reading this)](./2022-05-27-perl-is-still-a-great-choice.md)
[2023-05-01 Unveiling `guprecords.raku`: Global Uptime Records with Raku](./2023-05-01-unveiling-guprecords:-uptime-records-with-raku.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2022-06-15-sweating-the-small-stuff.md b/gemfeed/2022-06-15-sweating-the-small-stuff.md
index 4d57b5e0..bf4b2549 100644
--- a/gemfeed/2022-06-15-sweating-the-small-stuff.md
+++ b/gemfeed/2022-06-15-sweating-the-small-stuff.md
@@ -323,6 +323,6 @@ If you wonder what Gemini is:
[Welcome to the Geminispae](./2021-04-24-welcome-to-the-geminispace.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2022-07-30-lets-encrypt-with-openbsd-and-rex.md b/gemfeed/2022-07-30-lets-encrypt-with-openbsd-and-rex.md
index 4ef14643..bc3800ca 100644
--- a/gemfeed/2022-07-30-lets-encrypt-with-openbsd-and-rex.md
+++ b/gemfeed/2022-07-30-lets-encrypt-with-openbsd-and-rex.md
@@ -656,6 +656,6 @@ OpenBSD suits perfectly here as all the tools are already part of the base insta
Why re-inventing the wheel? I love that a `Rexfile` is just a Perl DSL. 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 I didn't have to install an additional shell as OpenBSD does not come with the Bash pre-installed.
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2022-08-27-gemtexter-1.1.0-lets-gemtext-again.md b/gemfeed/2022-08-27-gemtexter-1.1.0-lets-gemtext-again.md
index 25804316..fd162e92 100644
--- a/gemfeed/2022-08-27-gemtexter-1.1.0-lets-gemtext-again.md
+++ b/gemfeed/2022-08-27-gemtexter-1.1.0-lets-gemtext-again.md
@@ -93,6 +93,6 @@ Other related posts are:
[2023-03-25 Gemtexter 2.0.0 - Let's Gemtext again²](./2023-03-25-gemtexter-2.0.0-lets-gemtext-again-2.md)
[2023-07-21 Gemtexter 2.1.0 - Let's Gemtext again³](./2023-07-21-gemtexter-2.1.0-lets-gemtext-again-3.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2022-09-30-after-a-bad-nights-sleep.md b/gemfeed/2022-09-30-after-a-bad-nights-sleep.md
index 59f46eae..91c6f553 100644
--- a/gemfeed/2022-09-30-after-a-bad-nights-sleep.md
+++ b/gemfeed/2022-09-30-after-a-bad-nights-sleep.md
@@ -93,6 +93,6 @@ It's easier to forget things on those days, so everything should be written down
I wouldn't say I like checking social media, as it can consume a lot of time and can become addictive. But once in a while, I want to catch up with my "networks". After a bad night's sleep, it's the perfect time to check your social media. Once done, you don't have to do it anymore for the next couple of days!
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2022-10-30-installing-dtail-on-openbsd.md b/gemfeed/2022-10-30-installing-dtail-on-openbsd.md
index 873173ce..c0bc56ed 100644
--- a/gemfeed/2022-10-30-installing-dtail-on-openbsd.md
+++ b/gemfeed/2022-10-30-installing-dtail-on-openbsd.md
@@ -346,6 +346,6 @@ Other related posts are:
[2022-10-30 Installing DTail on OpenBSD (You are currently reading this)](./2022-10-30-installing-dtail-on-openbsd.md)
[2023-09-25 DTail usage examples](./2023-09-25-dtail-usage-examples.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2022-11-24-i-tried-emacs-but-i-switched-back-to-neovim.md b/gemfeed/2022-11-24-i-tried-emacs-but-i-switched-back-to-neovim.md
index 18497336..adefac5d 100644
--- a/gemfeed/2022-11-24-i-tried-emacs-but-i-switched-back-to-neovim.md
+++ b/gemfeed/2022-11-24-i-tried-emacs-but-i-switched-back-to-neovim.md
@@ -110,6 +110,6 @@ Vim/NeoVim also comes with a very high degree of customization options, but to a
[https://github.com/NvChad/NvChad](https://github.com/NvChad/NvChad)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2022-12-24-ultrarelearning-java-my-takeaways.md b/gemfeed/2022-12-24-ultrarelearning-java-my-takeaways.md
index 2f3c8af4..220401a4 100644
--- a/gemfeed/2022-12-24-ultrarelearning-java-my-takeaways.md
+++ b/gemfeed/2022-12-24-ultrarelearning-java-my-takeaways.md
@@ -102,6 +102,6 @@ Java needs a clean cut. The clean cut shall be incompatible with previous versio
Am I a Java expert now? No, by far not. But I am better now than before :-).
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2023-01-23-why-grapheneos-rox.md b/gemfeed/2023-01-23-why-grapheneos-rox.md
index 4edea016..765c0825 100644
--- a/gemfeed/2023-01-23-why-grapheneos-rox.md
+++ b/gemfeed/2023-01-23-why-grapheneos-rox.md
@@ -136,6 +136,6 @@ Another thing is that GrapheneOS can only run on Google Pixel phones, whereas Li
And, of course, GrapheneOS is an open-source project. This is a good thing; however, on the other side, nobody can guarantee that the OS will not break or will not damage your phone. You have to trust the GrapheneOS project and donate to the project so they can keep up with the great work. But I rather trust the GrapheneOS team than big tech.
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2023-02-26-how-to-shut-down-after-work.md b/gemfeed/2023-02-26-how-to-shut-down-after-work.md
index 085ecf55..8212c60c 100644
--- a/gemfeed/2023-02-26-how-to-shut-down-after-work.md
+++ b/gemfeed/2023-02-26-how-to-shut-down-after-work.md
@@ -73,6 +73,6 @@ Every day you gave your best was good; the day's outcome doesn't matter. What ma
There are some days at work you feel drained afterwards and think you didn't progress towards your goals at all. It's more challenging to shut down from work after such a day. A quick hack is to work on a quick win before the end of the day, giving you a sense of accomplishment after all. Another way is to make progress on your fun passion project after work. It must not be work-related, but a sense of accomplishment will still be there.
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2023-03-16-the-pragmatic-programmer-book-notes.md b/gemfeed/2023-03-16-the-pragmatic-programmer-book-notes.md
index 549171f4..77ca15f6 100644
--- a/gemfeed/2023-03-16-the-pragmatic-programmer-book-notes.md
+++ b/gemfeed/2023-03-16-the-pragmatic-programmer-book-notes.md
@@ -83,7 +83,7 @@ Other book notes of mine are:
[2023-05-06 "The Obstacle is the Way" book notes](./2023-05-06-the-obstacle-is-the-way-book-notes.md)
[2023-07-17 "Software Developmers Career Guide and Soft Skills" book notes](./2023-07-17-career-guide-and-soft-skills-book-notes.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[More books and other resources I found useful.](../resources.md)
[Back to the main site](../)
diff --git a/gemfeed/2023-03-25-gemtexter-2.0.0-lets-gemtext-again-2.md b/gemfeed/2023-03-25-gemtexter-2.0.0-lets-gemtext-again-2.md
index 6c5b594e..c988a01d 100644
--- a/gemfeed/2023-03-25-gemtexter-2.0.0-lets-gemtext-again-2.md
+++ b/gemfeed/2023-03-25-gemtexter-2.0.0-lets-gemtext-again-2.md
@@ -144,6 +144,6 @@ Other related posts are:
[2023-03-25 Gemtexter 2.0.0 - Let's Gemtext again² (You are currently reading this)](./2023-03-25-gemtexter-2.0.0-lets-gemtext-again-2.md)
[2023-07-21 Gemtexter 2.1.0 - Let's Gemtext again³](./2023-07-21-gemtexter-2.1.0-lets-gemtext-again-3.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2023-04-01-never-split-the-difference-book-notes.md b/gemfeed/2023-04-01-never-split-the-difference-book-notes.md
index 855ae19a..2673a6cd 100644
--- a/gemfeed/2023-04-01-never-split-the-difference-book-notes.md
+++ b/gemfeed/2023-04-01-never-split-the-difference-book-notes.md
@@ -127,6 +127,6 @@ Other book notes of mine are:
[2023-05-06 "The Obstacle is the Way" book notes](./2023-05-06-the-obstacle-is-the-way-book-notes.md)
[2023-07-17 "Software Developmers Career Guide and Soft Skills" book notes](./2023-07-17-career-guide-and-soft-skills-book-notes.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2023-04-09-algorithms-and-data-structures-in-golang-part-1.md b/gemfeed/2023-04-09-algorithms-and-data-structures-in-golang-part-1.md
index a572e1b8..9fd31bff 100644
--- a/gemfeed/2023-04-09-algorithms-and-data-structures-in-golang-part-1.md
+++ b/gemfeed/2023-04-09-algorithms-and-data-structures-in-golang-part-1.md
@@ -226,6 +226,6 @@ ok codeberg.org/snonux/algorithms/sort 9.002s
I won't write any benchmark for sleep sort; that will be done for the algorithms to come in this series :-).
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2023-05-06-the-obstacle-is-the-way-book-notes.md b/gemfeed/2023-05-06-the-obstacle-is-the-way-book-notes.md
index 9b7154a5..56cf16f4 100644
--- a/gemfeed/2023-05-06-the-obstacle-is-the-way-book-notes.md
+++ b/gemfeed/2023-05-06-the-obstacle-is-the-way-book-notes.md
@@ -89,7 +89,7 @@ Other book notes of mine are:
[2023-05-06 "The Obstacle is the Way" book notes (You are currently reading this)](./2023-05-06-the-obstacle-is-the-way-book-notes.md)
[2023-07-17 "Software Developmers Career Guide and Soft Skills" book notes](./2023-07-17-career-guide-and-soft-skills-book-notes.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[More books and other resources I found useful.](../resources.md)
[Back to the main site](../)
diff --git a/gemfeed/2023-06-01-kiss-server-monitoring-with-gogios.md b/gemfeed/2023-06-01-kiss-server-monitoring-with-gogios.md
index 14d2eb5b..df390d16 100644
--- a/gemfeed/2023-06-01-kiss-server-monitoring-with-gogios.md
+++ b/gemfeed/2023-06-01-kiss-server-monitoring-with-gogios.md
@@ -236,6 +236,6 @@ There are plans to make it possible to execute certain checks only on certain no
Gogios is a lightweight and straightforward monitoring tool that is perfect for small-scale environments. With its compatibility with the Nagios Check API, email notifications, and CRON-based scheduling, Gogios offers an easy-to-use solution for those looking to monitor a limited number of resources. I personally use it to execute around 500 checks on my personal server infrastructure. I am very happy with this solution.
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2023-07-17-career-guide-and-soft-skills-book-notes.md b/gemfeed/2023-07-17-career-guide-and-soft-skills-book-notes.md
index 34132e41..95249202 100644
--- a/gemfeed/2023-07-17-career-guide-and-soft-skills-book-notes.md
+++ b/gemfeed/2023-07-17-career-guide-and-soft-skills-book-notes.md
@@ -279,7 +279,7 @@ Other book notes of mine are:
[2023-05-06 "The Obstacle is the Way" book notes](./2023-05-06-the-obstacle-is-the-way-book-notes.md)
[2023-07-17 "Software Developmers Career Guide and Soft Skills" book notes (You are currently reading this)](./2023-07-17-career-guide-and-soft-skills-book-notes.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[More books and other resources I found useful.](../resources.md)
[Back to the main site](../)
diff --git a/gemfeed/2023-07-21-gemtexter-2.1.0-lets-gemtext-again-3.md b/gemfeed/2023-07-21-gemtexter-2.1.0-lets-gemtext-again-3.md
index 353d82a2..a0f703a8 100644
--- a/gemfeed/2023-07-21-gemtexter-2.1.0-lets-gemtext-again-3.md
+++ b/gemfeed/2023-07-21-gemtexter-2.1.0-lets-gemtext-again-3.md
@@ -99,6 +99,6 @@ Other related posts are:
[2023-03-25 Gemtexter 2.0.0 - Let's Gemtext again²](./2023-03-25-gemtexter-2.0.0-lets-gemtext-again-2.md)
[2023-07-21 Gemtexter 2.1.0 - Let's Gemtext again³ (You are currently reading this)](./2023-07-21-gemtexter-2.1.0-lets-gemtext-again-3.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2023-08-18-site-reliability-engineering-part-1.md b/gemfeed/2023-08-18-site-reliability-engineering-part-1.md
index fbd78396..4ce87aaf 100644
--- a/gemfeed/2023-08-18-site-reliability-engineering-part-1.md
+++ b/gemfeed/2023-08-18-site-reliability-engineering-part-1.md
@@ -54,6 +54,6 @@ Continue with the second part of this series:
[2023-08-19 Site Reliability Engineering - Part 2: Operational Balance in SRE](./2023-08-19-site-reliability-engineering-part-2.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2023-08-19-site-reliability-engineering-part-2.md b/gemfeed/2023-08-19-site-reliability-engineering-part-2.md
index ac56fbd3..b3e908f4 100644
--- a/gemfeed/2023-08-19-site-reliability-engineering-part-2.md
+++ b/gemfeed/2023-08-19-site-reliability-engineering-part-2.md
@@ -45,6 +45,6 @@ Continue with the third part of this series:
[2023-08-20 Site Reliability Engineering - Part 3: On-Call Culture and the Human Aspect](./2023-08-20-site-reliability-engineering-part-3.md)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2023-08-20-site-reliability-engineering-part-3.md b/gemfeed/2023-08-20-site-reliability-engineering-part-3.md
index c5a41d8b..831eb156 100644
--- a/gemfeed/2023-08-20-site-reliability-engineering-part-3.md
+++ b/gemfeed/2023-08-20-site-reliability-engineering-part-3.md
@@ -54,6 +54,6 @@ A blameless on-call culture is a must for a safe and collaborative environment w
The fourth part of this blog series will be published soon :-)
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/2023-09-25-dtail-usage-examples.md b/gemfeed/2023-09-25-dtail-usage-examples.md
index d077ae3e..90c829a9 100644
--- a/gemfeed/2023-09-25-dtail-usage-examples.md
+++ b/gemfeed/2023-09-25-dtail-usage-examples.md
@@ -239,6 +239,6 @@ I hope you find the tools presented in this post useful!
Paul
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/DRAFT-dtail-usage-examples.md b/gemfeed/DRAFT-dtail-usage-examples.md
deleted file mode 100644
index bd0d9f10..00000000
--- a/gemfeed/DRAFT-dtail-usage-examples.md
+++ /dev/null
@@ -1,230 +0,0 @@
-# DTail usage examples
-
-DTail is a distributed DevOps tool for tailing, grepping, catting logs and other text files on many remote machines at once which I programmed in Go.
-
-[https://dtail.dev](https://dtail.dev)
-
-```
- ,_---~~~~~----._
- _,,_,*^____ _____``*g*\"*,
- ____ _____ _ _ / __/ /' ^. / \ ^@q f
- | _ \_ _|_ _(_) | @f | ((@| |@)) l 0 _/
- | | | || |/ _` | | | \`/ \~____ / __ \_____/ \
- | |_| || | (_| | | | | _l__l_ I
- |____/ |_|\__,_|_|_| } [______] I
- ] | | | |
- ] ~ ~ |
- | Let's tail those logs! |
- | |
-```
-
-DTail consists out of a server and several client binaries. In this post, I am showcasing their use!
-
-## Following logs
-
-The following example demonstrates how to follow logs of several servers at once. The server list is provided as a flat text file. The example filters all records containing the string `INFO`. Any other Go compatible regular expression can also be used instead of `INFO`.
-
-```shell
-% dtail --servers serverlist.txt --grep INFO --files "/var/log/dserver/*.log"
-```
-
-Hint: you can also provide a comma separated server list, e.g.: `servers server1.example.org,server2.example.org:PORT,...`
-
-[![Tail example](./dtail-usage-examples/dtail.gif "Tail example")](./dtail-usage-examples/dtail.gif)
-
-> Hint: You can also use the shorthand version (omitting the `--files`)
-
-```shell
-% dtail --servers serverlist.txt --grep INFO "/var/log/dserver/*.log"
-```
-
-## Aggregating logs
-
-To run ad-hoc map-reduce aggregations on newly written log lines you must add a query. The following example follows all remote log lines and prints out every few seconds the result to standard output.
-
-> Hint: To run a map-reduce query across log lines written in the past, please use the `dmap` command instead.
-
-```shell
-% dtail --servers serverlist.txt \
- --files '/var/log/dserver/*.log' \
- --query 'from STATS select sum($goroutines),sum($cgocalls),
- last($time),max(lifetimeConnections)'
-```
-
-Beware: For map-reduce queries to work, you have to ensure that DTail supports your log format. Check out the documentaiton of the DTail query language and the DTail log formats on the DTail homepage for more information.
-
-[![Tail map-reduce example](./dtail-usage-examples/dtail-map.gif "Tail map-reduce example")](./dtail-usage-examples/dtail-map.gif)
-
-> Hint: You can also use the shorthand version:
-
-```shell
-% dtail --servers serverlist.txt \
- --files '/var/log/dserver/*.log' \
- 'from STATS select sum($goroutines),sum($cgocalls),
- last($time),max(lifetimeConnections)'
-```
-
-Here is another example:
-
-```shell
-% dtail --servers serverlist.txt \
- --files '/var/log/dserver/*.log' \
- --query 'from STATS select $hostname,max($goroutines),max($cgocalls),$loadavg,
- lifetimeConnections group by $hostname order by max($cgocalls)'
-```
-
-[![Tail map-reduce example 2](./dtail-usage-examples/dtail-map2.gif "Tail map-reduce example 2")](./dtail-usage-examples/dtail-map2.gif)
-
-You can also continuously append the results to a CSV file by adding `outfile append filename.csv` to the query:
-
-```shell
-% dtail --servers serverlist.txt \
- --files '/var/log/dserver/*.log' \
- --query 'from STATS select ... outfile append result.csv'
-```
-
-## How to use `dcat`
-
-The following example demonstrates how to cat files (display the full content of the files) on several servers at once.
-
-As you can see in this example, a DTail client also creates a local log file of all received data in `~/log`. You can also use the `noColor` and `-plain` flags (this all also work with other DTail commands than `dcat`).
-
-```shell
-% dcat --servers serverlist.txt --files /etc/hostname
-```
-
-[![Cat example](./dtail-usage-examples/dcat.gif "Cat example")](./dtail-usage-examples/dcat.gif)
-
-> Hint: You can also use the shorthand version:
-
-```shell
-% dcat --servers serverlist.txt /etc/hostname
-```
-
-## How to use `dgrep`
-
-The following example demonstrates how to grep files (display only the lines which match a given regular expression) of multiple servers at once. In this example, we look after some entries in `/etc/passwd`. This time, we don't provide the server list via an file but rather via a comma separated list directly on the command line. We also explore the `-before`, `-after` and `-max` flags (see animation).
-
-```shell
-% dgrep --servers server1.example.org:2223 \
- --files /etc/passwd \
- --regex nologin
-```
-
-Generally, `dgrep` is also a very useful way to search historic application logs for certain content.
-
-[![Grep example](./dtail-usage-examples/dgrep.gif "Grep example")](./dtail-usage-examples/dgrep.gif)
-
-Hint: `-regex` is an alias for `-grep`.
-
-## How to use `dmap`
-
-To run a map-reduce aggregation over logs written in the past, the `dmap` command can be used. The following example aggregates all map-reduce fields `dmap` will print interim results every few seconds. You can also write the result to an CSV file by adding `outfile result.csv` to the query.
-
-```shell
-% dmap --servers serverlist.txt \
- --files '/var/log/dserver/*.log' \
- --query 'from STATS select $hostname,max($goroutines),max($cgocalls),$loadavg,
- lifetimeConnections group by $hostname order by max($cgocalls)'
-```
-
-Remember: For that to work, you have to make sure that DTail supports your log format. You can either use the ones already defined in `internal/mapr/logformat` or add an extension to support a custom log format. The example here works out of the box though, as DTail understands its own log format already.
-
-[![DMap example](./dtail-usage-examples/dmap.gif "DMap example")](./dtail-usage-examples/dmap.gif)
-
-## How to use the DTail serverless mode
-
-Until now, all examples so far required to have remote server(s) to connect to. That makes sense, as after all DTail is a *distributed* tool. However, there are circumstances where you don't really need to connect to a server remotely. For example, you already have a login shell open to the server an all what you want is to run some queries directly on local log files.
-
-The serverless mode does not require any `dserver` up and running and therefore there is no networking/SSH involved.
-
-All commands shown so far also work in a serverless mode. All what needs to be done is to omit a server list. The DTail client then starts in serverless mode.
-
-### Serverless map-reduce query
-
-The following `dmap` example is the same as the previously shown one, but the difference is that it operates on a local log file directly:
-
-```shell
-% dmap --files /var/log/dserver/dserver.log
- --query 'from STATS select $hostname,max($goroutines),max($cgocalls),$loadavg,
- lifetimeConnections group by $hostname order by max($cgocalls)'
-```
-
-As a shorthand version the following command can be used:
-
-```shell
-% dmap 'from STATS select $hostname,max($goroutines),max($cgocalls),$loadavg,
-lifetimeConnections group by $hostname order by max($cgocalls)' /var/log/dsever/dserver.log
-```
-
-You can also use a file input pipe as follows:
-
-```shell
-% cat /var/log/dserver/dserver.log | \
- dmap 'from STATS select $hostname,max($goroutines),max($cgocalls),$loadavg,
- lifetimeConnections group by $hostname order by max($cgocalls)'
-```
-
-### Aggregating CSV files
-
-In essence, this works exactly like aggregating logs. All files operated on must be valid CSV files and the first line of the CSV must be the header. E.g.:
-
-```shell
-% cat example.csv
-name,lastname,age,profession
-Michael,Jordan,40,Basketball player
-Michael,Jackson,100,Singer
-Albert,Einstein,200,Physician
-% dmap --query 'select lastname,name where age > 40 logformat csv outfile result.csv' example.csv
-% cat result.csv
-lastname,name
-Jackson,Michael
-Einstein,Albert
-```
-
-DMap can also be used to query and aggregate CSV files from remote servers.
-
-### Other serverless commands
-
-The serverless mode works transparently with all other DTail commands. Here are some examples:
-
-```shell
-% dtail /var/log/dserver/dserver.log
-```
-
-```shell
-% dtail --logLevel trace /var/log/dserver/dserver.log
-```
-
-```shell
-% dcat /etc/passwd
-```
-
-```shell
-% dcat --plain /etc/passwd > /etc/test
-# Should show no differences.
-diff /etc/test /etc/passwd
-```
-
-```shell
-% dgrep --regex ERROR --files /var/log/dserver/dsever.log
-```
-
-```shell
-% dgrep --before 10 --after 10 --max 10 --grep ERROR /var/log/dserver/dsever.log
-
-Use `--help` for more available options. Or go to the DTail page for more information! Hope you find DTail useful!
-
-Other related posts are:
-
-[2021-04-22 DTail - The distributed log tail program](./2021-04-22-dtail-the-distributed-log-tail-program.md)
-[2022-03-06 The release of DTail 4.0.0](./2022-03-06-the-release-of-dtail-4.0.0.md)
-[2022-10-30 Installing DTail on OpenBSD](./2022-10-30-installing-dtail-on-openbsd.md)
-
-Thanks!
-
-Paul
-
-E-Mail your comments to `foo@paul.cyou` :-)
-
-[Back to the main site](../)
diff --git a/gemfeed/DRAFT-site-reliability-engineering.md b/gemfeed/DRAFT-site-reliability-engineering.md
index 60a8897e..b5471cdd 100644
--- a/gemfeed/DRAFT-site-reliability-engineering.md
+++ b/gemfeed/DRAFT-site-reliability-engineering.md
@@ -147,6 +147,6 @@ In summary, the essence of Site Reliability Engineering is characterised by an i
* Site Reliability Engineering: How Google runs Production Systems by by Jennifer Petoff, Niall Murphy, Betsy Beyer and Chris Jones
* Implementing Service Level Objectives by Alex Hidalgo
-E-Mail your comments to `foo@paul.cyou` :-)
+E-Mail your comments to `paul@nospam.buetow.org` :-)
[Back to the main site](../)
diff --git a/gemfeed/W b/gemfeed/W
deleted file mode 100644
index 7b753922..00000000
--- a/gemfeed/W
+++ /dev/null
@@ -1,228 +0,0 @@
-# DTail usage examples
-
-DTail is a distributed DevOps tool for tailing, grepping, catting logs and other text files on many remote machines at once which I programmed in Go.
-
-=> https://dtail.dev
-
-```
- ,_---~~~~~----._
- _,,_,*^____ _____``*g*\"*,
- ____ _____ _ _ / __/ /' ^. / \ ^@q f
- | _ \_ _|_ _(_) | @f | ((@| |@)) l 0 _/
- | | | || |/ _` | | | \`/ \~____ / __ \_____/ \
- | |_| || | (_| | | | | _l__l_ I
- |____/ |_|\__,_|_|_| } [______] I
- ] | | | |
- ] ~ ~ |
- | Let's tail those logs! |
- | |
-```
-
-DTail consists out of a server and several client binaries. In this post, I am showcasing their use!
-
-## Following logs
-
-The following example demonstrates how to follow logs of several servers at once. The server list is provided as a flat text file. The example filters all records containing the string `INFO`. Any other Go compatible regular expression can also be used instead of `INFO`.
-
-```shell
-% dtail --servers serverlist.txt --grep INFO --files "/var/log/dserver/*.log"
-```
-
-Hint: you can also provide a comma separated server list, e.g.: `servers server1.example.org,server2.example.org:PORT,...`
-
-=> ./dtail-usage-examples/dtail.gif Tail example
-
-> Hint: You can also use the shorthand version (omitting the `--files`)
-
-```shell
-% dtail --servers serverlist.txt --grep INFO "/var/log/dserver/*.log"
-```
-
-## Aggregating logs
-
-To run ad-hoc map-reduce aggregations on newly written log lines you must add a query. The following example follows all remote log lines and prints out every few seconds the result to standard output.
-
-> Hint: To run a map-reduce query across log lines written in the past, please use the `dmap` command instead.
-
-```shell
-% dtail --servers serverlist.txt \
- --files '/var/log/dserver/*.log' \
- --query 'from STATS select sum($goroutines),sum($cgocalls),
- last($time),max(lifetimeConnections)'
-```
-
-Beware: For map-reduce queries to work, you have to ensure that DTail supports your log format. Check out the documentaiton of the DTail query language and the DTail log formats on the DTail homepage for more information.
-
-=> ./dtail-usage-examples/dtail-map.gif Tail map-reduce example
-
-> Hint: You can also use the shorthand version:
-
-```shell
-% dtail --servers serverlist.txt \
- --files '/var/log/dserver/*.log' \
- 'from STATS select sum($goroutines),sum($cgocalls),
- last($time),max(lifetimeConnections)'
-```
-
-Here is another example:
-
-```shell
-% dtail --servers serverlist.txt \
- --files '/var/log/dserver/*.log' \
- --query 'from STATS select $hostname,max($goroutines),max($cgocalls),$loadavg,
- lifetimeConnections group by $hostname order by max($cgocalls)'
-```
-
-=> ./dtail-usage-examples/dtail-map2.gif Tail map-reduce example 2
-
-You can also continuously append the results to a CSV file by adding `outfile append filename.csv` to the query:
-
-```shell
-% dtail --servers serverlist.txt \
- --files '/var/log/dserver/*.log' \
- --query 'from STATS select ... outfile append result.csv'
-```
-
-## How to use `dcat`
-
-The following example demonstrates how to cat files (display the full content of the files) on several servers at once.
-
-As you can see in this example, a DTail client also creates a local log file of all received data in `~/log`. You can also use the `noColor` and `-plain` flags (this all also work with other DTail commands than `dcat`).
-
-```shell
-% dcat --servers serverlist.txt --files /etc/hostname
-```
-
-=> ./dtail-usage-examples/dcat.gif Cat example
-
-> Hint: You can also use the shorthand version:
-
-```shell
-% dcat --servers serverlist.txt /etc/hostname
-```
-
-## How to use `dgrep`
-
-The following example demonstrates how to grep files (display only the lines which match a given regular expression) of multiple servers at once. In this example, we look after some entries in `/etc/passwd`. This time, we don't provide the server list via an file but rather via a comma separated list directly on the command line. We also explore the `-before`, `-after` and `-max` flags (see animation).
-
-```shell
-% dgrep --servers server1.example.org:2223 \
- --files /etc/passwd \
- --regex nologin
-```
-
-Generally, `dgrep` is also a very useful way to search historic application logs for certain content.
-
-=> ./dtail-usage-examples/dgrep.gif Grep example
-
-Hint: `-regex` is an alias for `-grep`.
-
-## How to use `dmap`
-
-To run a map-reduce aggregation over logs written in the past, the `dmap` command can be used. The following example aggregates all map-reduce fields `dmap` will print interim results every few seconds. You can also write the result to an CSV file by adding `outfile result.csv` to the query.
-
-```shell
-% dmap --servers serverlist.txt \
- --files '/var/log/dserver/*.log' \
- --query 'from STATS select $hostname,max($goroutines),max($cgocalls),$loadavg,
- lifetimeConnections group by $hostname order by max($cgocalls)'
-```
-
-Remember: For that to work, you have to make sure that DTail supports your log format. You can either use the ones already defined in `internal/mapr/logformat` or add an extension to support a custom log format. The example here works out of the box though, as DTail understands its own log format already.
-
-=> ./dtail-usage-examples/dmap.gif DMap example
-
-## How to use the DTail serverless mode
-
-Until now, all examples so far required to have remote server(s) to connect to. That makes sense, as after all DTail is a *distributed* tool. However, there are circumstances where you don't really need to connect to a server remotely. For example, you already have a login shell open to the server an all what you want is to run some queries directly on local log files.
-
-The serverless mode does not require any `dserver` up and running and therefore there is no networking/SSH involved.
-
-All commands shown so far also work in a serverless mode. All what needs to be done is to omit a server list. The DTail client then starts in serverless mode.
-
-### Serverless map-reduce query
-
-The following `dmap` example is the same as the previously shown one, but the difference is that it operates on a local log file directly:
-
-```shell
-% dmap --files /var/log/dserver/dserver.log
- --query 'from STATS select $hostname,max($goroutines),max($cgocalls),$loadavg,
- lifetimeConnections group by $hostname order by max($cgocalls)'
-```
-
-As a shorthand version the following command can be used:
-
-```shell
-% dmap 'from STATS select $hostname,max($goroutines),max($cgocalls),$loadavg,
-lifetimeConnections group by $hostname order by max($cgocalls)' /var/log/dsever/dserver.log
-```
-
-You can also use a file input pipe as follows:
-
-```shell
-% cat /var/log/dserver/dserver.log | \
- dmap 'from STATS select $hostname,max($goroutines),max($cgocalls),$loadavg,
- lifetimeConnections group by $hostname order by max($cgocalls)'
-```
-
-### Aggregating CSV files
-
-In essence, this works exactly like aggregating logs. All files operated on must be valid CSV files and the first line of the CSV must be the header. E.g.:
-
-```shell
-% cat example.csv
-name,lastname,age,profession
-Michael,Jordan,40,Basketball player
-Michael,Jackson,100,Singer
-Albert,Einstein,200,Physician
-% dmap --query 'select lastname,name where age > 40 logformat csv outfile result.csv' example.csv
-% cat result.csv
-lastname,name
-Jackson,Michael
-Einstein,Albert
-```
-
-DMap can also be used to query and aggregate CSV files from remote servers.
-
-### Other serverless commands
-
-The serverless mode works transparently with all other DTail commands. Here are some examples:
-
-```shell
-% dtail /var/log/dserver/dserver.log
-```
-
-```shell
-% dtail --logLevel trace /var/log/dserver/dserver.log
-```
-
-```shell
-% dcat /etc/passwd
-```
-
-```shell
-% dcat --plain /etc/passwd > /etc/test
-# Should show no differences.
-diff /etc/test /etc/passwd
-```
-
-```shell
-% dgrep --regex ERROR --files /var/log/dserver/dsever.log
-```
-
-```shell
-% dgrep --before 10 --after 10 --max 10 --grep ERROR /var/log/dserver/dsever.log
-
-Use `--help` for more available options. Or go to the DTail page for more information! Hope you find DTail useful!
-
-Other related posts are:
-
-<< template::inline::index dtail
-
-Thanks!
-
-Paul
-
-E-Mail your comments to `foo@paul.cyou` :-)
-
-=> ../ Back to the main site