blog

git clone https://git.ce9e.org/blog.git

commit
76b1759fda5967a23bda24b8f7060b85a13861f8
parent
399ac5a90547c49309ad30dba97ac3730a068ba8
Author
Tobias Bengfort <tobias.bengfort@posteo.de>
Date
2023-11-03 12:30
merge yml into md

Diffstat

M .gitignore 2 +-
M Makefile 20 ++++++++------------
D _content/index.md 0
M _content/posts/2014-04-19-discussions-without-results/index.md 6 ++++++
D _content/posts/2014-04-19-discussions-without-results/index.yml 3 ---
M _content/posts/2014-09-09-patch-theory/index.md 6 ++++++
D _content/posts/2014-09-09-patch-theory/index.yml 3 ---
M _content/posts/2015-03-20-resize-partition-on-crypted-disk/index.md 6 ++++++
D _content/posts/2015-03-20-resize-partition-on-crypted-disk/index.yml 3 ---
M _content/posts/2016-03-05-color-contrast/index.md 6 ++++++
D _content/posts/2016-03-05-color-contrast/index.yml 3 ---
M _content/posts/2016-06-04-rtl-css/index.md 6 ++++++
D _content/posts/2016-06-04-rtl-css/index.yml 3 ---
M _content/posts/2016-12-21-what-is-design/index.md 6 ++++++
D _content/posts/2016-12-21-what-is-design/index.yml 3 ---
M _content/posts/2016-12-22-web-is-not-visual/index.md 6 ++++++
D _content/posts/2016-12-22-web-is-not-visual/index.yml 3 ---
M _content/posts/2017-03-16-embedding/index.md 6 ++++++
D _content/posts/2017-03-16-embedding/index.yml 3 ---
M _content/posts/2017-04-18-ghost-in-the-shell-review/index.md 6 ++++++
D _content/posts/2017-04-18-ghost-in-the-shell-review/index.yml 3 ---
M _content/posts/2017-04-21-math-pairs/index.md 6 ++++++
D _content/posts/2017-04-21-math-pairs/index.yml 3 ---
M _content/posts/2017-06-26-simple-language/index.md 6 ++++++
D _content/posts/2017-06-26-simple-language/index.yml 3 ---
M _content/posts/2017-09-04-rationality/index.md 6 ++++++
D _content/posts/2017-09-04-rationality/index.yml 3 ---
M _content/posts/2017-11-05-TDD/index.md 6 ++++++
D _content/posts/2017-11-05-TDD/index.yml 3 ---
M _content/posts/2017-11-20-exponential/index.md 6 ++++++
D _content/posts/2017-11-20-exponential/index.yml 3 ---
M _content/posts/2017-12-18-personalization/index.md 6 ++++++
D _content/posts/2017-12-18-personalization/index.yml 3 ---
M _content/posts/2017-12-30-icons/index.md 6 ++++++
D _content/posts/2017-12-30-icons/index.yml 3 ---
M _content/posts/2018-01-14-consensus-meetings/index.md 6 ++++++
D _content/posts/2018-01-14-consensus-meetings/index.yml 3 ---
M _content/posts/2018-03-25-pullquotes/index.md 6 ++++++
D _content/posts/2018-03-25-pullquotes/index.yml 3 ---
M _content/posts/2018-05-28-zen/index.md 6 ++++++
D _content/posts/2018-05-28-zen/index.yml 3 ---
M _content/posts/2018-06-21-pc-democracy/index.md 6 ++++++
D _content/posts/2018-06-21-pc-democracy/index.yml 3 ---
M _content/posts/2018-09-01-git-nav/index.md 6 ++++++
D _content/posts/2018-09-01-git-nav/index.yml 3 ---
M _content/posts/2018-10-07-legitimacy/index.md 6 ++++++
D _content/posts/2018-10-07-legitimacy/index.yml 3 ---
M _content/posts/2018-10-28-aria-quirks/index.md 6 ++++++
D _content/posts/2018-10-28-aria-quirks/index.yml 3 ---
M _content/posts/2018-12-07-internet-energy-footprint/index.md 7 +++++++
D _content/posts/2018-12-07-internet-energy-footprint/index.yml 4 ----
M _content/posts/2019-01-13-visual/index.md 6 ++++++
D _content/posts/2019-01-13-visual/index.yml 3 ---
M _content/posts/2019-05-02-debian-packages/index.md 6 ++++++
D _content/posts/2019-05-02-debian-packages/index.yml 3 ---
M _content/posts/2019-06-24-terminal-colors/index.md 6 ++++++
D _content/posts/2019-06-24-terminal-colors/index.yml 3 ---
M _content/posts/2020-01-20-open-source/index.md 6 ++++++
D _content/posts/2020-01-20-open-source/index.yml 3 ---
M _content/posts/2020-05-16-pad/index.md 6 ++++++
D _content/posts/2020-05-16-pad/index.yml 3 ---
M _content/posts/2020-05-18-button-states/index.md 6 ++++++
D _content/posts/2020-05-18-button-states/index.yml 3 ---
M _content/posts/2020-07-30-conservative-stories/index.md 6 ++++++
D _content/posts/2020-07-30-conservative-stories/index.yml 3 ---
M _content/posts/2020-10-10-thunderbird/index.md 6 ++++++
D _content/posts/2020-10-10-thunderbird/index.yml 3 ---
M _content/posts/2020-11-07-notes/index.md 5 +++++
D _content/posts/2020-11-07-notes/index.yml 2 --
M _content/posts/2020-11-21-file-type-101/index.md 7 +++++++
D _content/posts/2020-11-21-file-type-101/index.yml 4 ----
M _content/posts/2020-12-28-wayland-wm/index.md 7 +++++++
D _content/posts/2020-12-28-wayland-wm/index.yml 4 ----
M _content/posts/2021-04-03-zero-cost-optimizations/index.md 6 ++++++
D _content/posts/2021-04-03-zero-cost-optimizations/index.yml 3 ---
M _content/posts/2021-04-28-native-date-pickers/index.md 6 ++++++
D _content/posts/2021-04-28-native-date-pickers/index.yml 3 ---
M _content/posts/2021-07-04-electric-ducks/index.md 6 ++++++
D _content/posts/2021-07-04-electric-ducks/index.yml 3 ---
M _content/posts/2021-08-20-linux-service-architecture/index.md 6 ++++++
D _content/posts/2021-08-20-linux-service-architecture/index.yml 3 ---
M _content/posts/2022-02-20-minimalism/index.md 6 ++++++
D _content/posts/2022-02-20-minimalism/index.yml 3 ---
M _content/posts/2022-06-25-hard-work/index.md 6 ++++++
D _content/posts/2022-06-25-hard-work/index.yml 3 ---
M _content/posts/2022-08-06-basic-income/index.md 6 ++++++
D _content/posts/2022-08-06-basic-income/index.yml 3 ---
M _content/posts/2022-09-10-contrast-algorithms/index.md 6 ++++++
D _content/posts/2022-09-10-contrast-algorithms/index.yml 3 ---
M _content/posts/2022-12-03-my-window-manager-setup/index.md 6 ++++++
D _content/posts/2022-12-03-my-window-manager-setup/index.yml 3 ---
M _content/posts/2023-01-15-state-of-wayland/index.md 6 ++++++
D _content/posts/2023-01-15-state-of-wayland/index.yml 3 ---
M _content/posts/2023-01-29-python-async-loops/index.md 6 ++++++
D _content/posts/2023-01-29-python-async-loops/index.yml 3 ---
M _content/posts/2023-02-26-flow-relative-layout/index.md 6 ++++++
D _content/posts/2023-02-26-flow-relative-layout/index.yml 3 ---
M _content/posts/2023-03-30-tui/index.md 6 ++++++
D _content/posts/2023-03-30-tui/index.yml 3 ---
M _content/posts/2023-07-19-crime-storytelling/index.md 6 ++++++
D _content/posts/2023-07-19-crime-storytelling/index.yml 3 ---
M _content/posts/2023-08-07-arabic-typography/index.md 6 ++++++
D _content/posts/2023-08-07-arabic-typography/index.yml 3 ---
M _content/posts/2023-09-28-mfa/index.md 6 ++++++
D _content/posts/2023-09-28-mfa/index.yml 3 ---
M _content/posts/2023-10-13-logging/index.md 6 ++++++
D _content/posts/2023-10-13-logging/index.yml 3 ---
M _content/posts/2023-10-29-jmap-calendars/index.md 6 ++++++
D _content/posts/2023-10-29-jmap-calendars/index.yml 3 ---
M posts.sh 10 ++++++----

110 files changed, 335 insertions, 178 deletions


diff --git a/.gitignore b/.gitignore

@@ -2,4 +2,4 @@ build/**/*.html
    2     2 build/**/*.md
    3     3 build/**/*.css
    4     4 build/feed.xml
    5    -1 _content/index.yml
   -1     5 _content/index.md

diff --git a/Makefile b/Makefile

@@ -1,6 +1,6 @@
    1     1 .POSIX:
    2    -1 PAGES := $(shell find _content -name 'index.yml' | sed 's/^_content/build/;s/yml$$/html/')
    3    -1 PAGES_MD := $(shell find _content -name 'index.yml' | sed 's/^_content/build/;s/yml$$/md/')
   -1     2 PAGES := $(shell find _content -name 'index.md' | sed 's/^_content/build/;s/md$$/html/')
   -1     3 PAGES_MD := $(shell find _content -name 'index.md' | sed 's/^_content/build/')
    4     4 IMG := $(shell find _content -regex '.*\.\(png\|gif\|jpg\)$$' | sed 's/^_content/build/')
    5     5 
    6     6 .PHONY: all
@@ -10,18 +10,14 @@ all: build/index.html $(PAGES) $(PAGES_MD) build/feed.xml build/static/style.css
   10    10 push: all
   11    11 	rsync --delete -vrlc build/ ce9e:/var/www/blog
   12    12 
   13    -1 build/%.md: _content/%.md _content/%.yml
   14    -1 	@mkdir -p $$(dirname $@)
   15    -1 	@echo '---' > $@
   16    -1 	cat _content/$*.yml >> $@
   17    -1 	@echo '---' >> $@
   18    -1 	@echo >> $@
   19    -1 	cat $< >> $@
   20    -1 
   21    13 build/%.html: build/%.md _templates/base.html
   22    14 	pandoc --template _templates/base.html $< -o $@
   23    15 	sed -i 's/<tr class="header">/<tr>/g' $@
   24    16 
   -1    17 build/%.md: _content/%.md
   -1    18 	@mkdir -p $$(dirname $@)
   -1    19 	ln $< $@
   -1    20 
   25    21 build/%.png: _content/%.png
   26    22 	ln $< $@
   27    23 
@@ -31,7 +27,7 @@ build/%.jpg: _content/%.jpg
   31    27 build/%.gif: _content/%.gif
   32    28 	ln $< $@
   33    29 
   34    -1 _content/index.yml: _content/posts/*/index.yml posts.sh
   -1    30 _content/index.md: _content/posts/*/index.md posts.sh
   35    31 	./posts.sh > $@
   36    32 
   37    33 build/feed.xml: build/index.md _templates/feed.xml
@@ -45,4 +41,4 @@ build/static/style.css: style/*.scss style/components/*.scss
   45    41 clean:
   46    42 	rm -f $(PAGES)
   47    43 	rm -f $(PAGES_MD)
   48    -1 	rm -f _content/index.yml
   -1    44 	rm -f _content/index.md

diff --git a/_content/index.md b/_content/index.md

diff --git a/_content/posts/2014-04-19-discussions-without-results/index.md b/_content/posts/2014-04-19-discussions-without-results/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Two interpretations of discussions without results
   -1     3 date: 2014-04-19
   -1     4 tags: [discussion]
   -1     5 ---
   -1     6 
    1     7 > Always remember that to argue, and win, is to break down the reality of the
    2     8 > person you are arguing against. It is painful to lose your reality, so be
    3     9 > kind, even if you are right. -- Haruki Murakami

diff --git a/_content/posts/2014-04-19-discussions-without-results/index.yml b/_content/posts/2014-04-19-discussions-without-results/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Two interpretations of discussions without results
    2    -1 date: 2014-04-19
    3    -1 tags: [discussion]

diff --git a/_content/posts/2014-09-09-patch-theory/index.md b/_content/posts/2014-09-09-patch-theory/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 date: 2014-09-09
   -1     3 title: Patch Theory
   -1     4 tags: [math, code]
   -1     5 ---
   -1     6 
    1     7 ## Introduction
    2     8 
    3     9 Versioning systems have been important tools in software development

diff --git a/_content/posts/2014-09-09-patch-theory/index.yml b/_content/posts/2014-09-09-patch-theory/index.yml

@@ -1,3 +0,0 @@
    1    -1 date: 2014-09-09
    2    -1 title: Patch Theory
    3    -1 tags: [math, code]

diff --git a/_content/posts/2015-03-20-resize-partition-on-crypted-disk/index.md b/_content/posts/2015-03-20-resize-partition-on-crypted-disk/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Resize partitions on an encrypted disc
   -1     3 date: 2015-03-20
   -1     4 tags: [code, linux]
   -1     5 ---
   -1     6 
    1     7 Recently I installed a fresh debian jessie on my laptop.  I used this
    2     8 opportunity not just to switch to the next debian version, I also switched to
    3     9 64 bit and encrypted my disc.  I had no experience with encrypted disc setups

diff --git a/_content/posts/2015-03-20-resize-partition-on-crypted-disk/index.yml b/_content/posts/2015-03-20-resize-partition-on-crypted-disk/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Resize partitions on an encrypted disc
    2    -1 date: 2015-03-20
    3    -1 tags: [code, linux]

diff --git a/_content/posts/2016-03-05-color-contrast/index.md b/_content/posts/2016-03-05-color-contrast/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Color contrast in web design
   -1     3 date: 2016-03-05
   -1     4 tags: [code, css, a11y, design, math, color]
   -1     5 ---
   -1     6 
    1     7 Color contrast is essential for legibility in web design. The web content
    2     8 accessibility guidelines (WCAG) therefore include [strict requirements on
    3     9 minimum contrast](https://www.w3.org/TR/WCAG20/#visual-audio-contrast).

diff --git a/_content/posts/2016-03-05-color-contrast/index.yml b/_content/posts/2016-03-05-color-contrast/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Color contrast in web design
    2    -1 date: 2016-03-05
    3    -1 tags: [code, css, a11y, design, math, color]

diff --git a/_content/posts/2016-06-04-rtl-css/index.md b/_content/posts/2016-06-04-rtl-css/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Automatically creating RTL CSS
   -1     3 date: 2016-06-04
   -1     4 tags: [code, css, a11y]
   -1     5 ---
   -1     6 
    1     7 ## What is it and why does it concern me?
    2     8 
    3     9 Most western scripts are read from left to right (LTR), so this is what many

diff --git a/_content/posts/2016-06-04-rtl-css/index.yml b/_content/posts/2016-06-04-rtl-css/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Automatically creating RTL CSS
    2    -1 date: 2016-06-04
    3    -1 tags: [code, css, a11y]

diff --git a/_content/posts/2016-12-21-what-is-design/index.md b/_content/posts/2016-12-21-what-is-design/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: What is design?
   -1     3 date: 2016-12-21
   -1     4 tags: [design]
   -1     5 ---
   -1     6 
    1     7 > Context, relationships, implications.\
    2     8 > — [Heydon Pickering](http://www.heydonworks.com/article/designer-is-not-a-profession)
    3     9 

diff --git a/_content/posts/2016-12-21-what-is-design/index.yml b/_content/posts/2016-12-21-what-is-design/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: What is design?
    2    -1 date: 2016-12-21
    3    -1 tags: [design]

diff --git a/_content/posts/2016-12-22-web-is-not-visual/index.md b/_content/posts/2016-12-22-web-is-not-visual/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: The web is not a visual medium
   -1     3 date: 2016-12-22
   -1     4 tags: [html, css, design]
   -1     5 ---
   -1     6 
    1     7 Let me tell you a tale of the web. The story of how it was created as
    2     8 the first universally accessible medium. I am not sure if this is actually what
    3     9 happened. But a lot of things start to make sense if you look at them from this

diff --git a/_content/posts/2016-12-22-web-is-not-visual/index.yml b/_content/posts/2016-12-22-web-is-not-visual/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: The web is not a visual medium
    2    -1 date: 2016-12-22
    3    -1 tags: [html, css, design]

diff --git a/_content/posts/2017-03-16-embedding/index.md b/_content/posts/2017-03-16-embedding/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Embedding
   -1     3 date: 2017-03-16
   -1     4 tags: [code, design]
   -1     5 ---
   -1     6 
    1     7 A while ago I worked on a project where we wanted to allow to embed our web
    2     8 application into client's websites. The goal was to lower the barrier of
    3     9 entrance, especially for people who already used our client's websites

diff --git a/_content/posts/2017-03-16-embedding/index.yml b/_content/posts/2017-03-16-embedding/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Embedding
    2    -1 date: 2017-03-16
    3    -1 tags: [code, design]

diff --git a/_content/posts/2017-04-18-ghost-in-the-shell-review/index.md b/_content/posts/2017-04-18-ghost-in-the-shell-review/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Ghost in the shell review
   -1     3 date: 2017-04-18
   -1     4 tags: [philosophy, review]
   -1     5 ---
   -1     6 
    1     7 I recently went to watch the new ghost in the shell (GITS) movie starring
    2     8 Scarlett Johansson. I was actually positively surprised. Unfortunately, I could
    3     9 not find any good analysis of it online. They either did a standard Hollywood

diff --git a/_content/posts/2017-04-18-ghost-in-the-shell-review/index.yml b/_content/posts/2017-04-18-ghost-in-the-shell-review/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Ghost in the shell review
    2    -1 date: 2017-04-18
    3    -1 tags: [philosophy, review]

diff --git a/_content/posts/2017-04-21-math-pairs/index.md b/_content/posts/2017-04-21-math-pairs/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Pair up!
   -1     3 date: 2017-04-21
   -1     4 tags: [math]
   -1     5 ---
   -1     6 
    1     7 Recently I stumbled upon a question that tickled my mathematical senses. It
    2     8 seemed simple enough but not too simple:
    3     9 

diff --git a/_content/posts/2017-04-21-math-pairs/index.yml b/_content/posts/2017-04-21-math-pairs/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Pair up!
    2    -1 date: 2017-04-21
    3    -1 tags: [math]

diff --git a/_content/posts/2017-06-26-simple-language/index.md b/_content/posts/2017-06-26-simple-language/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Towards simple language on the web
   -1     3 date: 2017-06-26
   -1     4 tags: [a11y]
   -1     5 ---
   -1     6 
    1     7 It has been two years now that I was tasked with creating a website. One detail
    2     8 of this project was that it would have a "simple German" translation in
    3     9 addition to a German one. Little did I know back then that this was the

diff --git a/_content/posts/2017-06-26-simple-language/index.yml b/_content/posts/2017-06-26-simple-language/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Towards simple language on the web
    2    -1 date: 2017-06-26
    3    -1 tags: [a11y]

diff --git a/_content/posts/2017-09-04-rationality/index.md b/_content/posts/2017-09-04-rationality/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Debates on Science in Recent Centuries
   -1     3 date: 2017-09-04
   -1     4 tags: [philosophy, discussion]
   -1     5 ---
   -1     6 
    1     7 > I want to argue for a doctrine and practice of objectivity that privileges
    2     8 > contestation, deconstruction, passionate construction, webbed connections,
    3     9 > and hope for transformation of systems of knowledge and ways of seeing.

diff --git a/_content/posts/2017-09-04-rationality/index.yml b/_content/posts/2017-09-04-rationality/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Debates on Science in Recent Centuries
    2    -1 date: 2017-09-04
    3    -1 tags: [philosophy, discussion]

diff --git a/_content/posts/2017-11-05-TDD/index.md b/_content/posts/2017-11-05-TDD/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: What is programming?
   -1     3 date: 2017-11-05
   -1     4 tags: [code, philosophy]
   -1     5 ---
   -1     6 
    1     7 > The proper use of comments is to compensate for our failure to express ourself in code.  
    2     8 > — Robert C. Martin, Clean Code
    3     9 

diff --git a/_content/posts/2017-11-05-TDD/index.yml b/_content/posts/2017-11-05-TDD/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: What is programming?
    2    -1 date: 2017-11-05
    3    -1 tags: [code, philosophy]

diff --git a/_content/posts/2017-11-20-exponential/index.md b/_content/posts/2017-11-20-exponential/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Please stop talking about exponential growth
   -1     3 date: 2017-11-20
   -1     4 tags: [philosophy, math]
   -1     5 ---
   -1     6 
    1     7 How often do you read sentences like "the problem is growing exponentially" or
    2     8 "technological progress is exponential"? Do you understand what this should
    3     9 tell you? I don't.

diff --git a/_content/posts/2017-11-20-exponential/index.yml b/_content/posts/2017-11-20-exponential/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Please stop talking about exponential growth
    2    -1 date: 2017-11-20
    3    -1 tags: [philosophy, math]

diff --git a/_content/posts/2017-12-18-personalization/index.md b/_content/posts/2017-12-18-personalization/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: CSS versus personalization
   -1     3 date: 2017-12-28
   -1     4 tags: [code, css, a11y]
   -1     5 ---
   -1     6 
    1     7 The W3C's [Cognitive Accessibility Roadmap and Gap
    2     8 Analysis](https://www.w3.org/TR/coga-gap-analysis/) talks quite a bit about
    3     9 personalization of UI. This means that users should be able to choose how key

diff --git a/_content/posts/2017-12-18-personalization/index.yml b/_content/posts/2017-12-18-personalization/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: CSS versus personalization
    2    -1 date: 2017-12-28
    3    -1 tags: [code, css, a11y]

diff --git a/_content/posts/2017-12-30-icons/index.md b/_content/posts/2017-12-30-icons/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: A proposal for accessible icons on the web
   -1     3 date: 2017-12-30
   -1     4 tags: [code, html, a11y]
   -1     5 ---
   -1     6 
    1     7 Most websites today use some kind of icons. What is surprising about this is
    2     8 that HTML does not have specific markup for this. Making icons accessible is
    3     9 therefore not always straight forward.

diff --git a/_content/posts/2017-12-30-icons/index.yml b/_content/posts/2017-12-30-icons/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: A proposal for accessible icons on the web
    2    -1 date: 2017-12-30
    3    -1 tags: [code, html, a11y]

diff --git a/_content/posts/2018-01-14-consensus-meetings/index.md b/_content/posts/2018-01-14-consensus-meetings/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Effective decisions with consensus
   -1     3 date: 2018-01-14
   -1     4 tags: [discussion]
   -1     5 ---
   -1     6 
    1     7 I often sit in ineffective meetings. I am bored and annoyed. I am not bored and
    2     8 annoyed because it is a meetings or because it takes a lot of time. I am bored
    3     9 and annoyed because it is ineffective.

diff --git a/_content/posts/2018-01-14-consensus-meetings/index.yml b/_content/posts/2018-01-14-consensus-meetings/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Effective decisions with consensus
    2    -1 date: 2018-01-14
    3    -1 tags: [discussion]

diff --git a/_content/posts/2018-03-25-pullquotes/index.md b/_content/posts/2018-03-25-pullquotes/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Accessible pull quotes
   -1     3 date: 2018-03-25
   -1     4 tags: [code, html, a11y]
   -1     5 ---
   -1     6 
    1     7 Pull quotes are small excerpts from a text that are repeated on the side of
    2     8 that text. They are often used with interviews or longer articles to draw in
    3     9 attention.

diff --git a/_content/posts/2018-03-25-pullquotes/index.yml b/_content/posts/2018-03-25-pullquotes/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Accessible pull quotes
    2    -1 date: 2018-03-25
    3    -1 tags: [code, html, a11y]

diff --git a/_content/posts/2018-05-28-zen/index.md b/_content/posts/2018-05-28-zen/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Review of "Zen and the Art of Motorcycle Maintenance"
   -1     3 date: 2018-05-28
   -1     4 tags: [philosophy, code, review]
   -1     5 ---
   -1     6 
    1     7 You may have come across any number of articles with the following pattern:
    2     8 
    3     9 -	[Zen and the Art of Software Maintenance](https://dzone.com/articles/zen-and-the-art-of-software-maintenance)

diff --git a/_content/posts/2018-05-28-zen/index.yml b/_content/posts/2018-05-28-zen/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Review of "Zen and the Art of Motorcycle Maintenance"
    2    -1 date: 2018-05-28
    3    -1 tags: [philosophy, code, review]

diff --git a/_content/posts/2018-06-21-pc-democracy/index.md b/_content/posts/2018-06-21-pc-democracy/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Why PC is not quite the end of democracy
   -1     3 date: 2018-06-21
   -1     4 tags: [philosophy, discussion]
   -1     5 ---
   -1     6 
    1     7 In his article "Drei normative Modelle der Demokratie: Zum Begriff
    2     8 deliberativer Politik.", Jürgen Habermas explains that there are two different
    3     9 concepts for democracy. I will call the first one the "vote"-concept. In this

diff --git a/_content/posts/2018-06-21-pc-democracy/index.yml b/_content/posts/2018-06-21-pc-democracy/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Why PC is not quite the end of democracy
    2    -1 date: 2018-06-21
    3    -1 tags: [philosophy, discussion]

diff --git a/_content/posts/2018-09-01-git-nav/index.md b/_content/posts/2018-09-01-git-nav/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Combining git navigation commands
   -1     3 date: 2018-09-01
   -1     4 tags: [code]
   -1     5 ---
   -1     6 
    1     7 Heres a quick git tip:
    2     8 
    3     9 Everyone who uses git probably knows the commands `git checkout` and `git

diff --git a/_content/posts/2018-09-01-git-nav/index.yml b/_content/posts/2018-09-01-git-nav/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Combining git navigation commands
    2    -1 date: 2018-09-01
    3    -1 tags: [code]

diff --git a/_content/posts/2018-10-07-legitimacy/index.md b/_content/posts/2018-10-07-legitimacy/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Legitimacy
   -1     3 date: 2018-10-07
   -1     4 tags: [philosophy, discussion]
   -1     5 ---
   -1     6 
    1     7 The concept if legitimacy is central in political science. However, after
    2     8 reading about it, I found out that it is much more complicated than I had
    3     9 anticipated.

diff --git a/_content/posts/2018-10-07-legitimacy/index.yml b/_content/posts/2018-10-07-legitimacy/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Legitimacy
    2    -1 date: 2018-10-07
    3    -1 tags: [philosophy, discussion]

diff --git a/_content/posts/2018-10-28-aria-quirks/index.md b/_content/posts/2018-10-28-aria-quirks/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: 5 things I learned about WAI-ARIA (while implementing it myself)
   -1     3 date: 2018-10-28
   -1     4 tags: [code, html, a11y]
   -1     5 ---
   -1     6 
    1     7 *I initially submitted this as a talk. Since it was not accepted I turned
    2     8 it into this blog post instead.*
    3     9 

diff --git a/_content/posts/2018-10-28-aria-quirks/index.yml b/_content/posts/2018-10-28-aria-quirks/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: 5 things I learned about WAI-ARIA (while implementing it myself)
    2    -1 date: 2018-10-28
    3    -1 tags: [code, html, a11y]

diff --git a/_content/posts/2018-12-07-internet-energy-footprint/index.md b/_content/posts/2018-12-07-internet-energy-footprint/index.md

@@ -1,3 +1,10 @@
   -1     1 ---
   -1     2 title: How really to improve the internet's energy footprint
   -1     3 date: 2018-12-07
   -1     4 tags: [code]
   -1     5 
   -1     6 ---
   -1     7 
    1     8 The internet today uses [more energy than global air
    2     9 travel](https://internethealthreport.org/2018/the-internet-uses-more-electricity-than/).
    3    10 Recently, low-tech magazin has published [a great

diff --git a/_content/posts/2018-12-07-internet-energy-footprint/index.yml b/_content/posts/2018-12-07-internet-energy-footprint/index.yml

@@ -1,4 +0,0 @@
    1    -1 title: How really to improve the internet's energy footprint
    2    -1 date: 2018-12-07
    3    -1 tags: [code]
    4    -1 

diff --git a/_content/posts/2019-01-13-visual/index.md b/_content/posts/2019-01-13-visual/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Why so visual?
   -1     3 date: 2019-01-13
   -1     4 tags: [design, a11y]
   -1     5 ---
   -1     6 
    1     7 One thing I often notice when working with web designers is that they focus
    2     8 mostly on visual aspects. I have discussed before that the web is [not a
    3     9 visual medium](https://blog.ce9e.org/posts/2016-12-22-web-is-not-visual/).

diff --git a/_content/posts/2019-01-13-visual/index.yml b/_content/posts/2019-01-13-visual/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Why so visual?
    2    -1 date: 2019-01-13
    3    -1 tags: [design, a11y]

diff --git a/_content/posts/2019-05-02-debian-packages/index.md b/_content/posts/2019-05-02-debian-packages/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: How to create a debian package from scratch
   -1     3 date: 2019-05-02
   -1     4 tags: [code, linux]
   -1     5 ---
   -1     6 
    1     7 The process of creating a debian package is, admittedly, tedious. However, that
    2     8 statement only applies if your goal is to create a *real* debian package that
    3     9 passes all lintian checks and could be included in the official repositories.

diff --git a/_content/posts/2019-05-02-debian-packages/index.yml b/_content/posts/2019-05-02-debian-packages/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: How to create a debian package from scratch
    2    -1 date: 2019-05-02
    3    -1 tags: [code, linux]

diff --git a/_content/posts/2019-06-24-terminal-colors/index.md b/_content/posts/2019-06-24-terminal-colors/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: How (not) to build terminal color schemes
   -1     3 date: 2019-06-02
   -1     4 tags: [code, linux, a11y, design, color]
   -1     5 ---
   -1     6 
    1     7 While working on the terminal, I often end up with barely readable text like
    2     8 this:
    3     9 

diff --git a/_content/posts/2019-06-24-terminal-colors/index.yml b/_content/posts/2019-06-24-terminal-colors/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: How (not) to build terminal color schemes
    2    -1 date: 2019-06-02
    3    -1 tags: [code, linux, a11y, design, color]

diff --git a/_content/posts/2020-01-20-open-source/index.md b/_content/posts/2020-01-20-open-source/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Not all open source projects are alike
   -1     3 date: 2020-01-20
   -1     4 tags: [code, open-source]
   -1     5 ---
   -1     6 
    1     7 > Somewhere in the middle in between the simple code dump and Firefox, open
    2     8 > source tends to sink into a quagmire where it looks like a product but it's
    3     9 > not supported like a product. And the only good answers then seem to be "go

diff --git a/_content/posts/2020-01-20-open-source/index.yml b/_content/posts/2020-01-20-open-source/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Not all open source projects are alike
    2    -1 date: 2020-01-20
    3    -1 tags: [code, open-source]

diff --git a/_content/posts/2020-05-16-pad/index.md b/_content/posts/2020-05-16-pad/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Yet another etherpad clone
   -1     3 date: 2020-05-16
   -1     4 tags: [code]
   -1     5 ---
   -1     6 
    1     7 When etherpad came out in 2008 it blew my mind. In a way it was one of the few
    2     8 successful attempts to bring the [unix
    3     9 philosophy](http://www.catb.org/~esr/writings/taoup/html/ch01s06.html) to the

diff --git a/_content/posts/2020-05-16-pad/index.yml b/_content/posts/2020-05-16-pad/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Yet another etherpad clone
    2    -1 date: 2020-05-16
    3    -1 tags: [code]

diff --git a/_content/posts/2020-05-18-button-states/index.md b/_content/posts/2020-05-18-button-states/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Case study of button states
   -1     3 date: 2020-05-18
   -1     4 tags: [code, html, design]
   -1     5 ---
   -1     6 
    1     7 I still don't really have a good idea about how to style different button
    2     8 states. So I did a quick comparison of some toolkits from different eras.
    3     9 

diff --git a/_content/posts/2020-05-18-button-states/index.yml b/_content/posts/2020-05-18-button-states/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Case study of button states
    2    -1 date: 2020-05-18
    3    -1 tags: [code, html, design]

diff --git a/_content/posts/2020-07-30-conservative-stories/index.md b/_content/posts/2020-07-30-conservative-stories/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: The good guys are always conservative
   -1     3 date: 2020-07-30
   -1     4 tags: [philosophy, storytelling]
   -1     5 ---
   -1     6 
    1     7 Often in movies the villains have a point but then use bad actions to achieve
    2     8 their otherwise legitimate goals. Think of The Dark Knight Rises, the Red Lotus
    3     9 arc in Legend of Korra or basically any Marvel movie. This may seem like lazy

diff --git a/_content/posts/2020-07-30-conservative-stories/index.yml b/_content/posts/2020-07-30-conservative-stories/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: The good guys are always conservative
    2    -1 date: 2020-07-30
    3    -1 tags: [philosophy, storytelling]

diff --git a/_content/posts/2020-10-10-thunderbird/index.md b/_content/posts/2020-10-10-thunderbird/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: My reaction to Thunderbird 78
   -1     3 date: 2020-10-10
   -1     4 tags: [code, design]
   -1     5 ---
   -1     6 
    1     7 Thunderbird 78 was accepted into Debian stable on Tuesday. Since then I
    2     8 basically worked full time on that update. First because I had to migrate PGP
    3     9 support from Enigmail to the new built-in mechanism and second because I had to

diff --git a/_content/posts/2020-10-10-thunderbird/index.yml b/_content/posts/2020-10-10-thunderbird/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: My reaction to Thunderbird 78
    2    -1 date: 2020-10-10
    3    -1 tags: [code, design]

diff --git a/_content/posts/2020-11-07-notes/index.md b/_content/posts/2020-11-07-notes/index.md

@@ -1,3 +1,8 @@
   -1     1 ---
   -1     2 title: How I keep track of my notes
   -1     3 date: 2020-11-07
   -1     4 ---
   -1     5 
    1     6 Is it just me or is hackernews full of note-taking apps lately? I thought I
    2     7 could hop on the train and explain how I keep track of my notes. So here it is:
    3     8 

diff --git a/_content/posts/2020-11-07-notes/index.yml b/_content/posts/2020-11-07-notes/index.yml

@@ -1,2 +0,0 @@
    1    -1 title: How I keep track of my notes
    2    -1 date: 2020-11-07

diff --git a/_content/posts/2020-11-21-file-type-101/index.md b/_content/posts/2020-11-21-file-type-101/index.md

@@ -1,3 +1,10 @@
   -1     1 ---
   -1     2 title: Understanding files 101
   -1     3 date: 2020-11-21
   -1     4 tags: [code]
   -1     5 
   -1     6 ---
   -1     7 
    1     8 One topic that seems to always stay relevant to me is the divide between
    2     9 software developers and regular users. The common approach seems to be that
    3    10 regular users are not trusted to understand many fundamental ideas of computers

diff --git a/_content/posts/2020-11-21-file-type-101/index.yml b/_content/posts/2020-11-21-file-type-101/index.yml

@@ -1,4 +0,0 @@
    1    -1 title: Understanding files 101
    2    -1 date: 2020-11-21
    3    -1 tags: [code]
    4    -1 

diff --git a/_content/posts/2020-12-28-wayland-wm/index.md b/_content/posts/2020-12-28-wayland-wm/index.md

@@ -1,3 +1,10 @@
   -1     1 ---
   -1     2 title: Writing a wayland window manager in 2020
   -1     3 date: 2020-12-28
   -1     4 tags: [code, linux, wayland]
   -1     5 
   -1     6 ---
   -1     7 
    1     8 If a voice in your had is currently screaming "THERE ARE NO WINDOW MANAGERS IN
    2     9 WAYLAND, THEY ARE CALLED COMPOSITORS" you swallowed the bait. That is exactly
    3    10 what I want to write about. But let me start at the beginning:

diff --git a/_content/posts/2020-12-28-wayland-wm/index.yml b/_content/posts/2020-12-28-wayland-wm/index.yml

@@ -1,4 +0,0 @@
    1    -1 title: Writing a wayland window manager in 2020
    2    -1 date: 2020-12-28
    3    -1 tags: [code, linux, wayland]
    4    -1 

diff --git a/_content/posts/2021-04-03-zero-cost-optimizations/index.md b/_content/posts/2021-04-03-zero-cost-optimizations/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Zero cost optimizations
   -1     3 date: 2021-04-03
   -1     4 
   -1     5 ---
   -1     6 
    1     7 Some optimizations come at virtually no cost. This can be in any area of life,
    2     8 not just in programming. Even if their benefit is limited, the cost is
    3     9 practically zero. So why not do them?

diff --git a/_content/posts/2021-04-03-zero-cost-optimizations/index.yml b/_content/posts/2021-04-03-zero-cost-optimizations/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Zero cost optimizations
    2    -1 date: 2021-04-03
    3    -1 

diff --git a/_content/posts/2021-04-28-native-date-pickers/index.md b/_content/posts/2021-04-28-native-date-pickers/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: 'Finally: native datepickers are here!'
   -1     3 date: 2021-04-28
   -1     4 tags: [code, html, js]
   -1     5 ---
   -1     6 
    1     7 Safari 14.1 has been released and finally ships native date and time pickers.
    2     8 At last we can get rid of a huge chunk of JavaScript.
    3     9 

diff --git a/_content/posts/2021-04-28-native-date-pickers/index.yml b/_content/posts/2021-04-28-native-date-pickers/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: 'Finally: native datepickers are here!'
    2    -1 date: 2021-04-28
    3    -1 tags: [code, html, js]

diff --git a/_content/posts/2021-07-04-electric-ducks/index.md b/_content/posts/2021-07-04-electric-ducks/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Do electric ducks talk about web development?
   -1     3 date: 2021-07-04
   -1     4 tags: [code, philosophy, discussion]
   -1     5 ---
   -1     6 
    1     7 Apparently you can now talk to a [GPT-3 model that has been trained to mimic
    2     8 Elon Musk](https://twitter.com/jessmartin/status/1284117578672230400).
    3     9 Or Shakespeare or Aristotle or whoever else sounds impressive.

diff --git a/_content/posts/2021-07-04-electric-ducks/index.yml b/_content/posts/2021-07-04-electric-ducks/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Do electric ducks talk about web development?
    2    -1 date: 2021-07-04
    3    -1 tags: [code, philosophy, discussion]

diff --git a/_content/posts/2021-08-20-linux-service-architecture/index.md b/_content/posts/2021-08-20-linux-service-architecture/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Linux service architecture
   -1     3 date: 2021-08-20
   -1     4 tags: [code, linux, security]
   -1     5 ---
   -1     6 
    1     7 So I have been using linux for about 15 years now. For this whole time I had
    2     8 the feeling that a shift was going on under the surface that no one talked
    3     9 about. Sure, the surface level effects were discussed exhaustively (think

diff --git a/_content/posts/2021-08-20-linux-service-architecture/index.yml b/_content/posts/2021-08-20-linux-service-architecture/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Linux service architecture
    2    -1 date: 2021-08-20
    3    -1 tags: [code, linux, security]

diff --git a/_content/posts/2022-02-20-minimalism/index.md b/_content/posts/2022-02-20-minimalism/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: I tried to write about minimal linux desktops, but it failed
   -1     3 date: 2022-02-20
   -1     4 tags: [philosophy, code]
   -1     5 ---
   -1     6 
    1     7 Ok, this is going to be a rambling mess. There are some things I want to write
    2     8 down and I don't yet know how to put the different threads together. So let's
    3     9 untangle that mess.

diff --git a/_content/posts/2022-02-20-minimalism/index.yml b/_content/posts/2022-02-20-minimalism/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: I tried to write about minimal linux desktops, but it failed
    2    -1 date: 2022-02-20
    3    -1 tags: [philosophy, code]

diff --git a/_content/posts/2022-06-25-hard-work/index.md b/_content/posts/2022-06-25-hard-work/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Difficult Problems and Hard Work
   -1     3 date: 2022-06-25
   -1     4 tags: [code, design]
   -1     5 ---
   -1     6 
    1     7 In ["Difficult Problems and Hard
    2     8 Work"](https://drmaciver.substack.com/p/difficult-problems-and-hard-weeks),
    3     9 David R. MacIver writes:

diff --git a/_content/posts/2022-06-25-hard-work/index.yml b/_content/posts/2022-06-25-hard-work/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Difficult Problems and Hard Work
    2    -1 date: 2022-06-25
    3    -1 tags: [code, design]

diff --git a/_content/posts/2022-08-06-basic-income/index.md b/_content/posts/2022-08-06-basic-income/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Basic income is not about redistribution of money
   -1     3 date: 2022-08-06
   -1     4 tags: [politics]
   -1     5 ---
   -1     6 
    1     7 The discourse around basic income annoys me. People discuss how it could be
    2     8 financed and whether it is a good idea to replace the carefully crafted system
    3     9 of social redistribution. All that is completely beside the point. *Basic

diff --git a/_content/posts/2022-08-06-basic-income/index.yml b/_content/posts/2022-08-06-basic-income/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Basic income is not about redistribution of money
    2    -1 date: 2022-08-06
    3    -1 tags: [politics]

diff --git a/_content/posts/2022-09-10-contrast-algorithms/index.md b/_content/posts/2022-09-10-contrast-algorithms/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Debunking claims about contrast formulas
   -1     3 date: 2022-09-10
   -1     4 tags: [a11y, math, color]
   -1     5 ---
   -1     6 
    1     7 I want to comment on the [color.js documentation][1] on contrast. It lists a
    2     8 bunch of contrast formulas and explains some of their properties. I believe
    3     9 these explanations contain some misleading statements.

diff --git a/_content/posts/2022-09-10-contrast-algorithms/index.yml b/_content/posts/2022-09-10-contrast-algorithms/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Debunking claims about contrast formulas
    2    -1 date: 2022-09-10
    3    -1 tags: [a11y, math, color]

diff --git a/_content/posts/2022-12-03-my-window-manager-setup/index.md b/_content/posts/2022-12-03-my-window-manager-setup/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: I use 5 different window managers stacked on top of each other
   -1     3 date: 2022-12-03
   -1     4 tags: [linux, design, wayland]
   -1     5 ---
   -1     6 
    1     7 I am still on X11 because I haven't yet found the right wayland setup for me.
    2     8 In this process, I had to take a good look at my current X11 setup. I was
    3     9 surprised what I found.

diff --git a/_content/posts/2022-12-03-my-window-manager-setup/index.yml b/_content/posts/2022-12-03-my-window-manager-setup/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: I use 5 different window managers stacked on top of each other
    2    -1 date: 2022-12-03
    3    -1 tags: [linux, design, wayland]

diff --git a/_content/posts/2023-01-15-state-of-wayland/index.md b/_content/posts/2023-01-15-state-of-wayland/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: State of wayland in 2022
   -1     3 date: 2023-01-15
   -1     4 tags: [linux, wayland]
   -1     5 ---
   -1     6 
    1     7 I have [written about wayland before](../2020-12-28-wayland-wm/) and how I try
    2     8 to make the switch about once a year and then quickly give up and move back to
    3     9 X11. Currently I am doing another test run and thought that I could turn this

diff --git a/_content/posts/2023-01-15-state-of-wayland/index.yml b/_content/posts/2023-01-15-state-of-wayland/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: State of wayland in 2022
    2    -1 date: 2023-01-15
    3    -1 tags: [linux, wayland]

diff --git a/_content/posts/2023-01-29-python-async-loops/index.md b/_content/posts/2023-01-29-python-async-loops/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Eight different ways to implement an asyncronous loop in python
   -1     3 date: 2023-01-29
   -1     4 tags: [code, linux]
   -1     5 ---
   -1     6 
    1     7 [asyncio](https://peps.python.org/pep-3156/) was first added to the python
    2     8 standard library more than 10 years ago. Asynchronous I/O had already been
    3     9 possible before that, by using libraries such as twisted or gevent. But asyncio

diff --git a/_content/posts/2023-01-29-python-async-loops/index.yml b/_content/posts/2023-01-29-python-async-loops/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Eight different ways to implement an asyncronous loop in python
    2    -1 date: 2023-01-29
    3    -1 tags: [code, linux]

diff --git a/_content/posts/2023-02-26-flow-relative-layout/index.md b/_content/posts/2023-02-26-flow-relative-layout/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: It's time to say goodbye to width and height in CSS
   -1     3 date: 2023-02-26
   -1     4 tags: [code, css, a11y]
   -1     5 ---
   -1     6 
    1     7 Back in 2016 I wrote about [right-to-left CSS](../2016-06-04-rtl-css/). Now I
    2     8 want to give a quick update on what has changed since then.
    3     9 

diff --git a/_content/posts/2023-02-26-flow-relative-layout/index.yml b/_content/posts/2023-02-26-flow-relative-layout/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: It's time to say goodbye to width and height in CSS
    2    -1 date: 2023-02-26
    3    -1 tags: [code, css, a11y]

diff --git a/_content/posts/2023-03-30-tui/index.md b/_content/posts/2023-03-30-tui/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: How to TUI
   -1     3 date: 2023-03-30
   -1     4 tags: [code, linux]
   -1     5 ---
   -1     6 
    1     7 Text-based user interfaces (TUIs) are like graphical user interfaces (GUIs),
    2     8 except they run in a terminal. They are also distinct from command line
    3     9 interfaces (CLIs) which also run in the terminal, but do not use a two

diff --git a/_content/posts/2023-03-30-tui/index.yml b/_content/posts/2023-03-30-tui/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: How to TUI
    2    -1 date: 2023-03-30
    3    -1 tags: [code, linux]

diff --git a/_content/posts/2023-07-19-crime-storytelling/index.md b/_content/posts/2023-07-19-crime-storytelling/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Why crime stories are the purest form of story telling
   -1     3 date: 2023-07-19
   -1     4 tags: [storytelling]
   -1     5 ---
   -1     6 
    1     7 As someone who has never published a novel, a short story or even took part in
    2     8 a creative writing class, I am extremely confident in saying that the current
    3     9 state of narrative analysis is bad and all the online pop culture critics are

diff --git a/_content/posts/2023-07-19-crime-storytelling/index.yml b/_content/posts/2023-07-19-crime-storytelling/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Why crime stories are the purest form of story telling
    2    -1 date: 2023-07-19
    3    -1 tags: [storytelling]

diff --git a/_content/posts/2023-08-07-arabic-typography/index.md b/_content/posts/2023-08-07-arabic-typography/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Arabic Typography
   -1     3 date: 2023-08-07
   -1     4 tags: [design]
   -1     5 ---
   -1     6 
    1     7 I recently had to read up on Arabic typography for a project. This knowledge
    2     8 may come in handy again, so I am writing this note for future me.
    3     9 

diff --git a/_content/posts/2023-08-07-arabic-typography/index.yml b/_content/posts/2023-08-07-arabic-typography/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Arabic Typography
    2    -1 date: 2023-08-07
    3    -1 tags: [design]

diff --git a/_content/posts/2023-09-28-mfa/index.md b/_content/posts/2023-09-28-mfa/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: On WebAuthn, MFA, and local SSO
   -1     3 date: 2023-09-28
   -1     4 tags: [security, code]
   -1     5 ---
   -1     6 
    1     7 Multi factor authentication (MFA) is gaining steam. The ecosystem is evolving
    2     8 and laws such as
    3     9 [NIS-2](https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32022L2555)

diff --git a/_content/posts/2023-09-28-mfa/index.yml b/_content/posts/2023-09-28-mfa/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: On WebAuthn, MFA, and local SSO
    2    -1 date: 2023-09-28
    3    -1 tags: [security, code]

diff --git a/_content/posts/2023-10-13-logging/index.md b/_content/posts/2023-10-13-logging/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: Another look at python's logging library
   -1     3 date: 2023-10-13
   -1     4 tags: [code]
   -1     5 ---
   -1     6 
    1     7 Python's [logging](https://docs.python.org/3/library/logging.html) library is a
    2     8 mixed bag. The code was clearly written in a pre-python3 and pre-pep8 era, so
    3     9 it has a lot of sharp edges. It also feels like there is much more complexity

diff --git a/_content/posts/2023-10-13-logging/index.yml b/_content/posts/2023-10-13-logging/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: Another look at python's logging library
    2    -1 date: 2023-10-13
    3    -1 tags: [code]

diff --git a/_content/posts/2023-10-29-jmap-calendars/index.md b/_content/posts/2023-10-29-jmap-calendars/index.md

@@ -1,3 +1,9 @@
   -1     1 ---
   -1     2 title: JMAP for Calendars is awesome
   -1     3 date: 2023-10-29
   -1     4 tags: [code]
   -1     5 ---
   -1     6 
    1     7 ## The old thing: CalDAV
    2     8 
    3     9 The predominant protocol used for syncing calendars is CalDAV

diff --git a/_content/posts/2023-10-29-jmap-calendars/index.yml b/_content/posts/2023-10-29-jmap-calendars/index.yml

@@ -1,3 +0,0 @@
    1    -1 title: JMAP for Calendars is awesome
    2    -1 date: 2023-10-29
    3    -1 tags: [code]

diff --git a/posts.sh b/posts.sh

@@ -1,11 +1,13 @@
    1     1 #!/bin/sh
    2     2 
   -1     3 echo "---"
    3     4 echo "posts:"
    4     5 
    5     6 ls _content/posts | tac | while read l; do
    6    -1 	yml="_content/posts/$l/index.yml"
   -1     7 	yml="_content/posts/$l/index.md"
    7     8 	echo "  - url: /posts/$l/"
    8    -1 	echo "    title: $(grep 'title:' "$yml" | sed 's/title: //')"
    9    -1 	echo "    date: $(grep 'date:' "$yml" | sed 's/date: //')"
   10    -1 	echo "    tags: $(grep 'tags:' "$yml" | sed 's/tags: //')"
   -1     9 	echo "    title: $(grep '^title:' "$yml" | head -n 1 | sed 's/title: //')"
   -1    10 	echo "    date: $(grep '^date:' "$yml" | head -n 1 | sed 's/date: //')"
   -1    11 	echo "    tags: $(grep '^tags:' "$yml" | head -n 1 | sed 's/tags: //')"
   11    12 done
   -1    13 echo "---"