From 5a1ad4520aac86c7371c8bee9488396122dfc79c Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Sat, 24 Jan 2026 23:13:41 +0200 Subject: Update content for html --- about/resources.html | 204 ++++++------ about/showcase.html | 628 +++++++++++++++++++------------------ about/showcase/debroid/image-1.png | 112 +++---- 3 files changed, 483 insertions(+), 461 deletions(-) (limited to 'about') diff --git a/about/resources.html b/about/resources.html index 153192f6..ea534198 100644 --- a/about/resources.html +++ b/about/resources.html @@ -50,112 +50,112 @@ In random order:


Technical references



I didn't read them from the beginning to the end, but I am using them to look up things. The books are in random order:


Self-development and soft-skills books



In random order:


Here are notes of mine for some of the books

@@ -164,30 +164,30 @@ Some of these were in-person with exams; others were online learning lectures only. In random order:


Technical guides



These are not whole books, but guides (smaller or larger) which I found very useful. in random order:


Podcasts


@@ -197,51 +197,51 @@ In random order:


Podcasts I liked



I liked them but am not listening to them anymore. The podcasts have either "finished" (no more episodes) or I stopped listening to them due to time constraints or a shift in my interests.


Newsletters I like



This is a mix of tech and non-tech newsletters I am subscribed to. In random order:


Magazines I like(d)



@@ -249,9 +249,9 @@

Formal education



diff --git a/about/showcase.html b/about/showcase.html index aacec2c3..c9b8c16a 100644 --- a/about/showcase.html +++ b/about/showcase.html @@ -13,7 +13,7 @@

Project Showcase



-Generated on: 2026-01-08
+Generated on: 2026-01-24

This page showcases my side projects, providing an overview of what each project does, its technical implementation, and key metrics. Each project summary includes information about the programming languages used, development activity, and licensing. The projects are ranked by score, which combines project size and recent activity.

@@ -24,26 +24,26 @@
  • Overall Statistics
  • Projects
  • ⇢ ⇢ 1. conf
  • -
  • ⇢ ⇢ 2. foo.zone
  • +
  • ⇢ ⇢ 2. log4jbench
  • ⇢ ⇢ 3. epimetheus
  • ⇢ ⇢ 4. perc
  • ⇢ ⇢ 5. hexai
  • ⇢ ⇢ 6. yoga
  • -
  • ⇢ ⇢ 7. gitsyncer
  • -
  • ⇢ ⇢ 8. totalrecall
  • +
  • ⇢ ⇢ 7. totalrecall
  • +
  • ⇢ ⇢ 8. gitsyncer
  • ⇢ ⇢ 9. foostats
  • -
  • ⇢ ⇢ 10. timr
  • -
  • ⇢ ⇢ 11. tasksamurai
  • -
  • ⇢ ⇢ 12. ior
  • -
  • ⇢ ⇢ 13. dtail
  • -
  • ⇢ ⇢ 14. gos
  • -
  • ⇢ ⇢ 15. ds-sim
  • -
  • ⇢ ⇢ 16. gemtexter
  • -
  • ⇢ ⇢ 17. wireguardmeshgenerator
  • -
  • ⇢ ⇢ 18. rcm
  • -
  • ⇢ ⇢ 19. gogios
  • -
  • ⇢ ⇢ 20. sillybench
  • -
  • ⇢ ⇢ 21. terraform
  • +
  • ⇢ ⇢ 10. gogios
  • +
  • ⇢ ⇢ 11. timr
  • +
  • ⇢ ⇢ 12. tasksamurai
  • +
  • ⇢ ⇢ 13. ior
  • +
  • ⇢ ⇢ 14. dtail
  • +
  • ⇢ ⇢ 15. gos
  • +
  • ⇢ ⇢ 16. ds-sim
  • +
  • ⇢ ⇢ 17. gemtexter
  • +
  • ⇢ ⇢ 18. wireguardmeshgenerator
  • +
  • ⇢ ⇢ 19. rcm
  • +
  • ⇢ ⇢ 20. terraform
  • +
  • ⇢ ⇢ 21. sillybench
  • ⇢ ⇢ 22. quicklogger
  • ⇢ ⇢ 23. gorum
  • ⇢ ⇢ 24. guprecords
  • @@ -51,60 +51,61 @@
  • ⇢ ⇢ 26. geheim
  • ⇢ ⇢ 27. algorithms
  • ⇢ ⇢ 28. randomjournalpage
  • -
  • ⇢ ⇢ 29. photoalbum
  • -
  • ⇢ ⇢ 30. ioriot
  • -
  • ⇢ ⇢ 31. sway-autorotate
  • -
  • ⇢ ⇢ 32. mon
  • -
  • ⇢ ⇢ 33. staticfarm-apache-handlers
  • -
  • ⇢ ⇢ 34. pingdomfetch
  • -
  • ⇢ ⇢ 35. ychat
  • -
  • ⇢ ⇢ 36. xerl
  • -
  • ⇢ ⇢ 37. perl-c-fibonacci
  • -
  • ⇢ ⇢ 38. fapi
  • +
  • ⇢ ⇢ 29. ioriot
  • +
  • ⇢ ⇢ 30. sway-autorotate
  • +
  • ⇢ ⇢ 31. mon
  • +
  • ⇢ ⇢ 32. staticfarm-apache-handlers
  • +
  • ⇢ ⇢ 33. pingdomfetch
  • +
  • ⇢ ⇢ 34. xerl
  • +
  • ⇢ ⇢ 35. fapi
  • +
  • ⇢ ⇢ 36. photoalbum
  • +
  • ⇢ ⇢ 37. ychat
  • +
  • ⇢ ⇢ 38. perl-c-fibonacci
  • ⇢ ⇢ 39. netcalendar
  • ⇢ ⇢ 40. loadbars
  • ⇢ ⇢ 41. gotop
  • -
  • ⇢ ⇢ 42. vs-sim
  • +
  • ⇢ ⇢ 42. fype
  • ⇢ ⇢ 43. rubyfy
  • -
  • ⇢ ⇢ 44. fype
  • -
  • ⇢ ⇢ 45. pwgrep
  • -
  • ⇢ ⇢ 46. perldaemon
  • -
  • ⇢ ⇢ 47. jsmstrade
  • -
  • ⇢ ⇢ 48. japi
  • -
  • ⇢ ⇢ 49. perl-poetry
  • -
  • ⇢ ⇢ 50. muttdelay
  • -
  • ⇢ ⇢ 51. netdiff
  • -
  • ⇢ ⇢ 52. debroid
  • -
  • ⇢ ⇢ 53. hsbot
  • -
  • ⇢ ⇢ 54. cpuinfo
  • -
  • ⇢ ⇢ 55. template
  • -
  • ⇢ ⇢ 56. ipv6test
  • -
  • ⇢ ⇢ 57. awksite
  • -
  • ⇢ ⇢ 58. dyndns
  • +
  • ⇢ ⇢ 44. pwgrep
  • +
  • ⇢ ⇢ 45. perldaemon
  • +
  • ⇢ ⇢ 46. jsmstrade
  • +
  • ⇢ ⇢ 47. japi
  • +
  • ⇢ ⇢ 48. perl-poetry
  • +
  • ⇢ ⇢ 49. muttdelay
  • +
  • ⇢ ⇢ 50. netdiff
  • +
  • ⇢ ⇢ 51. debroid
  • +
  • ⇢ ⇢ 52. hsbot
  • +
  • ⇢ ⇢ 53. cpuinfo
  • +
  • ⇢ ⇢ 54. template
  • +
  • ⇢ ⇢ 55. ipv6test
  • +
  • ⇢ ⇢ 56. awksite
  • +
  • ⇢ ⇢ 57. dyndns
  • +
  • ⇢ ⇢ 58. vs-sim
  • +
  • ⇢ ⇢ 59. foo.zone

  • Overall Statistics




    Projects



    1. conf




    @@ -118,24 +119,26 @@
    ---

    -

    2. foo.zone


    +

    2. log4jbench





    -foo.zone: source code repository.
    +This is a Java-based benchmarking tool for measuring Log4j2 logging throughput under different configurations. It allows developers to compare synchronous vs. asynchronous logging strategies by testing five built-in configurations: immediate-flush sync, buffered sync, and async loggers with varying LMAX Disruptor ring buffer sizes (1K/4K/10K). The tool supports configurable thread counts, duration or event-count based testing, custom message sizes, and CSV export for analysis.

    -View on Codeberg
    -View on GitHub
    +The implementation uses a fat JAR built with Maven, requiring Java 17+. It's designed for realistic benchmarking—including warmup periods and optional Linux filesystem cache dropping between tests. This helps developers make informed decisions about Log4j2 configuration tradeoffs between latency (immediate flush), throughput (buffered/async), and memory usage (ring buffer sizing) for their specific workloads.
    +
    +View on Codeberg
    +View on GitHub

    ---

    @@ -148,7 +151,7 @@
  • 📈 Lines of Code: 3869
  • 📄 Lines of Documentation: 3700
  • 📅 Development Period: 2025-12-30 to 2026-01-06
  • -
  • 🏆 Score: 393.4 (combines code size and activity)
  • +
  • 🏆 Score: 144.0 (combines code size and activity)
  • ⚖️ License: No license found
  • 🧪 Status: Experimental (no releases yet)

  • @@ -173,7 +176,7 @@
  • 📈 Lines of Code: 452
  • 📄 Lines of Documentation: 80
  • 📅 Development Period: 2025-11-25 to 2025-11-25
  • -
  • 🏆 Score: 59.2 (combines code size and activity)
  • +
  • 🏆 Score: 43.8 (combines code size and activity)
  • ⚖️ License: No license found
  • 🏷️ Latest Release: v0.1.0 (2025-11-25)

  • @@ -196,7 +199,7 @@
  • 📈 Lines of Code: 28331
  • 📄 Lines of Documentation: 562
  • 📅 Development Period: 2025-08-01 to 2025-11-03
  • -
  • 🏆 Score: 41.9 (combines code size and activity)
  • +
  • 🏆 Score: 36.5 (combines code size and activity)
  • ⚖️ License: No license found
  • 🏷️ Latest Release: v0.15.3 (2025-11-03)

  • @@ -221,7 +224,7 @@
  • 📈 Lines of Code: 3408
  • 📄 Lines of Documentation: 82
  • 📅 Development Period: 2025-10-01 to 2025-10-24
  • -
  • 🏆 Score: 37.5 (combines code size and activity)
  • +
  • 🏆 Score: 32.1 (combines code size and activity)
  • ⚖️ License: No license found
  • 🏷️ Latest Release: v0.3.0 (2025-10-24)

  • @@ -237,16 +240,43 @@
    ---

    -

    7. gitsyncer


    +

    7. totalrecall


    +
    +
    +
    +totalrecall screenshot
    +
    +TotalRecall is a Go-based tool that generates comprehensive Anki flashcard materials for Bulgarian language learning. It creates high-quality audio pronunciations using OpenAI TTS (with 11 voice options), AI-generated contextual images via DALL-E, IPA phonetic transcriptions, and automatic Bulgarian-English translations. The tool supports both single-word and batch processing, making it efficient for building large vocabulary decks. It outputs Anki-compatible packages (APKG) with all media files bundled, ready for immediate import.
    +
    +totalrecall screenshot
    +
    +The project offers both a keyboard-driven GUI for interactive use and a CLI for automation, built with Go using the Cobra framework for command handling. It leverages OpenAI's APIs for both audio synthesis and image generation, creating memorable visual contexts with random art styles to enhance retention. The architecture follows clean Go package structure with separate internal packages for audio, image, config, and Anki format generation, making it maintainable and extensible for future enhancements.
    +
    +View on Codeberg
    +View on GitHub
    +
    +---
    +
    +

    8. gitsyncer




    @@ -260,33 +290,6 @@
    ---

    -

    8. totalrecall


    -
    -
    -
    -totalrecall screenshot
    -
    -TotalRecall is a Go-based tool that generates comprehensive Anki flashcard materials for Bulgarian language learning. It creates high-quality audio pronunciations using OpenAI TTS (with 11 voice options), AI-generated contextual images via DALL-E, IPA phonetic transcriptions, and automatic Bulgarian-English translations. The tool supports both single-word and batch processing, making it efficient for building large vocabulary decks. It outputs Anki-compatible packages (APKG) with all media files bundled, ready for immediate import.
    -
    -totalrecall screenshot
    -
    -The project offers both a keyboard-driven GUI for interactive use and a CLI for automation, built with Go using the Cobra framework for command handling. It leverages OpenAI's APIs for both audio synthesis and image generation, creating memorable visual contexts with random art styles to enhance retention. The architecture follows clean Go package structure with separate internal packages for audio, image, config, and Anki format generation, making it maintainable and extensible for future enhancements.
    -
    -View on Codeberg
    -View on GitHub
    -
    ----
    -

    9. foostats




    @@ -310,7 +313,32 @@
    ---

    -

    10. timr


    +

    10. gogios


    +
    +
    +
    +gogios screenshot
    +
    +Gogios is a minimalistic monitoring tool written in Go for small-scale infrastructure (e.g., personal servers and VMs). It executes standard Nagios/Icinga monitoring plugins via CRON jobs, tracks state changes in a JSON file, and sends email notifications through a local MTA only when check statuses change. Unlike full-featured monitoring solutions (Nagios, Icinga, Prometheus), Gogios deliberately avoids complexity—no databases, web UIs, clustering, or contact groups—making it ideal for simple, self-hosted environments with limited monitoring needs.
    +
    +The architecture is straightforward: JSON configuration defines checks (plugin paths, arguments, timeouts, dependencies, retries), a state directory persists check results between runs, and concurrent execution with configurable limits keeps things efficient. Key features include check dependencies (skip HTTP checks if ping fails), retry logic, stale alert detection, re-notification schedules, and support for remote checks via NRPE. A basic high-availability setup is achievable by running Gogios on two servers with staggered CRON intervals, though this results in duplicate notifications when both servers are operational—a deliberate trade-off for simplicity.
    +
    +View on Codeberg
    +View on GitHub
    +
    +---
    +
    +

    11. timr




    @@ -333,7 +361,7 @@
    ---

    -

    11. tasksamurai


    +

    12. tasksamurai




    @@ -360,7 +388,7 @@
    ---

    -

    12. ior


    +

    13. ior




    @@ -387,16 +415,16 @@
    ---

    -

    13. dtail


    +

    14. dtail




    @@ -414,7 +442,7 @@
    ---

    -

    14. gos


    +

    15. gos




    @@ -441,7 +469,7 @@
    ---

    -

    15. ds-sim


    +

    16. ds-sim




    @@ -466,15 +494,15 @@
    ---

    -

    16. gemtexter


    +

    17. gemtexter




    @@ -666,7 +669,7 @@
  • 📈 Lines of Code: 312
  • 📄 Lines of Documentation: 416
  • 📅 Development Period: 2013-03-22 to 2025-05-18
  • -
  • 🏆 Score: 2.7 (combines code size and activity)
  • +
  • 🏆 Score: 2.6 (combines code size and activity)
  • ⚖️ License: No license found
  • 🏷️ Latest Release: v1.0.0 (2023-04-29)

  • @@ -689,7 +692,7 @@
  • 📈 Lines of Code: 40
  • 📄 Lines of Documentation: 3
  • 📅 Development Period: 2023-12-31 to 2025-08-11
  • -
  • 🏆 Score: 2.6 (combines code size and activity)
  • +
  • 🏆 Score: 2.5 (combines code size and activity)
  • ⚖️ License: No license found
  • 🧪 Status: Experimental (no releases yet)

  • @@ -774,31 +777,7 @@
    ---

    -

    29. photoalbum


    -
    -
    -⚠️ **Notice**: This project appears to be finished, obsolete, or no longer maintained. Last meaningful activity was over 2 years ago. Use at your own risk.
    -
    -**photoalbum** is a minimal Bash-based static site generator specifically designed for creating web photo albums on Unix-like systems. It transforms a directory of photos into a pure HTML+CSS website without any JavaScript, making it lightweight, fast, and accessible. The tool uses ImageMagick's convert utility for image processing and employs Bash-HTML template files that users can customize to match their preferences.
    -
    -The architecture is straightforward and Unix-philosophy driven: users configure a source directory containing photos via an photoalbumrc configuration file, run the generation command, and receive a fully static ./dist directory ready for deployment to any web server. This approach is useful for users who want a simple, dependency-light solution for sharing photo collections online without the overhead of dynamic web applications, databases, or JavaScript frameworks—just clean, static HTML that works everywhere.
    -
    -View on Codeberg
    -View on GitHub
    -
    ----
    -
    -

    30. ioriot


    +

    29. ioriot




    @@ -824,7 +803,7 @@
    ---

    -

    31. sway-autorotate


    +

    30. sway-autorotate