refactor: update images in blog posts

This commit is contained in:
Stefan Imhoff
2026-01-24 17:35:33 +01:00
committed by Stefan Imhoff
parent da1c0dd6c8
commit 42d1bb42a8
181 changed files with 752 additions and 678 deletions

View File

@@ -22,9 +22,11 @@ In any case, I think that one _gets_ the everyday madness governed by Allens
## The GTD Basics ## The GTD Basics
<Figure caption="This is what the inbox looked like before I sorted all loose ends"> <BasicImage
<Image src="/assets/images/posts/gtd-before.webp" alt="My desk before" /> src="/images/posts/gtd-before.webp"
</Figure> alt="My desk before"
caption="This is what the inbox looked like before I sorted all loose ends"
/>
GTD uses the concept of _contexts_, which are certain situations/places to which a task is assigned (telephone, home, care, or similar). Besides, there can be an allocation to a _project_. GTD uses the concept of _contexts_, which are certain situations/places to which a task is assigned (telephone, home, care, or similar). Besides, there can be an allocation to a _project_.
@@ -42,9 +44,11 @@ Tasks can be delegated to other people or planned for certain times. If you have
## GTD in Everyday Life ## GTD in Everyday Life
<Figure caption="This is what the inbox looked like after sorting all loose ends"> <BasicImage
<Image src="/assets/images/posts/gtd-after.webp" alt="My desk afterward" /> src="/images/posts/gtd-after.webp"
</Figure> alt="My desk afterward"
caption="This is what the inbox looked like after sorting all loose ends"
/>
GTD may look complicated or awkward, but it helps immensely to prevent keeping pondering. GTD may look complicated or awkward, but it helps immensely to prevent keeping pondering.

View File

@@ -42,9 +42,11 @@ In addition to gods, mythical creatures, and demons, the most important source o
## Water Margin ## Water Margin
<Figure caption="Motif from Suikoden by Kuniyoshi: Captain Lu-Ta, the flowery monk, smashes a tree with a blow to impress a gang of good-for-nothings."> <BasicImage
<Image src="/assets/images/posts/suikoden-luta.webp" alt="Woodblock print of a Chinese Monk" /> src="/images/posts/suikoden-luta.webp"
</Figure> alt="Woodblock print of a Chinese Monk"
caption="Motif from Suikoden by Kuniyoshi: Captain Lu-Ta, the flowery monk, smashes a tree with a blow to impress a gang of good-for-nothings."
/>
In short, it is about a band of robbers of 108 heroic men and women. Each of whom is forced into lawless life by adverse circumstances, and entrenching themselves on a fortified island in Liang-Shan marsh, where they go on a rampant raid for years. They fight against corrupt officials of the emperor and numerous villains. The story is true in parts and should have taken place in the Song Dynasty. In short, it is about a band of robbers of 108 heroic men and women. Each of whom is forced into lawless life by adverse circumstances, and entrenching themselves on a fortified island in Liang-Shan marsh, where they go on a rampant raid for years. They fight against corrupt officials of the emperor and numerous villains. The story is true in parts and should have taken place in the Song Dynasty.
@@ -56,12 +58,12 @@ The motif I chose for my design shows a koi (carp) trying to swim up the heavy r
Legend has it that a koi, who manages to swim up the magical waterfalls, transforms into a dragon. After another 500 years, he turns into a horned dragon and after 1000 years into a winged dragon. Thus, the next design should show a dragon. Legend has it that a koi, who manages to swim up the magical waterfalls, transforms into a dragon. After another 500 years, he turns into a horned dragon and after 1000 years into a winged dragon. Thus, the next design should show a dragon.
<Figure <BasicImage
caption="Koi floating up the Longmen Waterfalls. It contains typical elements such as leaves, flowers, and wave crests (AI upscaled from a pixel image)."
size="wide" size="wide"
> src="/images/posts/design-koi.webp"
<Image src="/assets/images/posts/design-koi.webp" alt="Design: Digital Irezumi" /> alt="Design: Digital Irezumi"
</Figure> caption="Koi floating up the Longmen Waterfalls. It contains typical elements such as leaves, flowers, and wave crests (AI upscaled from a pixel image)."
/>
The hardest part of my design was how much tattooing to see on the page. While the Japanese tattoo lives on the surface, leaving nothing to feet, hands, and a small front area, a large area would have made the page restless and distracted from the content. To make matters worse, there is no end to a body tattoo. But on the internet, your space is limited by the edges of the browser. The hardest part of my design was how much tattooing to see on the page. While the Japanese tattoo lives on the surface, leaving nothing to feet, hands, and a small front area, a large area would have made the page restless and distracted from the content. To make matters worse, there is no end to a body tattoo. But on the internet, your space is limited by the edges of the browser.

View File

@@ -18,29 +18,30 @@ The exact installation instructions are included in the package on GitHub.
## Screenshots ## Screenshots
<Figure caption="Project View"> <BasicImage
<Image src="/assets/images/posts/gitweb-theme-projects.webp" alt="Project View" /> caption="Project View"
</Figure> src="/images/posts/gitweb-theme-projects.webp"
alt="Project View"
/>
<Figure caption="Summary"> <BasicImage src="/images/posts/gitweb-theme-summary.webp" alt="Summary" />
<Image src="/assets/images/posts/gitweb-theme-summary.webp" alt="Summary" />
</Figure>
<Figure caption="Commit"> <BasicImage caption="Summary" src="/images/posts/gitweb-theme-commit.webp" alt="Commit" />
<Image src="/assets/images/posts/gitweb-theme-commit.webp" alt="Commit" />
</Figure>
<Figure caption="Commit DIFF"> <BasicImage
<Image src="/assets/images/posts/gitweb-theme-commitdiff.webp" alt="Commit DIFF" /> caption="Commit DIFF"
</Figure> src="/images/posts/gitweb-theme-commitdiff.webp"
alt="Commit DIFF"
/>
<Figure caption="Log"> <BasicImage src="/images/posts/gitweb-theme-log.webp" alt="Log" />
<Image src="/assets/images/posts/gitweb-theme-log.webp" alt="Log" />
</Figure>
<Figure caption="Tree View"> <BasicImage
<Image src="/assets/images/posts/gitweb-theme-tree.webp" alt="Tree View" /> caption="Log"
</Figure> caption="Tree View"
src="/images/posts/gitweb-theme-tree.webp"
alt="Tree View"
/>
<Figure> <Figure>
<MoreLink href="https://github.com/kogakure/gitweb-theme/" text="GitWeb Theme on GitHub" /> <MoreLink href="https://github.com/kogakure/gitweb-theme/" text="GitWeb Theme on GitHub" />

View File

@@ -12,9 +12,11 @@ tags: ["code"]
Something similar was said by the superhero _He-Man_ from the 80s TV show _Masters of the Universe_ before he got his superpowers. And Vim exists about as long as the TV show: **22 years**. And the older Vi, on which Vim is based, has been around even longer than I live. If a _simple_ text editor exists for a long time and gives these _powers_, it has to be something special about it. Something similar was said by the superhero _He-Man_ from the 80s TV show _Masters of the Universe_ before he got his superpowers. And Vim exists about as long as the TV show: **22 years**. And the older Vi, on which Vim is based, has been around even longer than I live. If a _simple_ text editor exists for a long time and gives these _powers_, it has to be something special about it.
<Figure caption="Vim - cleanser and polisher. Brightens the home and the age."> <BasicImage
<Image src="/assets/images/posts/vim-vintage.webp" alt="Vim, Reinigungs- und Poliermittel." /> caption="Vim - cleanser and polisher. Brightens the home and the age."
</Figure> src="/images/posts/vim-vintage.webp"
alt="Vim, Reinigungs- und Poliermittel."
/>
The first time I stumbled upon Vim (or Vi) a couple of years ago, was when I first had to edit any file on a server and none of my fancy editors worked there. The first time I worked with Vi(m) was my natural reaction: <q>WTF, I cannot tap until I press `i`? Who invented this crap?</q> The first time I stumbled upon Vim (or Vi) a couple of years ago, was when I first had to edit any file on a server and none of my fancy editors worked there. The first time I worked with Vi(m) was my natural reaction: <q>WTF, I cannot tap until I press `i`? Who invented this crap?</q>

View File

@@ -18,9 +18,11 @@ It was clear to me early that I wanted to use a _Rakkan_ instead of a modern log
A Rakkan (or Hanko) is called in Japan a seal, which is carved in stone, representing the signature of an artist and is stamped under the artwork, and thus works as a signature. A Rakkan (or Hanko) is called in Japan a seal, which is carved in stone, representing the signature of an artist and is stamped under the artwork, and thus works as a signature.
<Figure caption="Imprint of my Rakkan below a symbol for 忍 (Shinobi) written by me."> <BasicImage
<Image src="/assets/images/posts/rakkan.webp" alt="Rakkan written ink below symbol" /> caption="Imprint of my Rakkan below a symbol for 忍 (Shinobi) written by me."
</Figure> src="/images/posts/rakkan.webp"
alt="Rakkan written ink below symbol"
/>
Even with my [martial arts portal](https://www.kogakure.de/), I use a seal as a logo. Even with my [martial arts portal](https://www.kogakure.de/), I use a seal as a logo.
@@ -64,12 +66,11 @@ A seal can be created in two different variants: **Yin** or **Yang** (☯). In t
First, I made numerous pencil drawings, first of individual characters that I liked, and later of combinations. I wondered how an artist would carve a traditional stamp, how the letters touch and support to give the seal the necessary stability. First, I made numerous pencil drawings, first of individual characters that I liked, and later of combinations. I wondered how an artist would carve a traditional stamp, how the letters touch and support to give the seal the necessary stability.
<Figure caption="Moleskine with pencil drawings of characters"> <BasicImage
<Image caption="Moleskine with pencil drawings of characters"
src="/assets/images/posts/moleskine-pencil-drawings.webp" src="/images/posts/moleskine-pencil-drawings.webp"
alt="Moleskine with pencil drawings of characters" alt="Moleskine with pencil drawings of characters"
/> />
</Figure>
After I had developed my final variant, I drew the pencil lines with a thick highlighter (not without almost ruining my bamboo table, since I omitted out of laziness to use a pad). The texture that emerges when ink spreads through the paper looks much like a stone-carved edge. After I had developed my final variant, I drew the pencil lines with a thick highlighter (not without almost ruining my bamboo table, since I omitted out of laziness to use a pad). The texture that emerges when ink spreads through the paper looks much like a stone-carved edge.

View File

@@ -24,12 +24,11 @@ And reading more about these extreme sports, I found out they come with the dang
Other names for body weight training are **Street Workout**, **Ghetto Fitness**, or **Calisthenics**. The word **Calisthenics** comes from the Greek words καλός (kalos), which means **beautiful** and σθένος (sthenos), which means **strength**. Other names for body weight training are **Street Workout**, **Ghetto Fitness**, or **Calisthenics**. The word **Calisthenics** comes from the Greek words καλός (kalos), which means **beautiful** and σθένος (sthenos), which means **strength**.
<Figure caption="Arm Elbow Lever on Beer Bottles"> <BasicImage
<Image caption="Arm Elbow Lever on Beer Bottles"
src="/assets/images/posts/calisthenics-arm-elbow-lever.webp" src="/images/posts/calisthenics-arm-elbow-lever.webp"
alt="Arm Elbow Lever on Beer Bottles" alt="Arm Elbow Lever on Beer Bottles"
/> />
</Figure>
With Calisthenics, you use basic movements like **Lunges**, **Crunches**, **Push-ups**, **Pull-ups**, **Squats**, **Dips** to strengthen your body. You **gradually** expand your skills and proceed to more difficult exercises. Thats why its called **Progressive Calisthenics**. With Calisthenics, you use basic movements like **Lunges**, **Crunches**, **Push-ups**, **Pull-ups**, **Squats**, **Dips** to strengthen your body. You **gradually** expand your skills and proceed to more difficult exercises. Thats why its called **Progressive Calisthenics**.
@@ -61,12 +60,11 @@ To reach a big goal like doing a **Human Flag** needs to be broken into parts: B
I keep track of my workouts in a diary and can see the training days in a calendar, to see if I missed too often. I keep track of my workouts in a diary and can see the training days in a calendar, to see if I missed too often.
<Figure caption="If a father of three can do it, what is your excuse?"> <BasicImage
<Image caption="If a father of three can do it, what is your excuse?"
src="/assets/images/posts/calisthenics-best-dad-ever.webp" src="/images/posts/calisthenics-best-dad-ever.webp"
alt="Man doing a Pull-Up with 3 children as additional weight" alt="Man doing a Pull-Up with 3 children as additional weight"
/> />
</Figure>
And I am patient. Its more about the journey than about the goal. Its an effort to train every day, to convince me to do my workout, even if the day isnt a good one. I decided to **train early in the morning**, a few minutes after I got up. This way I dont need as much willpower as I would in the evening. Unfortunately, we are all victims of [Ego Depletion](https://grokipedia.com/page/Ego_depletion), and later in the day, it may be gone. And I am patient. Its more about the journey than about the goal. Its an effort to train every day, to convince me to do my workout, even if the day isnt a good one. I decided to **train early in the morning**, a few minutes after I got up. This way I dont need as much willpower as I would in the evening. Unfortunately, we are all victims of [Ego Depletion](https://grokipedia.com/page/Ego_depletion), and later in the day, it may be gone.

View File

@@ -56,11 +56,12 @@ GitBook is not only good for books but to write documentation for anything.
## Whats in my book? ## Whats in my book?
<Figure caption="GitBook: kogakure"> <BasicImage
<a href="https://www.kogakure.de/"> alt="GitBook: kogakure"
<Image src="/assets/images/posts/gitbook-kogakure.webp" alt="GitBook: kogakure" /> caption="GitBook: kogakure"
</a> href="https://www.kogakure.de/"
</Figure> src="/images/posts/gitbook-kogakure.webp"
/>
First thing: The book is available in **German** only 😒 (the [website](https://www.kogakure.de/en) is now in English available). I reviewed every sentence of the website for the book and changed parts of it. First thing: The book is available in **German** only 😒 (the [website](https://www.kogakure.de/en) is now in English available). I reviewed every sentence of the website for the book and changed parts of it.

View File

@@ -27,9 +27,11 @@ Minimalism is **not glamorous**, its **humble** and a result of **deep mindfu
Critics of Minimalism describe it as cold, empty, and without personality. People following Minimalism would deny their past or prove their inability to connect to other people. It would be a hopeless attempt to control life, as Linda Tutmann described Minimalism in her ZEIT article [Alles mein](https://www.zeit.de/2017/06/besitz-minimalismus-dinge-erinnerungen-besitztum). Critics of Minimalism describe it as cold, empty, and without personality. People following Minimalism would deny their past or prove their inability to connect to other people. It would be a hopeless attempt to control life, as Linda Tutmann described Minimalism in her ZEIT article [Alles mein](https://www.zeit.de/2017/06/besitz-minimalismus-dinge-erinnerungen-besitztum).
<Figure caption="Sorry, it doesnt look cold, empty, and without personality. I failed as a Minimalist."> <BasicImage
<Image src="/assets/images/posts/minimalism-office.webp" alt="My Minimalist home office" /> caption="Sorry, it doesnt look cold, empty, and without personality. I failed as a Minimalist."
</Figure> src="/images/posts/minimalism-office.webp"
alt="My Minimalist home office"
/>
This misconception of Minimalism is the result of its shift to a lifestyle and of extreme Minimalists, who live in sterile homes. Minimalism is not about having as few things as possible. It is about _not_ owning things, which dont bring joy or getting rid of things, which were acquired as a result of other reasons than a _need_ or _love_ for an object. This misconception of Minimalism is the result of its shift to a lifestyle and of extreme Minimalists, who live in sterile homes. Minimalism is not about having as few things as possible. It is about _not_ owning things, which dont bring joy or getting rid of things, which were acquired as a result of other reasons than a _need_ or _love_ for an object.
@@ -83,9 +85,11 @@ The next step was reading David Allen's book <cite><ProductLink asin="0143126563
This way I got rid of many things for the first time. This way I got rid of many things for the first time.
<Figure caption="My office before cleaning up"> <BasicImage
<Image src="/assets/images/posts/gtd-before.webp" alt="My office before cleaning up" /> caption="My office before cleaning up"
</Figure> src="/images/posts/gtd-before.webp"
alt="My office before cleaning up"
/>
The exhibition [LEVEL GREEN](https://www.autostadt.de/en/explore/groupforum/level-green) in Autostadt Wolfsburg introduced me first in a differently drastic way to the concept of sustainability. People could learn, by answering questions about how they lived, and how big their impact on the earth was. To maintain my lifestyle from back then, I would need 1.8 planets of Earth. This changed my idea of how to live responsibly a lot. The exhibition [LEVEL GREEN](https://www.autostadt.de/en/explore/groupforum/level-green) in Autostadt Wolfsburg introduced me first in a differently drastic way to the concept of sustainability. People could learn, by answering questions about how they lived, and how big their impact on the earth was. To maintain my lifestyle from back then, I would need 1.8 planets of Earth. This changed my idea of how to live responsibly a lot.
@@ -97,9 +101,11 @@ In the last few years I changed my ideas of how to live in many ways:
I cleaned my whole flat of things I didnt like or needed anymore. It took me three days to clean my basement from packages, cables, and technical waste, which I acquired over 10 years. I cleaned my whole flat of things I didnt like or needed anymore. It took me three days to clean my basement from packages, cables, and technical waste, which I acquired over 10 years.
<Figure caption="Cleanup of my cellar"> <BasicImage
<Image src="/assets/images/posts/minimalism-cleanup-cellar.webp" alt="Cleanup of my cellar" /> caption="Cleanup of my cellar"
</Figure> src="/images/posts/minimalism-cleanup-cellar.webp"
alt="Cleanup of my cellar"
/>
I gave more than 150 books away (I own 763) and sold my car. I use the subway, bus, car-sharing, and train to commute or travel. I gave more than 150 books away (I own 763) and sold my car. I use the subway, bus, car-sharing, and train to commute or travel.
@@ -123,9 +129,11 @@ I switched to green energy a few years ago, buy organic food if available, and t
When I was young, I always wanted a big, big house (preferably on a remote private island). But living in a small space is helpful for a Minimalist. It forces you to make decisions in your interest. I live on 51 m², and this is enough space for 1-2 people. Thats why I think if I need to buy something. I like the concept of small space living, but Im happy to have a separate bedroom. This is much more relaxing, because of the different temperatures in the living and sleeping area. And I do not keep electronics in my bedroom. When I was young, I always wanted a big, big house (preferably on a remote private island). But living in a small space is helpful for a Minimalist. It forces you to make decisions in your interest. I live on 51 m², and this is enough space for 1-2 people. Thats why I think if I need to buy something. I like the concept of small space living, but Im happy to have a separate bedroom. This is much more relaxing, because of the different temperatures in the living and sleeping area. And I do not keep electronics in my bedroom.
<Figure caption="My Minimalist living room"> <BasicImage
<Image src="/assets/images/posts/minimalism-living.webp" alt="My Minimalist living room" /> caption="My Minimalist living room"
</Figure> src="/images/posts/minimalism-living.webp"
alt="My Minimalist living room"
/>
### On Digital Minimalism ### On Digital Minimalism

View File

@@ -58,9 +58,12 @@ I like in particular the italic font with the beautiful loops and curves. I pick
Next, I picked a Typographic Scale. A scale is a way to pick font sizes based on a fixed set of rules, for example, a specific harmonic number or formula to create a harmonic visual image. I decided to go with the [golden section](https://www.modularscale.com/?1&em&1.618) (ratio 1:1.618). Next, I picked a Typographic Scale. A scale is a way to pick font sizes based on a fixed set of rules, for example, a specific harmonic number or formula to create a harmonic visual image. I decided to go with the [golden section](https://www.modularscale.com/?1&em&1.618) (ratio 1:1.618).
<Figure caption="Typographic Scale" size="wide"> <BasicImage
<Image src="/assets/images/posts/typographic-scale.webp" alt="Typographic Scale" /> caption="Typographic Scale"
</Figure> size="wide"
src="/images/posts/typographic-scale.webp"
alt="Typographic Scale"
/>
I picked 20 Pixels as the base font size. Furthermore, Im in my forties and websites pick fonts far too small. The company iA Inc. wrote 2006 the essay [The 100% Easy-2-Read Standard](https://ia.net/topics/100e2r), but still, fonts below the recommended 16 Pixels of browsers are a standard. I picked 20 Pixels as the base font size. Furthermore, Im in my forties and websites pick fonts far too small. The company iA Inc. wrote 2006 the essay [The 100% Easy-2-Read Standard](https://ia.net/topics/100e2r), but still, fonts below the recommended 16 Pixels of browsers are a standard.
@@ -154,29 +157,36 @@ I didnt invert colors but needed to make sure to create good contrast, which
Next, I moved my focus to the logo. A logo is always a difficult topic. Do I need one? Why? What should it be? My initials? An image? Its easy to create a cheesy logo. I used a _rakkan_ (落款), a Japanese artist seal, for at least 10 years. An artist carved it for me into stone, using the oldest Chinese font, the _small seal script_, introduced by the Chinese Emperor _Qin Shi Huang_, 2200 years ago. It gets pressed into red ink and then applied to the artwork as the signature. I choose the characters of my internet pseudonym _kogakure_ (木隠), meaning “hidden behind leaves”. Next, I moved my focus to the logo. A logo is always a difficult topic. Do I need one? Why? What should it be? My initials? An image? Its easy to create a cheesy logo. I used a _rakkan_ (落款), a Japanese artist seal, for at least 10 years. An artist carved it for me into stone, using the oldest Chinese font, the _small seal script_, introduced by the Chinese Emperor _Qin Shi Huang_, 2200 years ago. It gets pressed into red ink and then applied to the artwork as the signature. I choose the characters of my internet pseudonym _kogakure_ (木隠), meaning “hidden behind leaves”.
<Figure caption="Rakkan"> <BasicImage caption="Rakkan" src="/images/posts/rakkan.webp" alt="Rakkan" />
<Image src="/assets/images/posts/rakkan.webp" alt="Rakkan" />
</Figure>
I created a few sketches of other possible logos, but eventually, I discarded them all and moved back to my _rakkan_. Likewise, I decided to simplify the vector form and reduce the number of points and make it more performant and easier to recognize in smaller sizes. I created a few sketches of other possible logos, but eventually, I discarded them all and moved back to my _rakkan_. Likewise, I decided to simplify the vector form and reduce the number of points and make it more performant and easier to recognize in smaller sizes.
<Figure caption="Logo Scribbles" size="wide"> <BasicImage
<Image src="/assets/images/posts/logo-skribbles.webp" alt="Logo Scribbles" /> caption="Logo Scribbles"
</Figure> size="wide"
src="/images/posts/logo-skribbles.webp"
alt="Logo Scribbles"
/>
But after finishing the logo, I decided in the interest of simplicity and austerity that there is no reason to use a logo at all. I even removed my name from the header, as its obvious on what website the visitor is. My name is written enough around the site. The logo will appear in parts of the website, for example as an icon for the app, or on other locations, a logo fits. But after finishing the logo, I decided in the interest of simplicity and austerity that there is no reason to use a logo at all. I even removed my name from the header, as its obvious on what website the visitor is. My name is written enough around the site. The logo will appear in parts of the website, for example as an icon for the app, or on other locations, a logo fits.
<Figure caption="Rakkan Logo" size="wide"> <BasicImage
<Image src="/assets/images/posts/rakkan-logo.webp" alt="Rakkan Logo" /> caption="Rakkan Logo"
</Figure> size="wide"
src="/images/posts/rakkan-logo.webp"
alt="Rakkan Logo"
/>
## Grid ## Grid
Early on I got obsessed with the [Golden Canon Grid](https://youtu.be/fWfD0EfiXcE) and my early designs used a complicated and sophisticated version of it. Early on I got obsessed with the [Golden Canon Grid](https://youtu.be/fWfD0EfiXcE) and my early designs used a complicated and sophisticated version of it.
<Figure caption="Golden Canon Grid" size="wide"> <BasicImage
<Image src="/assets/images/posts/golden-canon-grid.webp" alt="Golden Canon Grid" /> caption="Golden Canon Grid"
</Figure> size="wide"
src="/images/posts/golden-canon-grid.webp"
alt="Golden Canon Grid"
/>
But gradually I decided this would end in a nightmare when moving to code and migrating to a modular grid. However, I didnt recognize my error of using a fixed-size module for the grid—an error I had to correct later. But gradually I decided this would end in a nightmare when moving to code and migrating to a modular grid. However, I didnt recognize my error of using a fixed-size module for the grid—an error I had to correct later.
@@ -212,36 +222,54 @@ As he shows in the fantastic free video, [Aaron Draplin Takes On a Logo Design C
I followed this technique on all my designs and created dozens of variations, sometimes entire pages, sometimes a small detail as the footer or a meta section. I followed this technique on all my designs and created dozens of variations, sometimes entire pages, sometimes a small detail as the footer or a meta section.
<Figure caption="All Artboards of the base design" size="fullsize"> <BasicImage
<Image src="/assets/images/posts/base-design.webp" alt="All Artboards of the base design" /> caption="All Artboards of the base design"
</Figure> size="fullsize"
src="/images/posts/base-design.webp"
alt="All Artboards of the base design"
/>
<Figure caption="Variants of the Meta section" size="fullsize"> <BasicImage
<Image src="/assets/images/posts/meta-section-design.webp" alt="Variants of the Meta section" /> caption="Variants of the Meta section"
</Figure> size="fullsize"
src="/images/posts/meta-section-design.webp"
alt="Variants of the Meta section"
/>
Designing was the part that brought the most fun to me. Designing is like a concert: It starts with a cello, but then more and more instruments get added until the full [concert ends in a massive crescendo](https://youtu.be/XpT-92HS11I). The start is always the hardest, with the designer staring at a blank, white screen. But then things fall into the place and ideas multiply and in the end, everything is obvious, and the next screen is easy to create. Designing was the part that brought the most fun to me. Designing is like a concert: It starts with a cello, but then more and more instruments get added until the full [concert ends in a massive crescendo](https://youtu.be/XpT-92HS11I). The start is always the hardest, with the designer staring at a blank, white screen. But then things fall into the place and ideas multiply and in the end, everything is obvious, and the next screen is easy to create.
I started designing the blog detail page headline and moved out from there, creating text, header, footer, and small details. I started designing the blog detail page headline and moved out from there, creating text, header, footer, and small details.
<Figure caption="About Section" size="fullsize"> <BasicImage
<Image src="/assets/images/posts/about-design.webp" alt="About Section" /> caption="About Section"
</Figure> size="fullsize"
src="/images/posts/about-design.webp"
alt="About Section"
/>
Then I moved into color variations for the pages. I designed error pages, navigation, special pages, and the homepage last. I didnt design every detail, but quickly moved from idea to idea, leaving behind a mess of unnamed layers and incomplete or outdated ideas. Then I moved into color variations for the pages. I designed error pages, navigation, special pages, and the homepage last. I didnt design every detail, but quickly moved from idea to idea, leaving behind a mess of unnamed layers and incomplete or outdated ideas.
<Figure caption="Color Variants" size="fullsize"> <BasicImage
<Image src="/assets/images/posts/color-variants-design.webp" alt="Color Variants" /> caption="Color Variants"
</Figure> size="fullsize"
src="/images/posts/color-variants-design.webp"
alt="Color Variants"
/>
I created a giant design for all layout variations I wanted to support on a page (e.g., the combination of an image and a text). I moved quickly to [CodePen](https://codepen.io/) to create prototypes for these variations to validate my ideas where feasible. You can see all my prototypes on my CodePen account. I created a giant design for all layout variations I wanted to support on a page (e.g., the combination of an image and a text). I moved quickly to [CodePen](https://codepen.io/) to create prototypes for these variations to validate my ideas where feasible. You can see all my prototypes on my CodePen account.
<Figure caption="Homepage" size="fullsize"> <BasicImage
<Image src="/assets/images/posts/homepage-design.webp" alt="Homepage" /> caption="Homepage"
</Figure> size="fullsize"
src="/images/posts/homepage-design.webp"
alt="Homepage"
/>
<Figure caption="Haiku Section" size="fullsize"> <BasicImage
<Image src="/assets/images/posts/haiku-design.webp" alt="Haiku Section" /> caption="Haiku Section"
</Figure> size="fullsize"
src="/images/posts/haiku-design.webp"
alt="Haiku Section"
/>
In the fall of 2019, I finished my design and left it for a few weeks untouched to see if I start disliking it. On the 25th of November 2019, I finally started coding. In the fall of 2019, I finished my design and left it for a few weeks untouched to see if I start disliking it. On the 25th of November 2019, I finally started coding.

View File

@@ -13,13 +13,17 @@ Finally, after **3 years** with **250 hours** of work, I finished my longest-run
There are _multiple_ reasons it took me a while: I created not only a new design, with a light and dark theme, screen size-dependent grid, and typography. I developed it with a new technology stack, including the static-site generator [Gatsby](https://www.gatsbyjs.org/), [TypeScript](https://www.typescriptlang.org/), [Styled Components](https://styled-components.com/), [MDX](https://mdxjs.com/), [GraphQL](https://graphql.org/), and [CSS Grid Layout](https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Grid_Layout). There are _multiple_ reasons it took me a while: I created not only a new design, with a light and dark theme, screen size-dependent grid, and typography. I developed it with a new technology stack, including the static-site generator [Gatsby](https://www.gatsbyjs.org/), [TypeScript](https://www.typescriptlang.org/), [Styled Components](https://styled-components.com/), [MDX](https://mdxjs.com/), [GraphQL](https://graphql.org/), and [CSS Grid Layout](https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Grid_Layout).
<Figure caption="Light Version Homepage"> <BasicImage
<Image src="/assets/images/posts/homepage-light.webp" alt="Light Version Homepage" /> caption="Light Version Homepage"
</Figure> src="/images/posts/homepage-light.webp"
alt="Light Version Homepage"
/>
<Figure caption="Dark Version Homepage"> <BasicImage
<Image src="/assets/images/posts/homepage-dark.webp" alt="Dark Version Homepage" /> caption="Dark Version Homepage"
</Figure> src="/images/posts/homepage-dark.webp"
alt="Dark Version Homepage"
/>
I always take the opportunity to learn new things while working on personal projects. This time I intentionally picked TypeScript, even though I knew it would slow me down. I wanted to learn it beyond basic training and theory, which is possible while doing it. I always take the opportunity to learn new things while working on personal projects. This time I intentionally picked TypeScript, even though I knew it would slow me down. I wanted to learn it beyond basic training and theory, which is possible while doing it.
@@ -43,9 +47,7 @@ For the first time, the website has a [Projects](/projects/) section showing my
My Haiku (short Japanese poems) collection was previously loveless, dumped on a single page without proper context. After the relaunch, I dedicated a whole section to the [Haiku](/haiku/), including English translations. My Haiku (short Japanese poems) collection was previously loveless, dumped on a single page without proper context. After the relaunch, I dedicated a whole section to the [Haiku](/haiku/), including English translations.
<Figure caption="Haiku"> <BasicImage caption="Haiku" src="/images/posts/haiku.webp" alt="Haiku" />
<Image src="/assets/images/posts/haiku.webp" alt="Haiku" />
</Figure>
### Sketchnotes ### Sketchnotes
@@ -55,9 +57,11 @@ I had a collection of my Sketchnotes hosted on a subdomain on Tumblr and wanted
A few years back I created a small project, creating an ASE file out of Traditional Colors of Japanese mentioned in a book with the same title. This project got [an own page](/traditional-colors-of-japan/) showing all colors and the books these are from. A few years back I created a small project, creating an ASE file out of Traditional Colors of Japanese mentioned in a book with the same title. This project got [an own page](/traditional-colors-of-japan/) showing all colors and the books these are from.
<Figure caption="The Traditional Colors of Japan"> <BasicImage
<Image src="/assets/images/posts/colors-of-japan.webp" alt="The Traditional Colors of Japan" /> caption="The Traditional Colors of Japan"
</Figure> src="/images/posts/colors-of-japan.webp"
alt="The Traditional Colors of Japan"
/>
The entire project stretched for three years because I didnt work continuously on the website, and sometimes didnt do something for multiple months. The entire project stretched for three years because I didnt work continuously on the website, and sometimes didnt do something for multiple months.

View File

@@ -61,12 +61,12 @@ One thing I changed to my previous DEVONthink-_only_ workflow is that I use an *
I use [DEVONthink to Go](https://apps.apple.com/app/devonthink-to-go/id395722470s) to quickly create new notes, and add photos, or other media to my databases. These files get automatically synced with all connected devices and are added to my Macs the next time I open DEVONthink. Additionally, I use the mobile version to search and read the content of my database when Im not on my computer. I use [DEVONthink to Go](https://apps.apple.com/app/devonthink-to-go/id395722470s) to quickly create new notes, and add photos, or other media to my databases. These files get automatically synced with all connected devices and are added to my Macs the next time I open DEVONthink. Additionally, I use the mobile version to search and read the content of my database when Im not on my computer.
<Figure caption="Obsidian Graph View of my 3,500 notes" size="wide"> <BasicImage
<Image caption="Obsidian Graph View of my 3,500 notes"
src="/assets/images/posts/obsidian-graph-view.webp" size="wide"
src="/images/posts/obsidian-graph-view.webp"
alt="Obsidian Graph View of my notes" alt="Obsidian Graph View of my notes"
/> />
</Figure>
One plugin allows opening a note via custom shortcuts in the default app, which I use to edit longer notes in iA Writer. One plugin allows opening a note via custom shortcuts in the default app, which I use to edit longer notes in iA Writer.

View File

@@ -128,9 +128,11 @@ Originally, I had the tags included in the note, but I discarded the idea, becau
One of the best features of DEVONthink is its fantastic sorter. It can be used as a menu bar item or a floating index tab, it can be triggered with various shortcuts. It allows capturing notes in many possible formats. Additionally, audio, video, screenshots, and websites. The latter one is powerful and able to strip all clutter and keep text and images or convert the content to Markdown, save it as HTML, rich text, pure text, PDF, or web archive. One of the best features of DEVONthink is its fantastic sorter. It can be used as a menu bar item or a floating index tab, it can be triggered with various shortcuts. It allows capturing notes in many possible formats. Additionally, audio, video, screenshots, and websites. The latter one is powerful and able to strip all clutter and keep text and images or convert the content to Markdown, save it as HTML, rich text, pure text, PDF, or web archive.
<Figure caption="The DEVONthink sorter to capture content quickly"> <BasicImage
<Image src="/assets/images/posts/devonthink-sorter.webp" alt="The DEVONthink Sorter" /> caption="The DEVONthink sorter to capture content quickly"
</Figure> src="/images/posts/devonthink-sorter.webp"
alt="The DEVONthink Sorter"
/>
### Fast Live Search with Powerful Search Operators ### Fast Live Search with Powerful Search Operators
@@ -192,12 +194,12 @@ I might write notes in one of my paper notebooks. Handwriting has plenty of adva
I regularly reserve time to transfer notes, highlights, and quotes from books Ive read into notes in my Zettelkasten. I regularly reserve time to transfer notes, highlights, and quotes from books Ive read into notes in my Zettelkasten.
<Figure caption="DEVONthink view on a Markdown document with a sidebar for notes" size="wide"> <BasicImage
<Image caption="DEVONthink view on a Markdown document with a sidebar for notes"
src="/assets/images/posts/devonthink-zettelkasten.webp" size="wide"
src="/images/posts/devonthink-zettelkasten.webp"
alt="My Zettelkasten in DEVONthink" alt="My Zettelkasten in DEVONthink"
/> />
</Figure>
Every afternoon I clean the inbox and properly tag the items. Every Zettelkasten note gets a unique ID and title (generated with a snippet in [Alfred](https://www.alfredapp.com/)) and then moved into a separate database for notes. Inspirational items and documents get moved into their database. Every afternoon I clean the inbox and properly tag the items. Every Zettelkasten note gets a unique ID and title (generated with a snippet in [Alfred](https://www.alfredapp.com/)) and then moved into a separate database for notes. Inspirational items and documents get moved into their database.

View File

@@ -287,9 +287,7 @@ Next, I bought a waterproof <ProductLink asin="B08NF9KH46" text="45L Military Ta
And yes, I bought the <ProductLink asin="B085VRYBPH" text="Gadsden flag" /> sticker additionally. Its the flag used by Libertarians around the world. The snake design and the words "Dont Tread On Me" is a warning of vigilance and willingness to act in defense against coercion. 😂 And yes, I bought the <ProductLink asin="B085VRYBPH" text="Gadsden flag" /> sticker additionally. Its the flag used by Libertarians around the world. The snake design and the words "Dont Tread On Me" is a warning of vigilance and willingness to act in defense against coercion. 😂
<Figure caption="Bug Out Bag"> <BasicImage caption="Bug Out Bag" src="/images/posts/bug-out-bag.webp" alt="Bug Out Bag" />
<Image src="/assets/images/posts/bug-out-bag.webp" alt="Bug Out Bag" />
</Figure>
[^mooser2021lp]: Barbara Mooser (2021): _Skandal im Netz: Abgeordneter Huber im Twitter-Gewitter_, https://www.sueddeutsche.de/muenchen/ebersberg/falscher-hashtag-skandal-im-netz-abgeordneter-huber-im-twitter-gewitter-1.5388590. [^mooser2021lp]: Barbara Mooser (2021): _Skandal im Netz: Abgeordneter Huber im Twitter-Gewitter_, https://www.sueddeutsche.de/muenchen/ebersberg/falscher-hashtag-skandal-im-netz-abgeordneter-huber-im-twitter-gewitter-1.5388590.

View File

@@ -30,12 +30,11 @@ The poem is his warning.
## Copybook Headings ## Copybook Headings
<Figure caption="A page from a 19th-century copybook, in which the printed headings have been copied. The homily is paraphrased from a 17th-century sermon of Isaac Barrow, Against Detraction — “Good nature, like a bee, collects honey from every herb. Ill nature, like a spider, sucks poison from the flowers.”"> <BasicImage
<Image caption="A page from a 19th-century copybook, in which the printed headings have been copied. The homily is paraphrased from a 17th-century sermon of Isaac Barrow, Against Detraction — “Good nature, like a bee, collects honey from every herb. Ill nature, like a spider, sucks poison from the flowers.”"
src="/assets/images/posts/copybook-headings.webp" src="/images/posts/copybook-headings.webp"
alt="A page from a 19th-century copybook" alt="A page from a 19th-century copybook"
/> />
</Figure>
Copybook Headings were lined pages with short wisdom, aphorisms, or verses at the top, used to practice cursive writing. The student was challenged to repeat the sentence a few dozen times on the page and by doing not only learned the handwriting but took in the wisdom and morals transmitted from one generation to another. Copybook Headings were lined pages with short wisdom, aphorisms, or verses at the top, used to practice cursive writing. The student was challenged to repeat the sentence a few dozen times on the page and by doing not only learned the handwriting but took in the wisdom and morals transmitted from one generation to another.

View File

@@ -10,9 +10,12 @@ tags: ["code", "design", "personal"]
My brand-new website is online, using [Eleventy](https://www.11ty.dev/) as its static site generator. The development was quick and fun, and Eleventy gives me a huge amount of flexibility. And its fast, [very fast](https://www.zachleat.com/web/build-benchmark/). Burned by my last technology choice, I did this time a performance test _before_ picking the tool. I created 1000 large Markdown pages and let Eleventy render them to HTML. It was done in an astonishing 3.8 seconds. My brand-new website is online, using [Eleventy](https://www.11ty.dev/) as its static site generator. The development was quick and fun, and Eleventy gives me a huge amount of flexibility. And its fast, [very fast](https://www.zachleat.com/web/build-benchmark/). Burned by my last technology choice, I did this time a performance test _before_ picking the tool. I created 1000 large Markdown pages and let Eleventy render them to HTML. It was done in an astonishing 3.8 seconds.
<Figure caption="New Website 2021 Homepage" size="wide"> <BasicImage
<Image src="/assets/images/posts/new-website-2021.webp" alt="New Website 2021 Homepage" /> caption="New Website 2021 Homepage"
</Figure> size="wide"
src="/images/posts/new-website-2021.webp"
alt="New Website 2021 Homepage"
/>
## Whats New? ## Whats New?

View File

@@ -45,9 +45,12 @@ My previous dotfiles used a custom script to create symbolic links from inside t
Previously, I used [iTerm2](https://iterm2.com/) as my terminal application, but it is slow and using Vim is sluggish. I heard of [Kitty](https://github.com/kovidgoyal/kitty) and [Alacritty](https://github.com/alacritty/alacritty) and tried both. In the end, I decided to use Kitty as my new terminal application. It is a cross-platform, fast, feature-rich, GPU-based terminal. Additionally, it has built-in support for [Ligatures](<https://grokipedia.com/page/Ligature_(writing)>). Previously, I used [iTerm2](https://iterm2.com/) as my terminal application, but it is slow and using Vim is sluggish. I heard of [Kitty](https://github.com/kovidgoyal/kitty) and [Alacritty](https://github.com/alacritty/alacritty) and tried both. In the end, I decided to use Kitty as my new terminal application. It is a cross-platform, fast, feature-rich, GPU-based terminal. Additionally, it has built-in support for [Ligatures](<https://grokipedia.com/page/Ligature_(writing)>).
<Figure caption="Terminal" size="wide"> <BasicImage
<Image src="/assets/images/posts/work-environment-terminal.webp" alt="Terminal" /> caption="Terminal"
</Figure> size="wide"
src="/images/posts/work-environment-terminal.webp"
alt="Terminal"
/>
## Shell ## Shell
@@ -89,9 +92,7 @@ While it is possible to download color themes for each tool, I use [base16-shell
The terminal beginner uses a new terminal window when wanting to run something while a process is in progress. The intermediate terminal user uses the built-in feature of terminals to create new tabs. The advanced terminal user uses the built-in feature to split windows into separate sections. The professional terminal user uses a terminal multiplexer. It allows you to switch between several programs in one terminal and detach them while keeping them running in the background. The terminal beginner uses a new terminal window when wanting to run something while a process is in progress. The intermediate terminal user uses the built-in feature of terminals to create new tabs. The advanced terminal user uses the built-in feature to split windows into separate sections. The professional terminal user uses a terminal multiplexer. It allows you to switch between several programs in one terminal and detach them while keeping them running in the background.
<Figure caption="TMUX" size="wide"> <BasicImage caption="TMUX" size="wide" src="/images/posts/work-environment-tmux.webp" alt="TMUX" />
<Image src="/assets/images/posts/work-environment-tmux.webp" alt="TMUX" />
</Figure>
A co-worker introduced me to this concept 10 years ago. Since then, I use [tmux](https://tmux.github.io/). It allows me to run many work projects and private projects at the same time and switch with a few keystrokes between them. A co-worker introduced me to this concept 10 years ago. Since then, I use [tmux](https://tmux.github.io/). It allows me to run many work projects and private projects at the same time and switch with a few keystrokes between them.
@@ -117,9 +118,7 @@ This is where useful tools like [z](https://github.com/rupa/z) and [fzf](https:/
[FZF](https://github.com/junegunn/fzf) is my favorite tool on the terminal. It is a general-purpose command-line fuzzy finder that is blazing fast and can be combined with every tool thinkable. [FZF](https://github.com/junegunn/fzf) is my favorite tool on the terminal. It is a general-purpose command-line fuzzy finder that is blazing fast and can be combined with every tool thinkable.
<Figure caption="FZF" size="wide"> <BasicImage caption="FZF" size="wide" src="/images/posts/work-environment-fzf.webp" alt="FZF" />
<Image src="/assets/images/posts/work-environment-fzf.webp" alt="FZF" />
</Figure>
You can take nearly any output and pass it to FZF to get a list that can be filtered down with a fuzzy search in seconds. It can handle tenths of thousands or even hundreds of thousands of items with a fantastic performance. You can take nearly any output and pass it to FZF to get a list that can be filtered down with a fuzzy search in seconds. It can handle tenths of thousands or even hundreds of thousands of items with a fantastic performance.
@@ -127,9 +126,7 @@ You can take nearly any output and pass it to FZF to get a list that can be filt
Terminals have tools like `cat`, `head`, or `tail` to quickly view content without opening them in a more powerful editor. Cat is the most used tool of this kind, but it doesnt have plenty of features except showing the content. Terminals have tools like `cat`, `head`, or `tail` to quickly view content without opening them in a more powerful editor. Cat is the most used tool of this kind, but it doesnt have plenty of features except showing the content.
<Figure caption="Bat" size="wide"> <BasicImage caption="Bat" size="wide" src="/images/posts/work-environment-bat.webp" alt="Bat" />
<Image src="/assets/images/posts/work-environment-bat.webp" alt="Bat" />
</Figure>
[Bat](https://github.com/sharkdp/bat) is a content viewer like cat, but with powerful features like syntax highlighting, line numbers, git integration, and paging. I replaced it nearly everywhere where I used `cat` before. It can be combined with FZF to view the code. [Bat](https://github.com/sharkdp/bat) is a content viewer like cat, but with powerful features like syntax highlighting, line numbers, git integration, and paging. I replaced it nearly everywhere where I used `cat` before. It can be combined with FZF to view the code.
@@ -200,9 +197,12 @@ I use [pyenv](https://github.com/pyenv/pyenv) for version management with Python
There are dozens of window managers available, paid or free. Even the built-in macOS split feature might be enough for regular people. But a powerful window manager is crucial for effective working. As a developer, we use two or even more monitors to constantly monitor services, browse the documentation, write code, check email or chat, and browse the internet. The context switches throughout the day, sometimes the Browser is a primary tool (when surfing), and other times its a secondary tool (when coding). Moving windows around monitors, resizing and arranging them is therefore important. There are dozens of window managers available, paid or free. Even the built-in macOS split feature might be enough for regular people. But a powerful window manager is crucial for effective working. As a developer, we use two or even more monitors to constantly monitor services, browse the documentation, write code, check email or chat, and browse the internet. The context switches throughout the day, sometimes the Browser is a primary tool (when surfing), and other times its a secondary tool (when coding). Moving windows around monitors, resizing and arranging them is therefore important.
<Figure caption="Hammerspoon" size="wide"> <BasicImage
<Image src="/assets/images/posts/work-environment-hammerspoon.webp" alt="Hammerspoon" /> caption="Hammerspoon"
</Figure> size="wide"
src="/images/posts/work-environment-hammerspoon.webp"
alt="Hammerspoon"
/>
I use [Hammerspoon](https://www.hammerspoon.org/) for nearly 10 years. It is a bridge between macOS and a Lua scripting engine. Its possible to control nearly everything with it and listen to Wi-Fi or USB events. I use it mainly for window resizing, window layout management, and application switching. If youre interested in my configuration, you can find it in [init.lua](https://github.com/kogakure/dotfiles/blob/master/hammerspoon/init.lua) and additional helper functions in [functions.lua](https://github.com/kogakure/dotfiles/blob/master/hammerspoon/functions.lua). Those are copied because I had no clue about Lua 10 years ago. I use [Hammerspoon](https://www.hammerspoon.org/) for nearly 10 years. It is a bridge between macOS and a Lua scripting engine. Its possible to control nearly everything with it and listen to Wi-Fi or USB events. I use it mainly for window resizing, window layout management, and application switching. If youre interested in my configuration, you can find it in [init.lua](https://github.com/kogakure/dotfiles/blob/master/hammerspoon/init.lua) and additional helper functions in [functions.lua](https://github.com/kogakure/dotfiles/blob/master/hammerspoon/functions.lua). Those are copied because I had no clue about Lua 10 years ago.

View File

@@ -72,9 +72,12 @@ Neovim has many features inherited from Vim and Vi, but the developers cant a
Even for installing plugins, you have multiple options: You can download and copy the file manually (nobody does this) or install one of the many plugin managers. I use [vim-plug](https://github.com/kogakure/dotfiles/blob/master/nvim/autocmd.vim). All you need to do is add a line pointing to the plugin to your configuration, reload Vim, and run `:PlugInstall`. Even for installing plugins, you have multiple options: You can download and copy the file manually (nobody does this) or install one of the many plugin managers. I use [vim-plug](https://github.com/kogakure/dotfiles/blob/master/nvim/autocmd.vim). All you need to do is add a line pointing to the plugin to your configuration, reload Vim, and run `:PlugInstall`.
<Figure caption="Vim Plug" size="wide"> <BasicImage
<Image src="/assets/images/posts/work-environment-plug-install.webp" alt="Vim Plug" /> caption="Vim Plug"
</Figure> size="wide"
src="/images/posts/work-environment-plug-install.webp"
alt="Vim Plug"
/>
### Plugin Configuration ### Plugin Configuration
@@ -94,9 +97,12 @@ The amount of my plugins is currently 78. I will use the rough categories of my
The built-in LSP client of Neovim is a fantastic feature. But its the most complicated part to set up at the moment. Of all the plugins, I struggled the most in setting up LSP. The main plugins to help are [lspconfig](https://github.com/neovim/nvim-lspconfig) and [nvim-lsp-installer](https://github.com/williamboman/nvim-lsp-installer) will help to create configurations for the LSP servers and to install them without additional manual work. The built-in LSP client of Neovim is a fantastic feature. But its the most complicated part to set up at the moment. Of all the plugins, I struggled the most in setting up LSP. The main plugins to help are [lspconfig](https://github.com/neovim/nvim-lspconfig) and [nvim-lsp-installer](https://github.com/williamboman/nvim-lsp-installer) will help to create configurations for the LSP servers and to install them without additional manual work.
<Figure caption="LSP Installer" size="wide"> <BasicImage
<Image src="/assets/images/posts/work-environment-lsp-installer.webp" alt="LSP Installer" /> caption="LSP Installer"
</Figure> size="wide"
src="/images/posts/work-environment-lsp-installer.webp"
alt="LSP Installer"
/>
One of the LSP servers is the diagnostics language server. There is an [unofficial collection](https://github.com/creativenull/diagnosticls-configs-nvim) of configurations for useful things such as prettier or ESLint. One of the LSP servers is the diagnostics language server. There is an [unofficial collection](https://github.com/creativenull/diagnosticls-configs-nvim) of configurations for useful things such as prettier or ESLint.
@@ -106,9 +112,12 @@ One of the LSP servers is the diagnostics language server. There is an [unoffici
Vim has a nice completion engine with `omnicomplete`, but with [nvim-cmp](https://github.com/hrsh7th/nvim-cmp) it feels much more modern. The recommended setup includes more plugins by the same author to complete LSP, buffers, path, vims command line, and snippets of one of the four biggest snippet plugins. Vim has a nice completion engine with `omnicomplete`, but with [nvim-cmp](https://github.com/hrsh7th/nvim-cmp) it feels much more modern. The recommended setup includes more plugins by the same author to complete LSP, buffers, path, vims command line, and snippets of one of the four biggest snippet plugins.
<Figure caption="Completion" size="wide"> <BasicImage
<Image src="/assets/images/posts/work-environment-completion.webp" alt="Completion" /> caption="Completion"
</Figure> size="wide"
src="/images/posts/work-environment-completion.webp"
alt="Completion"
/>
I decided to stay with [Ultisnips](https://github.com/SirVer/ultisnips) because its the most starred, creating snippets is quick and easy and with [vim-snippets](https://github.com/honza/vim-snippets) it brings a massive collection of snippets. There is a [source for nvim-cmp](https://github.com/quangnguyen30192/cmp-nvim-ultisnips). I decided to stay with [Ultisnips](https://github.com/SirVer/ultisnips) because its the most starred, creating snippets is quick and easy and with [vim-snippets](https://github.com/honza/vim-snippets) it brings a massive collection of snippets. There is a [source for nvim-cmp](https://github.com/quangnguyen30192/cmp-nvim-ultisnips).
@@ -118,9 +127,12 @@ The plugin [lspkind-nvim](https://github.com/onsails/lspkind-nvim) will add pret
[Telescope](https://github.com/nvim-telescope/telescope.nvim) is my favorite plugin. It is a plugin to find, filter, preview, and pick files. It supports built-in dozens of features, for example, files, Vim features, LSP, Git, and many more. But it can be extended to browse [the file system](https://github.com/nvim-telescope/telescope-file-browser.nvim), [fzf](https://github.com/nvim-telescope/telescope-fzf-native.nvim), [recently used files](https://github.com/nvim-telescope/telescope-frecency.nvim), [node_modules](https://github.com/nvim-telescope/telescope-node-modules.nvim), or [browser bookmarks](https://github.com/dhruvmanila/telescope-bookmarks.nvim). [Telescope](https://github.com/nvim-telescope/telescope.nvim) is my favorite plugin. It is a plugin to find, filter, preview, and pick files. It supports built-in dozens of features, for example, files, Vim features, LSP, Git, and many more. But it can be extended to browse [the file system](https://github.com/nvim-telescope/telescope-file-browser.nvim), [fzf](https://github.com/nvim-telescope/telescope-fzf-native.nvim), [recently used files](https://github.com/nvim-telescope/telescope-frecency.nvim), [node_modules](https://github.com/nvim-telescope/telescope-node-modules.nvim), or [browser bookmarks](https://github.com/dhruvmanila/telescope-bookmarks.nvim).
<Figure caption="Telescope" size="wide"> <BasicImage
<Image src="/assets/images/posts/work-environment-telescope.webp" alt="Telescope" /> caption="Telescope"
</Figure> size="wide"
src="/images/posts/work-environment-telescope.webp"
alt="Telescope"
/>
I dont use Tree plugins much because Telescope is fast and finds everything, but every so often you want to browse a specific folder structure. NerdTree is the most famous tree plugin, but I use a newer version written in Lua: [nvim-tree.lua](https://github.com/kyazdani42/nvim-tree.lua). I dont use Tree plugins much because Telescope is fast and finds everything, but every so often you want to browse a specific folder structure. NerdTree is the most famous tree plugin, but I use a newer version written in Lua: [nvim-tree.lua](https://github.com/kyazdani42/nvim-tree.lua).
@@ -160,9 +172,7 @@ Another thing on the opposite end of the window that many people want is a statu
I like to work distraction-free. In Visual Studio Code there is the Zen mode which will hide all unnecessary things. For Vim, the plugin [Goyo](https://github.com/junegunn/goyo.vim) does a similar thing. It centers the editor and removes all distractions. I like to work distraction-free. In Visual Studio Code there is the Zen mode which will hide all unnecessary things. For Vim, the plugin [Goyo](https://github.com/junegunn/goyo.vim) does a similar thing. It centers the editor and removes all distractions.
<Figure caption="Goyo" size="wide"> <BasicImage caption="Goyo" size="wide" src="/images/posts/work-environment-goyo.webp" alt="Goyo" />
<Image src="/assets/images/posts/work-environment-goyo.webp" alt="Goyo" />
</Figure>
### Syntax Highlighting ### Syntax Highlighting
@@ -174,9 +184,12 @@ The only problem I have is support for Styled Components. Its an [open issue
As a Front-end Web Developer, I love to see my color values visualized. The plugin [colorizer.lua](https://github.com/norcalli/nvim-colorizer.lua) does this fast and pretty. As a Front-end Web Developer, I love to see my color values visualized. The plugin [colorizer.lua](https://github.com/norcalli/nvim-colorizer.lua) does this fast and pretty.
<Figure caption="Colorizer" size="wide"> <BasicImage
<Image src="/assets/images/posts/work-environment-colorizer.webp" alt="Colorizer" /> caption="Colorizer"
</Figure> size="wide"
src="/images/posts/work-environment-colorizer.webp"
alt="Colorizer"
/>
Another plugin I use is [Emmet](https://github.com/mattn/emmet-vim). It allows using this simple syntax to automatically create HTML or CSS. Another plugin I use is [Emmet](https://github.com/mattn/emmet-vim). It allows using this simple syntax to automatically create HTML or CSS.

View File

@@ -20,9 +20,12 @@ If youre just curious and dont to pay for the necessary hardware, or creat
If you have an iPad or iPhone, youre in luck because a free app is available on the App Store that allows using dozens of free image models based on Stable Diffusion. The name of the app is [Draw Things: AI Generation](https://apps.apple.com/app/draw-things-ai-generation/id6444050820), developed by Liu Liu. The app is mind-blowing and I highly recommend it. If you have an iPad or iPhone, youre in luck because a free app is available on the App Store that allows using dozens of free image models based on Stable Diffusion. The name of the app is [Draw Things: AI Generation](https://apps.apple.com/app/draw-things-ai-generation/id6444050820), developed by Liu Liu. The app is mind-blowing and I highly recommend it.
<Figure caption="Draw Things app for iOS/iPadOS" size="wide"> <BasicImage
<Image src="/assets/images/posts/ai-draw-things.webp" alt="Draw Things app" /> caption="Draw Things app for iOS/iPadOS"
</Figure> size="wide"
src="/images/posts/ai-draw-things.webp"
alt="Draw Things app"
/>
The developer improves the app constantly by adding interesting new models. I downloaded over 50 GB of model data. Besides the official versions of Stable Diffusion, there are models from the community. The most important website for models is [Hugging Face](https://huggingface.co/), an AI community to build, train and deploy models powered by the reference open source in machine learning. Its the GitHub for AI. You can find exciting [projects](https://huggingface.co/huggingface-projects) on Huggingface, for example [diffuse the f rest](https://huggingface.co/spaces/huggingface-projects/diffuse-the-rest), where you draw an image and provide a prompt and the AI will generate a better version of it. The developer improves the app constantly by adding interesting new models. I downloaded over 50 GB of model data. Besides the official versions of Stable Diffusion, there are models from the community. The most important website for models is [Hugging Face](https://huggingface.co/), an AI community to build, train and deploy models powered by the reference open source in machine learning. Its the GitHub for AI. You can find exciting [projects](https://huggingface.co/huggingface-projects) on Huggingface, for example [diffuse the f rest](https://huggingface.co/spaces/huggingface-projects/diffuse-the-rest), where you draw an image and provide a prompt and the AI will generate a better version of it.
@@ -65,12 +68,12 @@ You can find most models available in the Draw Things application on Hugging Fac
To show what the models are capable of, I used my profile picture with different diffusion models. I used the same seed, no prompt, `50` steps, a guidance scale of `13,0`, a strength of `46%`, and the `Euler Ancestral` sampler. 46% as a strength value means it took roughly half of the source photo and the rest was creative. Lower values generate an image that looks like the source image, higher values generate images that look like the style the model was trained on. If you combine it with a prompt, you can get even more creative results, but you can never change the basic geometry of the image. For that, you need to train a new model with your face in Dreambooth. To show what the models are capable of, I used my profile picture with different diffusion models. I used the same seed, no prompt, `50` steps, a guidance scale of `13,0`, a strength of `46%`, and the `Euler Ancestral` sampler. 46% as a strength value means it took roughly half of the source photo and the rest was creative. Lower values generate an image that looks like the source image, higher values generate images that look like the style the model was trained on. If you combine it with a prompt, you can get even more creative results, but you can never change the basic geometry of the image. For that, you need to train a new model with your face in Dreambooth.
<Figure caption="My profile picture in different diffusion models" size="wide"> <BasicImage
<Image caption="My profile picture in different diffusion models"
src="/assets/images/posts/ai-diffusion-models.webp" size="wide"
src="/images/posts/ai-diffusion-models.webp"
alt="Profile picture in diffusion models" alt="Profile picture in diffusion models"
/> />
</Figure>
## Diffusion Models ## Diffusion Models
@@ -92,9 +95,12 @@ Some generators allow negative prompts, to exclude specific things from the imag
My first prompt was basic, I asked the AI to generate `a cyberpunk wizard`. The result was impressive, but random luck. I recreated the first two images with the same seed and upscaled the second one to add more detail. But the third image, generated with a new seed, created a complete different picture. My first prompt was basic, I asked the AI to generate `a cyberpunk wizard`. The result was impressive, but random luck. I recreated the first two images with the same seed and upscaled the second one to add more detail. But the third image, generated with a new seed, created a complete different picture.
<Figure caption="A cyberpunk wizard" size="wide"> <BasicImage
<Image src="/assets/images/posts/ai-cyberpunk-wizard.webp" alt="Cyberpunk wizard" /> caption="A cyberpunk wizard"
</Figure> size="wide"
src="/images/posts/ai-cyberpunk-wizard.webp"
alt="Cyberpunk wizard"
/>
The art or skill of writing a good prompt is somewhere between programming, art direction, art history, photography, and writing. The more you know about formats, lenses, colors, lighting, art, artists, photography, painting, and many other art forms, the better you can write a good prompt. The art or skill of writing a good prompt is somewhere between programming, art direction, art history, photography, and writing. The more you know about formats, lenses, colors, lighting, art, artists, photography, painting, and many other art forms, the better you can write a good prompt.
@@ -124,9 +130,12 @@ A seed is a starting point for generating an AI image. It can be a random value
Inpainting is a technique used in image processing and computer vision to fill in missing or corrupted parts of an image. Inpainting algorithms can be used to restore damaged or degraded images, remove objects from an image, or fill in gaps in an image. These algorithms work by using information from surrounding pixels in the image to estimate the values of the missing or corrupted pixels. In the context of AI image generation, inpainting can be used to improve the quality of generated images by filling in any missing or incomplete pixels. Inpainting is a technique used in image processing and computer vision to fill in missing or corrupted parts of an image. Inpainting algorithms can be used to restore damaged or degraded images, remove objects from an image, or fill in gaps in an image. These algorithms work by using information from surrounding pixels in the image to estimate the values of the missing or corrupted pixels. In the context of AI image generation, inpainting can be used to improve the quality of generated images by filling in any missing or incomplete pixels.
<Figure caption="AI Inpainting" size="wide"> <BasicImage
<Image src="/assets/images/posts/ai-inpainting.webp" alt="AI Inpainting" /> caption="AI Inpainting"
</Figure> size="wide"
src="/images/posts/ai-inpainting.webp"
alt="AI Inpainting"
/>
The simplest form of inpainting is to remove a specific object from an image. For example, if you want to remove a person from an image, you can use an inpainting algorithm to fill in the missing pixels with the surrounding pixels. It is possible to fill the area in with a prompt. In the image above, I asked Stable Diffusion to fill in a teddy bear, sitting on a sofa. The simplest form of inpainting is to remove a specific object from an image. For example, if you want to remove a person from an image, you can use an inpainting algorithm to fill in the missing pixels with the surrounding pixels. It is possible to fill the area in with a prompt. In the image above, I asked Stable Diffusion to fill in a teddy bear, sitting on a sofa.

View File

@@ -24,24 +24,18 @@ I also introduced some new pages, such as the [tools](/tools/) listing my work e
I've utilized AI a lot for my new website. Not only for coding with [GitHub Copilot](https://github.com/features/copilot), but also [ChatGPT](https://chat.openai.com/) (with [Raycast Pro](https://www.raycast.com/pro)) to debug complex issues during development, generate TypeScript types, or automatically generate code. I used it to write and rewrite text, replace template tags with components, fix typos, and much more. In addition, I used [Stable Diffusion](https://stability.ai/) to create my profile and cover photos. And I used AI image upscaling to increase all old cover photos. I've utilized AI a lot for my new website. Not only for coding with [GitHub Copilot](https://github.com/features/copilot), but also [ChatGPT](https://chat.openai.com/) (with [Raycast Pro](https://www.raycast.com/pro)) to debug complex issues during development, generate TypeScript types, or automatically generate code. I used it to write and rewrite text, replace template tags with components, fix typos, and much more. In addition, I used [Stable Diffusion](https://stability.ai/) to create my profile and cover photos. And I used AI image upscaling to increase all old cover photos.
<Figure
caption="AI Cover Photos: Bonsai (left), Shinto Gate in a mossy forest (center), and man running from a wave of news (right)"
size="wide"
>
<Image src="/assets/images/cover/bonsai.webp" alt="Bonsai" />
<Image src="/assets/images/cover/shinto-gate.webp" alt="Shinto gate in a mossy forest" />
<Image src="/assets/images/cover/news-wave.webp" alt="Man running from a wave of news" />
</Figure>
Previously, I had cover photos on my website, but I removed them because it was too time-consuming to find a new stock photo for each entry. However, with Stable Diffusion, I can now quickly generate a cover photo that fits the topic while experimenting with different art styles and techniques. I started with a few, such as the Bonsai on the homepage and the last 7 essays. I'll fill in the others over time. Likewise, I'm also planning to write a comprehensive tutorial on how I used Stable Diffusion to generate the bonsai cover image. Previously, I had cover photos on my website, but I removed them because it was too time-consuming to find a new stock photo for each entry. However, with Stable Diffusion, I can now quickly generate a cover photo that fits the topic while experimenting with different art styles and techniques. I started with a few, such as the Bonsai on the homepage and the last 7 essays. I'll fill in the others over time. Likewise, I'm also planning to write a comprehensive tutorial on how I used Stable Diffusion to generate the bonsai cover image.
## Development ## Development
Recreating my previous website with [Astro](https://astro.build/) was a lot of fun. It was impressive how quickly it was set up and how easy it was to find anything in the documentation. And the speed of Astro is impressive, nearly all of my pages have a perfect 100% rating in [Unlighthouse](https://unlighthouse.dev/). Recreating my previous website with [Astro](https://astro.build/) was a lot of fun. It was impressive how quickly it was set up and how easy it was to find anything in the documentation. And the speed of Astro is impressive, nearly all of my pages have a perfect 100% rating in [Unlighthouse](https://unlighthouse.dev/).
<Figure caption="Unlighthouse Results" size="wide"> <BasicImage
<Image src="/assets/images/posts/unlighthouse.webp" alt="unlighthouse results for my website" /> caption="Unlighthouse Results"
</Figure> size="wide"
src="/images/posts/unlighthouse.webp"
alt="unlighthouse results for my website"
/>
I opted for [Preact](https://preactjs.com/) for components, even though many didn't need interactivity. I'm glad I could use [MDX](https://mdxjs.com/) and map components to markdown elements. **Update:** I moved now to Astro components with a few interactive React components in the meantime. I opted for [Preact](https://preactjs.com/) for components, even though many didn't need interactivity. I'm glad I could use [MDX](https://mdxjs.com/) and map components to markdown elements. **Update:** I moved now to Astro components with a few interactive React components in the meantime.

View File

@@ -17,9 +17,12 @@ Ive used other application launchers before. Alfred was a good companion for
## Application Launcher ## Application Launcher
<Figure caption="The Raycast Launcher with 4 pinned favorites." size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-launcher.webp" alt="Raycast Launcher" /> caption="The Raycast Launcher with 4 pinned favorites."
</Figure> size="wide"
src="/images/posts/raycast-launcher.webp"
alt="Raycast Launcher"
/>
The most basic feature that you get is an application launcher like Apple Spotlight, but its prettier, has fuzzy search, and, as with everything in Raycast, an alias and a keyboard shortcut can be assigned. I navigate between my main apps without exception using keyboard shortcuts. The most basic feature that you get is an application launcher like Apple Spotlight, but its prettier, has fuzzy search, and, as with everything in Raycast, an alias and a keyboard shortcut can be assigned. I navigate between my main apps without exception using keyboard shortcuts.
@@ -33,9 +36,12 @@ Raycast is the only application with consistent app switching behavior. When I p
## Calculator ## Calculator
<Figure caption="Calculator" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-calculator.webp" alt="Calculator" /> caption="Calculator"
</Figure> size="wide"
src="/images/posts/raycast-calculator.webp"
alt="Calculator"
/>
Raycast has a magically powerful calculator. It can perform all the normal calculations and also convert angles, area, currency, data rate, data size, density, length, mass, power, pressure, speed, temperature, time, typography, volume, color, flight tracker, and many more. Raycast has a magically powerful calculator. It can perform all the normal calculations and also convert angles, area, currency, data rate, data size, density, length, mass, power, pressure, speed, temperature, time, typography, volume, color, flight tracker, and many more.
@@ -45,12 +51,12 @@ The calculator history allows you to view previous calculations and pin useful o
## Calendar ## Calendar
<Figure <BasicImage
caption="Calendar showing the next meeting, appointments of the current day, following days." caption="Calendar showing the next meeting, appointments of the current day, following days."
size="wide" size="wide"
> src="/images/posts/raycast-calendar.webp"
<Image src="/assets/images/posts/raycast-calendar.webp" alt="Calendar" /> alt="Calendar"
</Figure> />
The [Calendar](https://raycastapp.notion.site/Calendar-b4bdcf402a024c37940e46e8dcf2da91) feature is incredible. It allows you to open a schedule overview directly in Raycast and join calls, block times, delete events, copy or open links, copy event title or details, and open the camera. The [Calendar](https://raycastapp.notion.site/Calendar-b4bdcf402a024c37940e46e8dcf2da91) feature is incredible. It allows you to open a schedule overview directly in Raycast and join calls, block times, delete events, copy or open links, copy event title or details, and open the camera.
@@ -60,31 +66,38 @@ But the feature I love the most is the menu bar events. You can see the time unt
Raycast Notes (previously Floating Notes) are the perfect companion for storing ideas, ticket numbers, making quick notes in a meeting, removing formatting from copied text, and much more. I constantly use this feature. Raycast launched [Raycast Notes](https://www.raycast.com/blog/raycast-notes) at the end of 2024. They support now Markdown, code blocks, and multiple notes. Raycast Notes (previously Floating Notes) are the perfect companion for storing ideas, ticket numbers, making quick notes in a meeting, removing formatting from copied text, and much more. I constantly use this feature. Raycast launched [Raycast Notes](https://www.raycast.com/blog/raycast-notes) at the end of 2024. They support now Markdown, code blocks, and multiple notes.
<Figure caption="Raycast Notes"> <BasicImage caption="Raycast Notes" src="/images/posts/raycast-notes.webp" alt="Raycast Notes" />
<Image src="/assets/images/posts/raycast-notes.webp" alt="Raycast Notes" />
</Figure>
## Clipboard History ## Clipboard History
<Figure caption="Clipboard History" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-clipboard-history.webp" alt="Clipboard History" /> caption="Clipboard History"
</Figure> size="wide"
src="/images/posts/raycast-clipboard-history.webp"
alt="Clipboard History"
/>
Another feature I use constantly is Clipboard History. It allows accessing the history of everything you copied, not only text, but images, files, links, and colors. They can be filtered, searched and directly copied, opened, edited, or deleted. Another feature I use constantly is Clipboard History. It allows accessing the history of everything you copied, not only text, but images, files, links, and colors. They can be filtered, searched and directly copied, opened, edited, or deleted.
## Screenshots ## Screenshots
<Figure caption="Search Screenshots with text recognition." size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-screenshots.webp" alt="Screenshots" /> caption="Search Screenshots with text recognition."
</Figure> size="wide"
src="/images/posts/raycast-screenshots.webp"
alt="Screenshots"
/>
The screenshots I create are saved in a cloud storage folder. With Raycast, you can search all your screenshots (images and videos) in multiple locations with a preview. You can search and filter them by date, name, and even by text inside a screenshot. My process is to use [Cleanshot X](https://cleanshot.com/) to capture and create full-length screenshots. I then send them directly to Cleanshot X from Raycast to annotate them and paste them back into a chat or work ticket. The screenshots I create are saved in a cloud storage folder. With Raycast, you can search all your screenshots (images and videos) in multiple locations with a preview. You can search and filter them by date, name, and even by text inside a screenshot. My process is to use [Cleanshot X](https://cleanshot.com/) to capture and create full-length screenshots. I then send them directly to Cleanshot X from Raycast to annotate them and paste them back into a chat or work ticket.
## Snippets ## Snippets
<Figure caption="Snippets" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-snippets.webp" alt="Snippets" /> caption="Snippets"
</Figure> size="wide"
src="/images/posts/raycast-snippets.webp"
alt="Snippets"
/>
I have used various paid and open-source solutions for snippets throughout the years. However, why use separate software when you can have it included in your favorite application? I have used various paid and open-source solutions for snippets throughout the years. However, why use separate software when you can have it included in your favorite application?
@@ -94,26 +107,32 @@ There may be snippet applications available with more features (like programming
## Emoji & Symbols ## Emoji & Symbols
<Figure caption="Search Emoji & Symbols with pinned and frequently used emoji." size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-emoji-symbols.webp" alt="Search Emoji & Symbols" /> caption="Search Emoji & Symbols with pinned and frequently used emoji."
</Figure> size="wide"
src="/images/posts/raycast-emoji-symbols.webp"
alt="Search Emoji & Symbols"
/>
In a remote setting, its important to transfer emotions to lift the mood and make sure the text is not misunderstood. I use the Emoji & Symbols feature many times each day. The Raycast Emoji & Symbol app shows all emojis in a beautiful grid, shows recently used emojis, and allows you to pin the emojis important to you. In a remote setting, its important to transfer emotions to lift the mood and make sure the text is not misunderstood. I use the Emoji & Symbols feature many times each day. The Raycast Emoji & Symbol app shows all emojis in a beautiful grid, shows recently used emojis, and allows you to pin the emojis important to you.
And recently, the feature got even better for Pro users, now you can search for anything and AI will find all Emoji that fit the search term. And recently, the feature got even better for Pro users, now you can search for anything and AI will find all Emoji that fit the search term.
<Figure caption="Search Emoji & Symbols with AI" size="wide"> <BasicImage
<Image caption="Search Emoji & Symbols with AI"
src="/assets/images/posts/raycast-emoji-symbols-ai.webp" size="wide"
src="/images/posts/raycast-emoji-symbols-ai.webp"
alt="Search Emoji & Symbols with AI" alt="Search Emoji & Symbols with AI"
/> />
</Figure>
## Search Files ## Search Files
<Figure caption="Search Files" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-search-files.webp" alt="Search Files" /> caption="Search Files"
</Figure> size="wide"
src="/images/posts/raycast-search-files.webp"
alt="Search Files"
/>
This allows to search your hard drive for files, folders and optionally for the contents of your files. From there you can get information about the file, open, move, copy, duplicate and perform other commands on the selected file. This allows to search your hard drive for files, folders and optionally for the contents of your files. From there you can get information about the file, open, move, copy, duplicate and perform other commands on the selected file.
@@ -125,9 +144,12 @@ I would love if my window manager [AeroSpace](https://github.com/nikitabobko/Aer
## Quicklinks ## Quicklinks
<Figure caption="Search Quicklinks" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-quicklinks.webp" alt="Search Quicklinks" /> caption="Search Quicklinks"
</Figure> size="wide"
src="/images/posts/raycast-quicklinks.webp"
alt="Search Quicklinks"
/>
A feature I initially overlooked and started using a few months ago after watching the useful [Quick Tips](https://www.youtube.com/playlist?list=PLNzQX4H1-dVTHCLKFjekFwswKDpcEN2rI) playlist by Raycast on YouTube is Quicklinks. But now I use it more and more. Quicklinks allows linking to URLs, files on your hard drive and even include a query for a search. I use Quicklinks a lot to create names I can remember to link to important documents, folders or work URLs. A feature I initially overlooked and started using a few months ago after watching the useful [Quick Tips](https://www.youtube.com/playlist?list=PLNzQX4H1-dVTHCLKFjekFwswKDpcEN2rI) playlist by Raycast on YouTube is Quicklinks. But now I use it more and more. Quicklinks allows linking to URLs, files on your hard drive and even include a query for a search. I use Quicklinks a lot to create names I can remember to link to important documents, folders or work URLs.
@@ -141,12 +163,12 @@ I use several script commands, which are publicly available in my [raycast-scrip
## Raycast AI 💰 ## Raycast AI 💰
<Figure <BasicImage
caption="Raycast AI with custom configuration. This images shows my Japanese Assistant." caption="Raycast AI with custom configuration. This images shows my Japanese Assistant."
size="wide" size="wide"
> src="/images/posts/raycast-ai.webp"
<Image src="/assets/images/posts/raycast-ai.webp" alt="Raycast AI" /> alt="Raycast AI"
</Figure> />
In case you dont know how to program custom scripts, you can use Raycast AI as a paying Pro member to help with that. Raycast AI is one of the features I use the most. It uses multiple models under the hood, including OpenAI (ChatGPT), Mistral, Perplexity, Meta (Llama), and Anthropic (Claude). Instead of subscribing to each services and using a web interface, you can switch between the models and use it everywhere on your computer and work with highlighted text. In case you dont know how to program custom scripts, you can use Raycast AI as a paying Pro member to help with that. Raycast AI is one of the features I use the most. It uses multiple models under the hood, including OpenAI (ChatGPT), Mistral, Perplexity, Meta (Llama), and Anthropic (Claude). Instead of subscribing to each services and using a web interface, you can switch between the models and use it everywhere on your computer and work with highlighted text.
@@ -156,9 +178,12 @@ You can continue (or start) a regular ChatGPT session in an extra window that co
I have several assistants that I use for specific tasks, providing the necessary instructions and context. I have one that helps me solve coding issues, one that helps me learn Japanese grammar, and one for training tips. I have several assistants that I use for specific tasks, providing the necessary instructions and context. I have one that helps me solve coding issues, one that helps me learn Japanese grammar, and one for training tips.
<Figure caption="Search AI Commands" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-ai-commands.webp" alt="Search AI Commands" /> caption="Search AI Commands"
</Figure> size="wide"
src="/images/posts/raycast-ai-commands.webp"
alt="Search AI Commands"
/>
But the feature I like the most is Search AI Commands. These commands allow you to create specific custom commands that perform a task on your text. The built-in AI commands include: But the feature I like the most is Search AI Commands. These commands allow you to create specific custom commands that perform a task on your text. The built-in AI commands include:
@@ -179,12 +204,12 @@ Raycast includes another 10-20 AI commands as ideas, and I have created many mor
## Translator 💰 ## Translator 💰
<Figure <BasicImage
caption="Translator. Translating “Epitaph for Poets Tomb” by Shuntaro Tanikawa." caption="Translator. Translating “Epitaph for Poets Tomb” by Shuntaro Tanikawa."
size="wide" size="wide"
> src="/images/posts/raycast-translator.webp"
<Image src="/assets/images/posts/raycast-translator.webp" alt="Translate" /> alt="Translate"
</Figure> />
As a Pro subscriber, you have access to a fantastic built-in translator that can translate in nearly all languages. You can dictate and listen to the translations. As a Pro subscriber, you have access to a fantastic built-in translator that can translate in nearly all languages. You can dictate and listen to the translations.
@@ -203,9 +228,12 @@ Raycast has many more features to mention, but here are a few:
## Raycast Store ## Raycast Store
<Figure caption="Raycast Store" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-store.webp" alt="Raycast Store" /> caption="Raycast Store"
</Figure> size="wide"
src="/images/posts/raycast-store.webp"
alt="Raycast Store"
/>
This alone combines the features of a dozen or more, often paid apps. But the reason Raycast is so successful is its built-in app [store](https://www.raycast.com/store) that allows developers to provide custom extensions. Raycast provides a convenient and robust API to build extensions with [React](https://react.dev/), one of the most popular JavaScript libraries. Under the hood, the components are converted into native code. This alone combines the features of a dozen or more, often paid apps. But the reason Raycast is so successful is its built-in app [store](https://www.raycast.com/store) that allows developers to provide custom extensions. Raycast provides a convenient and robust API to build extensions with [React](https://react.dev/), one of the most popular JavaScript libraries. Under the hood, the components are converted into native code.
@@ -213,27 +241,30 @@ Because the number of extensions is huge, Ill show in the next section how I
## Browsing & Searching ## Browsing & Searching
<Figure caption="Search Brave Tabs" size="wide"> <BasicImage
<Image caption="Search Brave Tabs"
src="/assets/images/posts/raycast-extension-search-brave-tabs.webp" size="wide"
src="/images/posts/raycast-extension-search-brave-tabs.webp"
alt="Search Brave Tabs" alt="Search Brave Tabs"
/> />
</Figure>
One of my most favorite extension in this section is the [Brave](https://www.raycast.com/ron-myers/brave) extension that allows you to control the Brave browser from anywhere. With it, you can search, create new tabs, and access the browser history and bookmarks from anywhere. When Im working somewhere and want to go to a specific tab, I dont have to switch to the browser, find the tab, and click it. Instead, I can immediately jump to the correct tab instantly. There are similar extensions for other browsers, for example [Arc](https://www.raycast.com/the-browser-company/arc). One of my most favorite extension in this section is the [Brave](https://www.raycast.com/ron-myers/brave) extension that allows you to control the Brave browser from anywhere. With it, you can search, create new tabs, and access the browser history and bookmarks from anywhere. When Im working somewhere and want to go to a specific tab, I dont have to switch to the browser, find the tab, and click it. Instead, I can immediately jump to the correct tab instantly. There are similar extensions for other browsers, for example [Arc](https://www.raycast.com/the-browser-company/arc).
<Figure caption="Brave Search" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-extension-brave-search.webp" alt="Brave Search" /> caption="Brave Search"
</Figure> size="wide"
src="/images/posts/raycast-extension-brave-search.webp"
alt="Brave Search"
/>
My default search engine these days is [Brave Search](https://search.brave.com/). Google is just too biased and suppresses too much information. With the [Brave Search](https://www.raycast.com/VishwasShashidhar/brave-search) extension, I can search with auto-complete from anywhere and directly open the search results in the browser. My default search engine these days is [Brave Search](https://search.brave.com/). Google is just too biased and suppresses too much information. With the [Brave Search](https://www.raycast.com/VishwasShashidhar/brave-search) extension, I can search with auto-complete from anywhere and directly open the search results in the browser.
<Figure caption="Search Raindrop.io Bookmarks" size="wide"> <BasicImage
<Image caption="Search Raindrop.io Bookmarks"
src="/assets/images/posts/raycast-extension-raindrop.webp" size="wide"
src="/images/posts/raycast-extension-raindrop.webp"
alt="Search Raindrop.io Bookmarks" alt="Search Raindrop.io Bookmarks"
/> />
</Figure>
The third of my most favorite extension is [Raindrop.io](https://www.raycast.com/lardissone/raindrop-io). It allows me to search in my favorite bookmark manager (30K bookmarks) and see the title, tags, and date of saving directly, and open the bookmark directly. The third of my most favorite extension is [Raindrop.io](https://www.raycast.com/lardissone/raindrop-io). It allows me to search in my favorite bookmark manager (30K bookmarks) and see the title, tags, and date of saving directly, and open the bookmark directly.
@@ -243,23 +274,32 @@ Other honorable mentions are the [Reddit Search](https://www.raycast.com/ewlchen
Im a Frontend Developer by profession and work a lot with code, but also with design tools. Im a Frontend Developer by profession and work a lot with code, but also with design tools.
<Figure caption="Search GitHub Repositories" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-github.webp" alt="Search GitHub Repositories" /> caption="Search GitHub Repositories"
</Figure> size="wide"
src="/images/posts/raycast-github.webp"
alt="Search GitHub Repositories"
/>
As a developer, you work a lot with version control. I use the [GitHub](https://www.raycast.com/raycast/github), [GitHub Enterprise](https://www.raycast.com/Kinbaum/github-for-enterprise), and [GitHub Gist](https://www.raycast.com/koinzhang/github-gist) extensions. They allow you to view or create pull requests, discussions, read notifications, search repositories, and much more. The [Git Repos](https://www.raycast.com/moored/git-repos) extension allows searching on the local hard drive for Git repositories. As a developer, you work a lot with version control. I use the [GitHub](https://www.raycast.com/raycast/github), [GitHub Enterprise](https://www.raycast.com/Kinbaum/github-for-enterprise), and [GitHub Gist](https://www.raycast.com/koinzhang/github-gist) extensions. They allow you to view or create pull requests, discussions, read notifications, search repositories, and much more. The [Git Repos](https://www.raycast.com/moored/git-repos) extension allows searching on the local hard drive for Git repositories.
<Figure caption="Homebrew Search" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-homebrew.webp" alt="Homebrew Search" /> caption="Homebrew Search"
</Figure> size="wide"
src="/images/posts/raycast-homebrew.webp"
alt="Homebrew Search"
/>
I use the [Kill Process](https://www.raycast.com/rolandleth/kill-process) extension to terminate hung processes. The [Port Manager](https://www.raycast.com/lucaschultz/port-manager) allows me to view or kill ports. The [Brew](https://www.raycast.com/nhojb/brew) extension allows me to use Homebrew from Raycast. I work a lot with Neovim and tmux in my Ghostty terminal. The [Tmux Sessioner](https://www.raycast.com/louishuyng/tmux-sessioner) allows me to jump directly into the terminal in a specific project. I use the [Kill Process](https://www.raycast.com/rolandleth/kill-process) extension to terminate hung processes. The [Port Manager](https://www.raycast.com/lucaschultz/port-manager) allows me to view or kill ports. The [Brew](https://www.raycast.com/nhojb/brew) extension allows me to use Homebrew from Raycast. I work a lot with Neovim and tmux in my Ghostty terminal. The [Tmux Sessioner](https://www.raycast.com/louishuyng/tmux-sessioner) allows me to jump directly into the terminal in a specific project.
I use extensions to format or create code. For example, I use [SVGO](https://www.raycast.com/kaichi/raycast-svgo) to optimize SVGs, [SVGR](https://www.raycast.com/rickMcGavin/svgr) to create React components from SVGs, and tools like [Format JSON](https://www.raycast.com/destiner/json-format) and [Prettier Code](https://www.raycast.com/lin/prettier) to format any code. Its convenient to format the code before pasting it anywhere on the web. I use extensions to format or create code. For example, I use [SVGO](https://www.raycast.com/kaichi/raycast-svgo) to optimize SVGs, [SVGR](https://www.raycast.com/rickMcGavin/svgr) to create React components from SVGs, and tools like [Format JSON](https://www.raycast.com/destiner/json-format) and [Prettier Code](https://www.raycast.com/lin/prettier) to format any code. Its convenient to format the code before pasting it anywhere on the web.
<Figure caption="Tailwind CSS Search Colors" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-tailwindcss.webp" alt="Tailwind CSS Search Colors" /> caption="Tailwind CSS Search Colors"
</Figure> size="wide"
src="/images/posts/raycast-tailwindcss.webp"
alt="Tailwind CSS Search Colors"
/>
A significant amount of a developers time is spent reading documentation to understand how libraries or tools work. I frequently use [Can I Use](https://www.raycast.com/thomaslombart/can-i-use) to determine browser support for web features, the [HTTP Status Codes](https://www.raycast.com/Alex_/http-status-codes) extension to look them up, [search npm packages](https://www.raycast.com/mrmartineau/search-npm), and browse the [TypeScript](https://www.raycast.com/chezhe/typescript-documentation-search) or [Tailwind CSS](https://www.raycast.com/vimtor/tailwindcss) documentation. A significant amount of a developers time is spent reading documentation to understand how libraries or tools work. I frequently use [Can I Use](https://www.raycast.com/thomaslombart/can-i-use) to determine browser support for web features, the [HTTP Status Codes](https://www.raycast.com/Alex_/http-status-codes) extension to look them up, [search npm packages](https://www.raycast.com/mrmartineau/search-npm), and browse the [TypeScript](https://www.raycast.com/chezhe/typescript-documentation-search) or [Tailwind CSS](https://www.raycast.com/vimtor/tailwindcss) documentation.
@@ -275,21 +315,30 @@ I love the [Color Picker](https://www.raycast.com/thomas/color-picker) extension
[Image Modification](https://www.raycast.com/HelloImSteven/sips) allows you to convert images and vector graphics, flip, scale, resize, add filters and distortions, optimize the size, and perform real-time image manipulations. [Image Modification](https://www.raycast.com/HelloImSteven/sips) allows you to convert images and vector graphics, flip, scale, resize, add filters and distortions, optimize the size, and perform real-time image manipulations.
<Figure caption="Search Google Fonts" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-google-fonts.webp" alt="Search Google Fonts" /> caption="Search Google Fonts"
</Figure> size="wide"
src="/images/posts/raycast-google-fonts.webp"
alt="Search Google Fonts"
/>
There is a [Google Fonts](https://www.raycast.com/GastroGeek/google-fonts) extension that allows browsing and directly downloading fonts. There is a [Google Fonts](https://www.raycast.com/GastroGeek/google-fonts) extension that allows browsing and directly downloading fonts.
<Figure caption="Search Glyphs" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-glyph-search.webp" alt="Search Glyphs" /> caption="Search Glyphs"
</Figure> size="wide"
src="/images/posts/raycast-glyph-search.webp"
alt="Search Glyphs"
/>
[Glyph Search](https://www.raycast.com/gbgk/glyph-search) helps you find Unicode characters. [Glyph Search](https://www.raycast.com/gbgk/glyph-search) helps you find Unicode characters.
<Figure caption="Search Unsplash Images" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-unsplash.webp" alt="Search Unsplash Images" /> caption="Search Unsplash Images"
</Figure> size="wide"
src="/images/posts/raycast-unsplash.webp"
alt="Search Unsplash Images"
/>
[Unsplash](https://www.raycast.com/eggsy/unsplash) enables looking at the massive collection of stock photos, and the [Figma File Search](https://www.raycast.com/michaelschultz/figma-files-raycast-extension) allows for direct searching and opening of designs. I started using the [Eagle](https://www.raycast.com/Yukai/eagle) extension to locally search all my assets stored in [Eagle](https://eagle.cool/). [Unsplash](https://www.raycast.com/eggsy/unsplash) enables looking at the massive collection of stock photos, and the [Figma File Search](https://www.raycast.com/michaelschultz/figma-files-raycast-extension) allows for direct searching and opening of designs. I started using the [Eagle](https://www.raycast.com/Yukai/eagle) extension to locally search all my assets stored in [Eagle](https://eagle.cool/).
@@ -299,23 +348,32 @@ I write a lot, including blog posts, documentation, chat messages, and code. Ray
[Lorem Ipsum](https://www.raycast.com/AntonNiklasson/lorem-ipsum) allows you to create placeholder text. [Link Cleaner](https://www.raycast.com/MisakiCoca/link-cleaner) removes all tracking parameters from the last URL in the clipboard. [Lorem Ipsum](https://www.raycast.com/AntonNiklasson/lorem-ipsum) allows you to create placeholder text. [Link Cleaner](https://www.raycast.com/MisakiCoca/link-cleaner) removes all tracking parameters from the last URL in the clipboard.
<Figure caption="Change Case" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-change-case.webp" alt="Change Case" /> caption="Change Case"
</Figure> size="wide"
src="/images/posts/raycast-change-case.webp"
alt="Change Case"
/>
One of my favorites is [Change Case](https://www.raycast.com/erics118/change-case). I use it many times each week to convert, for example, the title of a Jira ticket into a branch name in Git. The [Word Search](https://www.raycast.com/rishabswift/word-search) extension is fantastic for finding adjectives, antonyms, rhymes, synonyms, or missing letters. One of my favorites is [Change Case](https://www.raycast.com/erics118/change-case). I use it many times each week to convert, for example, the title of a Jira ticket into a branch name in Git. The [Word Search](https://www.raycast.com/rishabswift/word-search) extension is fantastic for finding adjectives, antonyms, rhymes, synonyms, or missing letters.
<Figure caption="Browser Readwise Library" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-readwise.webp" alt="Browser Readwise Library" /> caption="Browser Readwise Library"
</Figure> size="wide"
src="/images/posts/raycast-readwise.webp"
alt="Browser Readwise Library"
/>
All the tools I use for note-taking have companion apps: [Obsidian](https://www.raycast.com/KevinBatdorf/obsidian), [Readwise](https://www.raycast.com/natterstefan/readwise), [Readwise Reader](https://www.raycast.com/zach/readwise-reader), [DEVONthink](https://www.raycast.com/bgnfu7re/devonthink), and [Notion](https://www.raycast.com/notion/notion). All the tools I use for note-taking have companion apps: [Obsidian](https://www.raycast.com/KevinBatdorf/obsidian), [Readwise](https://www.raycast.com/natterstefan/readwise), [Readwise Reader](https://www.raycast.com/zach/readwise-reader), [DEVONthink](https://www.raycast.com/bgnfu7re/devonthink), and [Notion](https://www.raycast.com/notion/notion).
## Project Management & Productivity ## Project Management & Productivity
<Figure caption="Things Show Someday List" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-things.webp" alt="Things Show Someday List" /> caption="Things Show Someday List"
</Figure> size="wide"
src="/images/posts/raycast-things.webp"
alt="Things Show Someday List"
/>
There is most likely an app for most online tools available in this category. I, personally, use two of them: [Jira](https://www.raycast.com/raycast/jira) and [Things](https://www.raycast.com/loris/things). Jira is the ticket management tool we use at work, and Things is my personal to-do application. There is most likely an app for most online tools available in this category. I, personally, use two of them: [Jira](https://www.raycast.com/raycast/jira) and [Things](https://www.raycast.com/loris/things). Jira is the ticket management tool we use at work, and Things is my personal to-do application.
@@ -323,27 +381,39 @@ Fun fact: The Jira application needed approval by my companys IT. I opened a
## Media ## Media
<Figure caption="Search for GIFs" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-giphy.webp" alt="Search for GIFs" /> caption="Search for GIFs"
</Figure> size="wide"
src="/images/posts/raycast-giphy.webp"
alt="Search for GIFs"
/>
Raycast extensions are not just for work, but also for fun. Everyone needs to generate memes or find funny GIFs, right? Well, theres an extension called [Meme Generator](https://www.raycast.com/timoransky/meme-generator) and [GIF Search](https://www.raycast.com/josephschmitt/gif-search) for exactly that purpose. Raycast extensions are not just for work, but also for fun. Everyone needs to generate memes or find funny GIFs, right? Well, theres an extension called [Meme Generator](https://www.raycast.com/timoransky/meme-generator) and [GIF Search](https://www.raycast.com/josephschmitt/gif-search) for exactly that purpose.
<Figure caption="The Movie Database Top Rated" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-tmdb.webp" alt="The Movie Database Top Rated" /> caption="The Movie Database Top Rated"
</Figure> size="wide"
src="/images/posts/raycast-tmdb.webp"
alt="The Movie Database Top Rated"
/>
If youre into movies and TV shows, I frequently use [The Movie Database](https://www.raycast.com/Aayush9029/tmdb) for information and [JustWatch Search](https://www.raycast.com/rishabswift/search-justwatch) to find out where they are available for streaming. If youre into movies and TV shows, I frequently use [The Movie Database](https://www.raycast.com/Aayush9029/tmdb) for information and [JustWatch Search](https://www.raycast.com/rishabswift/search-justwatch) to find out where they are available for streaming.
<Figure caption="Spotify Your Library" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-spotify.webp" alt="Spotify Your Library" /> caption="Spotify Your Library"
</Figure> size="wide"
src="/images/posts/raycast-spotify.webp"
alt="Spotify Your Library"
/>
I use the [Goodreads](https://www.raycast.com/puneeth/goodreads) extension to discover books or authors and the [Spotify Player](https://www.raycast.com/mattisssa/spotify-player) to manage music. I use the [Goodreads](https://www.raycast.com/puneeth/goodreads) extension to discover books or authors and the [Spotify Player](https://www.raycast.com/mattisssa/spotify-player) to manage music.
<Figure caption="YouTube Search Videos" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-youtube.webp" alt="YouTube Search Videos" /> caption="YouTube Search Videos"
</Figure> size="wide"
src="/images/posts/raycast-youtube.webp"
alt="YouTube Search Videos"
/>
I regularly use the [YouTube](https://www.raycast.com/tonka3000/youtube) extension to search videos or channels and [YouTube Downloader](https://www.raycast.com/vimtor/youtube-downloader), as well as the [Twitter/𝕏 Video Downloader](https://www.raycast.com/kaanrkaraman/twitter-video-downloader), to download videos onto my hard drive. I regularly use the [YouTube](https://www.raycast.com/tonka3000/youtube) extension to search videos or channels and [YouTube Downloader](https://www.raycast.com/vimtor/youtube-downloader), as well as the [Twitter/𝕏 Video Downloader](https://www.raycast.com/kaanrkaraman/twitter-video-downloader), to download videos onto my hard drive.
@@ -369,9 +439,12 @@ With a Pro account, you can design your own Raycast color themes, and Easter egg
The second year in a row, you get one of the best year reviews. People proudly share their images on 𝕏 ([#RaycastWrapped](https://x.com/hashtag/RaycastWrapped)). Here is my Raycast Wrapped 2024 summary: The second year in a row, you get one of the best year reviews. People proudly share their images on 𝕏 ([#RaycastWrapped](https://x.com/hashtag/RaycastWrapped)). Here is my Raycast Wrapped 2024 summary:
<Figure caption="Raycast Wrapped 2024" size="wide"> <BasicImage
<Image src="/assets/images/posts/raycast-wrapped-2024.webp" alt="Raycast Wrapped 2024" /> caption="Raycast Wrapped 2024"
</Figure> size="wide"
src="/images/posts/raycast-wrapped-2024.webp"
alt="Raycast Wrapped 2024"
/>
[Raycast](https://www.raycast.com/) offers a range of useful resources. You can find the changes for each release in the [Changelog](https://www.raycast.com/changelog), which is also accessible within Raycast. Additionally, the [blog](https://www.raycast.com/blog) features informative and engaging articles. [Raycast](https://www.raycast.com/) offers a range of useful resources. You can find the changes for each release in the [Changelog](https://www.raycast.com/changelog), which is also accessible within Raycast. Additionally, the [blog](https://www.raycast.com/blog) features informative and engaging articles.

View File

@@ -37,12 +37,11 @@ On my first day, I received a warm welcome at the front desk at Gänsemarkt in H
It took a bit of time to find a desk, so I initially sat in the corridor. The atmosphere was energetic, with walls covered in cards, product prints, and concepts. I joined during a major relaunch that included a comprehensive redesign and an activity stream with stories about jobs and people. My laptop wasnt ready on day one, so I used an older iMac for the first week or two. It took a bit of time to find a desk, so I initially sat in the corridor. The atmosphere was energetic, with walls covered in cards, product prints, and concepts. I joined during a major relaunch that included a comprehensive redesign and an activity stream with stories about jobs and people. My laptop wasnt ready on day one, so I used an older iMac for the first week or two.
<Figure caption="My first computer at XING"> <BasicImage
<Image caption="My first computer at XING"
src="/assets/images/posts/15-years-xing-computer.webp" src="/images/posts/15-years-xing-computer.webp"
alt="Apple iMac desktop workstation in an office with a wired keyboard, headset, and a yellow sticky note attached to the monitor, with colleagues working in the background" alt="Apple iMac desktop workstation in an office with a wired keyboard, headset, and a yellow sticky note attached to the monitor, with colleagues working in the background"
/> />
</Figure>
For the next three weeks, I worked in the frontend architects office—a small team of highly skilled JavaScript specialists—and tackled several challenging tasks under their guidance. For the next three weeks, I worked in the frontend architects office—a small team of highly skilled JavaScript specialists—and tackled several challenging tasks under their guidance.
@@ -50,12 +49,11 @@ After onboarding, I joined my first team: the jobs team. We were a crossfunct
XING was known for memorable parties and offsite events over the years. In 2011, we hosted a summer party at [Zum Alten Lotsenhaus](https://www.zum-alten-lotsenhaus.de/) at Elbstrand beach with a “maritime” costume theme—pirates, fish, sailors, and officers—along with great food and drinks. Several internal products even carried playful, beerthemed names. XING was known for memorable parties and offsite events over the years. In 2011, we hosted a summer party at [Zum Alten Lotsenhaus](https://www.zum-alten-lotsenhaus.de/) at Elbstrand beach with a “maritime” costume theme—pirates, fish, sailors, and officers—along with great food and drinks. Several internal products even carried playful, beerthemed names.
<Figure caption="The Frontend Culture at XING"> <BasicImage
<Image caption="The Frontend Culture at XING"
src="/assets/images/posts/15-years-xing-frontend-is.webp" src="/images/posts/15-years-xing-frontend-is.webp"
alt="Office wall with taped signs defining 'Quality' and 'Software testing', alongside a humorous poster titled 'Frontend Development is …' featuring images of a monster truck, a man in sunglasses, and a large explosion" alt="Office wall with taped signs defining 'Quality' and 'Software testing', alongside a humorous poster titled 'Frontend Development is …' featuring images of a monster truck, a man in sunglasses, and a large explosion"
/> />
</Figure>
The same year, I attended my first conference abroad. A small group of frontend engineers from Hamburg flew to Amsterdam for the [Fronteers conference](https://www.fronteers.nl/), held at the [Tuschinski Theatre](https://www.tuschinskimultiplexcinema.com/). We stayed in a nearby hotel, observed a moment of silence when the news of Steve Jobs death was announced, and even met the founder of jQuery. The same year, I attended my first conference abroad. A small group of frontend engineers from Hamburg flew to Amsterdam for the [Fronteers conference](https://www.fronteers.nl/), held at the [Tuschinski Theatre](https://www.tuschinskimultiplexcinema.com/). We stayed in a nearby hotel, observed a moment of silence when the news of Steve Jobs death was announced, and even met the founder of jQuery.
@@ -67,12 +65,11 @@ We held our Christmas party at [FABRIK Hamburg](https://fabrik.de/) with a Wild
In 2012, I participated in my first Prototyping Days—a threeday event where the company formed teams to develop prototypes. At the end of the week, ideas were presented at [Restaurant Leuchtturm](https://www.leuchtturm-harburg.de/) near Harburger Stadtpark, winners were selected, and we wrapped up with a summer party. In 2012, I participated in my first Prototyping Days—a threeday event where the company formed teams to develop prototypes. At the end of the week, ideas were presented at [Restaurant Leuchtturm](https://www.leuchtturm-harburg.de/) near Harburger Stadtpark, winners were selected, and we wrapped up with a summer party.
<Figure caption="Prototyping Days 2012"> <BasicImage
<Image caption="Prototyping Days 2012"
src="/assets/images/posts/15-years-xing-2012.webp" src="/images/posts/15-years-xing-2012.webp"
alt="Event stage setup featuring a podium and two screens displaying 'Think Big' and 'Prototyping Days 2012' logos, illuminated by green ceiling lights, with a casual audience area filled with green and yellow beanbag chairs" alt="Event stage setup featuring a podium and two screens displaying 'Think Big' and 'Prototyping Days 2012' logos, illuminated by green ceiling lights, with a casual audience area filled with green and yellow beanbag chairs"
/> />
</Figure>
XING was successful, with the stock price rising from €55 in 2011 to €70 in 2012. Burda Digital increased its stake, triggering a mandatory takeover offer for the remaining shares. I recall seeing various Burda print magazines laid out in the office for free during this time. I only managed to get one issue of Playboy; it was gone within minutes each time. XING was successful, with the stock price rising from €55 in 2011 to €70 in 2012. Burda Digital increased its stake, triggering a mandatory takeover offer for the remaining shares. I recall seeing various Burda print magazines laid out in the office for free during this time. I only managed to get one issue of Playboy; it was gone within minutes each time.
@@ -84,12 +81,11 @@ XING was growing rapidly, and as other tenants moved out, we took over additiona
A new building went up next to our office, bringing a year of construction noise and stress. We often joked, “Wouldnt it be funny if we moved into that building?”—and in April 2013, we did. The new space was modern and openplan, with carpeting and room dividers to keep noise down, plus kitchens, themed rooms, a large event space, and a parking garage. As a welcome gift, employees received a limegreen XING beach towel and some orange juice. A new building went up next to our office, bringing a year of construction noise and stress. We often joked, “Wouldnt it be funny if we moved into that building?”—and in April 2013, we did. The new space was modern and openplan, with carpeting and room dividers to keep noise down, plus kitchens, themed rooms, a large event space, and a parking garage. As a welcome gift, employees received a limegreen XING beach towel and some orange juice.
<Figure caption="The new office, with a lime beach towel to reserve your place"> <BasicImage
<Image caption="The new office, with a lime beach towel to reserve your place"
src="/assets/images/posts/15-years-xing-2013-office.webp" src="/images/posts/15-years-xing-2013-office.webp"
alt="Modern open-plan office interior featuring a large potted rubber plant next to a desk with a computer monitor, green towel, and office supplies, with white shelving and hanging coats in the background" alt="Modern open-plan office interior featuring a large potted rubber plant next to a desk with a computer monitor, green towel, and office supplies, with white shelving and hanging coats in the background"
/> />
</Figure>
The building was located next to the [Hamburg Opera](https://www.die-hamburgische-staatsoper.de/), where I could hear the singers training for years. I observed auditions behind a curtain as singers showcased their talent. The building was located next to the [Hamburg Opera](https://www.die-hamburgische-staatsoper.de/), where I could hear the singers training for years. I observed auditions behind a curtain as singers showcased their talent.
@@ -97,12 +93,11 @@ Around that time, the erecruiting business relocated to Barcelona. I could ei
In September 2013, we held our second Prototyping Days, and this time I was on the winning team. We developed XING screencasts, a concept aimed at teaching people how to use the platform. The following summer party took place at [Planten un Blomen](https://plantenunblomen.hamburg.de/), featuring an illuminated water and light show at night. In September 2013, we held our second Prototyping Days, and this time I was on the winning team. We developed XING screencasts, a concept aimed at teaching people how to use the platform. The following summer party took place at [Planten un Blomen](https://plantenunblomen.hamburg.de/), featuring an illuminated water and light show at night.
<Figure caption="Prototyping Days 2013"> <BasicImage
<Image caption="Prototyping Days 2013"
src="/assets/images/posts/15-years-xing-2013-party.webp" src="/images/posts/15-years-xing-2013-party.webp"
alt="Outdoor evening social event with a large crowd standing and sitting at white banquet tables, illuminated by dramatic green lighting on a large tree and surrounding foliage" alt="Outdoor evening social event with a large crowd standing and sitting at white banquet tables, illuminated by dramatic green lighting on a large tree and surrounding foliage"
/> />
</Figure>
In October, I flew to the Fronteers Conference in Amsterdam. We stayed at a beautiful hotel near a river, which served freshly baked bread every morning. We explored the city center, enjoyed a Wagyu burger at [Burger Bar](https://www.burgerbar.nl/), and had dinner at an authentic Chinese restaurant. I still remember the disgusted look on my co-workers face when he realized that the duck he ordered was steamed and had slimy, soft skin. In October, I flew to the Fronteers Conference in Amsterdam. We stayed at a beautiful hotel near a river, which served freshly baked bread every morning. We explored the city center, enjoyed a Wagyu burger at [Burger Bar](https://www.burgerbar.nl/), and had dinner at an authentic Chinese restaurant. I still remember the disgusted look on my co-workers face when he realized that the duck he ordered was steamed and had slimy, soft skin.
@@ -124,12 +119,11 @@ Our team won the [SEMY Award](http://semyawards.com), the search marketing prize
We had a cluster offsite in the summer, spending several days at [Herrenhaus Gut Bliestorf](https://herrenhaus-gut-bliestorf.de/). The experience included delicious food and team events such as archery and stock fighting sessions. We had a cluster offsite in the summer, spending several days at [Herrenhaus Gut Bliestorf](https://herrenhaus-gut-bliestorf.de/). The experience included delicious food and team events such as archery and stock fighting sessions.
<Figure caption="Offsite 2015 Herrenhaus Gut Bliestorf"> <BasicImage
<Image caption="Offsite 2015 Herrenhaus Gut Bliestorf"
src="/assets/images/posts/15-years-xing-2015-offsite.webp" src="/images/posts/15-years-xing-2015-offsite.webp"
alt="White two-story manor house situated behind a vast green lawn with a large, leaning tree on the left and small groups of people walking near the entrance under a cloudy sky" alt="White two-story manor house situated behind a vast green lawn with a large, leaning tree on the left and small groups of people walking near the entrance under a cloudy sky"
/> />
</Figure>
In June, I joined a [sketchnotes](/sketchnotes/) workshop that a co-worker organized at the company, and I still enjoy sketching to this day. In June, I joined a [sketchnotes](/sketchnotes/) workshop that a co-worker organized at the company, and I still enjoy sketching to this day.
@@ -153,36 +147,37 @@ Nearly 1,000 company employees were flown from various locations to Palma de Mal
We booked two or three hotels near the event location, [Palau de Congressos de Palma](https://www.palmacongresscenter.com/en). After the initial kick-off, we rode by bus on the first day to [Cova Galdent](https://www.bodas.net/fincas/cueva-de-galdent--e12921), a party venue inside natural stone caves. It was a magical place, but the food was insufficient. I remember my co-worker was starving, as all we received were appetizers. However, the lighting and atmosphere of the location were enchanting. We booked two or three hotels near the event location, [Palau de Congressos de Palma](https://www.palmacongresscenter.com/en). After the initial kick-off, we rode by bus on the first day to [Cova Galdent](https://www.bodas.net/fincas/cueva-de-galdent--e12921), a party venue inside natural stone caves. It was a magical place, but the food was insufficient. I remember my co-worker was starving, as all we received were appetizers. However, the lighting and atmosphere of the location were enchanting.
<Figure caption="Cova Galdent"> <BasicImage
<Image caption="Cova Galdent"
src="/assets/images/posts/15-years-xing-2017-cave.webp" src="/images/posts/15-years-xing-2017-cave.webp"
alt="vent reception set up inside a cave-like venue with rough stone walls and warm lighting, featuring glowing white cocktail tables, buffet stations with appetizers, and waitstaff standing by" alt="vent reception set up inside a cave-like venue with rough stone walls and warm lighting, featuring glowing white cocktail tables, buffet stations with appetizers, and waitstaff standing by"
/> />
</Figure>
Every location was a secret, and they didnt reveal it until we arrived. On the second day, the party location was even more exciting. We were driven for half an hour across the island to [Son Termes Finca](https://sontermes.com/), a large, historic Spanish finca on a mountain. The setting was incredible, featuring old fireplaces, stone walls, colorful lighting, fire pots, Mariachi musicians, paella pans, homemade burgers, Iberian ham, and suckling pig. The variety of food at all the locations was astonishing. Every location was a secret, and they didnt reveal it until we arrived. On the second day, the party location was even more exciting. We were driven for half an hour across the island to [Son Termes Finca](https://sontermes.com/), a large, historic Spanish finca on a mountain. The setting was incredible, featuring old fireplaces, stone walls, colorful lighting, fire pots, Mariachi musicians, paella pans, homemade burgers, Iberian ham, and suckling pig. The variety of food at all the locations was astonishing.
<Figure caption="Son Termes Finca" size="wide"> <BasicImage
<Image src="/images/posts/15-years-xing-2017-finca-1.webp"
src="/assets/images/posts/15-years-xing-2017-finca-1.webp"
alt="Nighttime view of a rustic stone building facade with an arched entrance and shuttered windows, illuminated by dramatic pink and red event lighting" alt="Nighttime view of a rustic stone building facade with an arched entrance and shuttered windows, illuminated by dramatic pink and red event lighting"
caption="Son Termes Finca"
/> />
<Image
src="/assets/images/posts/15-years-xing-2017-finca-2.webp"
alt="Nighttime outdoor event featuring hanging candle lanterns with red ribbons, a crowd of people socializing, and a stone building illuminated by blue and purple lights in the background"
/>
</Figure>
<Figure caption="Food and mood at Son Termes Finca" size="wide"> <BasicImage
<Image src="/images/posts/15-years-xing-2017-finca-2.webp"
src="/assets/images/posts/15-years-xing-2017-fire.webp" alt="Nighttime outdoor event featuring hanging candle lanterns with red ribbons, a crowd of people socializing, and a stone building illuminated by blue and purple lights in the background"
caption="Nighttime outdoor at Son Termes Finca"
/>
<BasicImage
src="/images/posts/15-years-xing-2017-fire.webp"
alt="Roaring wood fire with glowing embers set against a rough stone wall, partially obscured by a heavy metal chain hanging in the foreground" alt="Roaring wood fire with glowing embers set against a rough stone wall, partially obscured by a heavy metal chain hanging in the foreground"
caption="Fireplace at Son Termes Finca"
/> />
<Image
src="/assets/images/posts/15-years-xing-2017-paella.webp" <BasicImage
src="/images/posts/15-years-xing-2017-paella.webp"
alt="Outdoor catering station at night featuring large paella pans filled with vegetable dishes and a whole roasted pig on a spit, with chefs in white uniforms standing in the background" alt="Outdoor catering station at night featuring large paella pans filled with vegetable dishes and a whole roasted pig on a spit, with chefs in white uniforms standing in the background"
caption="Paella at Son Termes Finca"
/> />
</Figure>
The next morning, most people were severely hungover. Some were still drunk when we flew home, resulting in a miserable flight for some. I, on the other hand, do not drink alcohol, so I was up at 7 a.m. I hiked up the mountain to [Castell de Bellver](https://castelldebellver.palma.es/), an old castle overlooking Palma de Mallorca. It opened when I arrived, and I climbed the towers, visited the museum with Roman statues, and enjoyed a magnificent view of Palma de Mallorca and the sea. The next morning, most people were severely hungover. Some were still drunk when we flew home, resulting in a miserable flight for some. I, on the other hand, do not drink alcohol, so I was up at 7 a.m. I hiked up the mountain to [Castell de Bellver](https://castelldebellver.palma.es/), an old castle overlooking Palma de Mallorca. It opened when I arrived, and I climbed the towers, visited the museum with Roman statues, and enjoyed a magnificent view of Palma de Mallorca and the sea.
@@ -208,12 +203,11 @@ We celebrated our Christmas party at [Prototyp—Das Automuseum](https://prototy
2019 was one of the most stressful years for me at XING. It began with a pleasant kickoff at the [Grand Elise](https://www.grand-elysee.com/) Rotherbaum. In August, we had a great offsite with the Growth cluster at the [Ellernhof Hotel](https://www.ellernhof.de/), a farm. We went bowling, had a barbecue, saw horses and chickens, used a climbing park in the trees, and enjoyed the sunny weather. 2019 was one of the most stressful years for me at XING. It began with a pleasant kickoff at the [Grand Elise](https://www.grand-elysee.com/) Rotherbaum. In August, we had a great offsite with the Growth cluster at the [Ellernhof Hotel](https://www.ellernhof.de/), a farm. We went bowling, had a barbecue, saw horses and chickens, used a climbing park in the trees, and enjoyed the sunny weather.
<Figure caption="Offsite 2019 Ellernhof Hotel"> <BasicImage
<Image caption="Offsite 2019 Ellernhof Hotel"
src="/assets/images/posts/15-years-xing-2019-offsite-1.webp" src="/images/posts/15-years-xing-2019-offsite-1.webp"
alt="Close-up of a wooden outdoor dining table set with empty clear glasses and silverware resting on white and red grid-patterned napkins, with a blurred background of greenery" alt="Close-up of a wooden outdoor dining table set with empty clear glasses and silverware resting on white and red grid-patterned napkins, with a blurred background of greenery"
/> />
</Figure>
The onboarding team needed to deliver an important product quickly. To do this, two teams were combined into one larger group. The onboarding team needed to deliver an important product quickly. To do this, two teams were combined into one larger group.
@@ -221,12 +215,11 @@ The project succeeded, but the pace and pressure led to a difficult phase with s
I attended a second offsite, this time for the XIF, the XING Interfaces & Foundations cluster. The event took place at a beautiful lake in the cozy hotel, [Bokel-Mühle am See](https://www.bokelmuehle.de/). It featured a fantastic breakfast, a room with a fireplace, a barbecue, and a buffet. We also enjoyed walking around the lake. Although I wasnt officially part of the cluster yet, I was invited to join to meet the team. I attended a second offsite, this time for the XIF, the XING Interfaces & Foundations cluster. The event took place at a beautiful lake in the cozy hotel, [Bokel-Mühle am See](https://www.bokelmuehle.de/). It featured a fantastic breakfast, a room with a fireplace, a barbecue, and a buffet. We also enjoyed walking around the lake. Although I wasnt officially part of the cluster yet, I was invited to join to meet the team.
<Figure caption="Offsite 2019 Bokel-Mühle am See"> <BasicImage
<Image caption="Offsite 2019 Bokel-Mühle am See"
src="/assets/images/posts/15-years-xing-2019-offsite-2.webp" src="/images/posts/15-years-xing-2019-offsite-2.webp"
alt="Lakeside restaurant with a white wooden terrace extending over calm water, viewed past a rustic fence and docked rowboats in the foreground under a bright sky" alt="Lakeside restaurant with a white wooden terrace extending over calm water, viewed past a rustic fence and docked rowboats in the foreground under a bright sky"
/> />
</Figure>
After earlier challenges with a prior design system, the company invested in proper staffing to create the brandnew [XING Design System](/projects/xing-design-system/) (XDS). Previously, the setup was lean, with much of the work shouldered by the Frontend Architecture team alongside a small core. As adoption grew, so did the number of component requests, which made consistency and documentation harder to maintain—one reason the new system focused on clear specs, governance, and consolidation. After earlier challenges with a prior design system, the company invested in proper staffing to create the brandnew [XING Design System](/projects/xing-design-system/) (XDS). Previously, the setup was lean, with much of the work shouldered by the Frontend Architecture team alongside a small core. As adoption grew, so did the number of component requests, which made consistency and documentation harder to maintain—one reason the new system focused on clear specs, governance, and consolidation.
@@ -246,21 +239,19 @@ The beginning of the year was especially hard for me when I developed an eye con
COVID19 hit in March, and we were all sent home. The IT team worked intensely to support remote work—setting up VPNs, collaboration tools, and a remote meeting structure. It was an especially challenging moment, with a brandnew building awaiting renovation and opening while offices were closed due to lockdowns. COVID19 hit in March, and we were all sent home. The IT team worked intensely to support remote work—setting up VPNs, collaboration tools, and a remote meeting structure. It was an especially challenging moment, with a brandnew building awaiting renovation and opening while offices were closed due to lockdowns.
<Figure caption="Visiting the Unilever building"> <BasicImage
<Image caption="Visiting the Unilever building"
src="/assets/images/posts/15-years-xing-2020-unilever.webp" src="/images/posts/15-years-xing-2020-unilever.webp"
alt="Interior view of a massive, modern multi-story atrium with a glass roof, featuring distinctive lime-green wall panels, crisscrossing white walkways, and a central staircase" alt="Interior view of a massive, modern multi-story atrium with a glass roof, featuring distinctive lime-green wall panels, crisscrossing white walkways, and a central staircase"
/> />
</Figure>
In July 2020, we visited the strippeddown interior of the Unilever building. The new office—New Work Harbour—spans six floors (with the ground level open to the public) and features a nautical theme, with containerstyle meeting rooms and woodaccented meeting boxes. The sixth floor includes a roof terrace, and multiple teams contributed concepts for creative zones, labs, a library, a lounge, a speaker area, a welcome area, and chalkwritable walls. I helped design an agile room with mobile furniture and writable walls; each area had movable stations with screens and cameras for remote meetings. We officially moved in September 2020, though it was never fully occupied during the pandemic, and many continued working from home. In July 2020, we visited the strippeddown interior of the Unilever building. The new office—New Work Harbour—spans six floors (with the ground level open to the public) and features a nautical theme, with containerstyle meeting rooms and woodaccented meeting boxes. The sixth floor includes a roof terrace, and multiple teams contributed concepts for creative zones, labs, a library, a lounge, a speaker area, a welcome area, and chalkwritable walls. I helped design an agile room with mobile furniture and writable walls; each area had movable stations with screens and cameras for remote meetings. We officially moved in September 2020, though it was never fully occupied during the pandemic, and many continued working from home.
<Figure caption="New Work Wecome Area"> <BasicImage
<Image caption="New Work Wecome Area"
src="/assets/images/posts/15-years-xing-welcome.webp" src="/images/posts/15-years-xing-welcome.webp"
alt="Modern office lobby area featuring a lush vertical garden wall mounted with digital screens displaying 'kununu' and 'Willkommen im New Work Harbour', furnished with high wooden tables and black bar stools" alt="Modern office lobby area featuring a lush vertical garden wall mounted with digital screens displaying 'kununu' and 'Willkommen im New Work Harbour', furnished with high wooden tables and black bar stools"
/> />
</Figure>
Productivity increased, particularly among engineers. As it turns out silence and concentration might be necessary for programming. Productivity increased, particularly among engineers. As it turns out silence and concentration might be necessary for programming.
@@ -272,12 +263,11 @@ The pandemic affected the company, causing its stock price to decline to €260,
I focused on my team and the design system. After two years of development, it had matured with 50+ components. Designers maintained detailed spec sheets in [Figma](https://www.figma.com/) and a product guide, while we built a documentation site with code examples, API tables, and live demos. We migrated the web code to [TypeScript](https://www.typescriptlang.org/) and [Styled Components](https://styled-components.com/) and automated the export of design tokens (colors, spacing, motion) as well as icons and illustrations, enabling streamlined releases for Web, iOS, and Android. We developed a comprehensive palette with semantic colors, hundreds of icons, and many illustrations by a talented illustrator who later joined our team. I focused on my team and the design system. After two years of development, it had matured with 50+ components. Designers maintained detailed spec sheets in [Figma](https://www.figma.com/) and a product guide, while we built a documentation site with code examples, API tables, and live demos. We migrated the web code to [TypeScript](https://www.typescriptlang.org/) and [Styled Components](https://styled-components.com/) and automated the export of design tokens (colors, spacing, motion) as well as icons and illustrations, enabling streamlined releases for Web, iOS, and Android. We developed a comprehensive palette with semantic colors, hundreds of icons, and many illustrations by a talented illustrator who later joined our team.
<Figure caption="Pssst, no talking allowed; my favorite room, the library"> <BasicImage
<Image caption="Pssst, no talking allowed; my favorite room, the library"
src="/assets/images/posts/15-years-xing-library.webp" src="/images/posts/15-years-xing-library.webp"
alt="Bright office library corner featuring a large floor-to-ceiling white bookshelf filled with books and decorative objects, a grey sofa with a peach pillow, and a potted plant next to a white door" alt="Bright office library corner featuring a large floor-to-ceiling white bookshelf filled with books and decorative objects, a grey sofa with a peach pillow, and a potted plant next to a white door"
/> />
</Figure>
Most work was done remotely, and COVID-19 continued to impact revenue. The stock closed at €240 at the end of the year. Most work was done remotely, and COVID-19 continued to impact revenue. The stock closed at €240 at the end of the year.
@@ -285,12 +275,11 @@ In 2022, as the pandemic eased, the company encouraged a gradual return to the o
Our team focused on training and promoting adoption of the design system while continuing to create new components. We also built internal tools to measure adoption. I created a web app that analyzed multiple repositories to track component usage and surfaced the results—together with iOS, Android, and Figma figures—in a React dashboard. This gave us detailed insight into how widely components were used across products. Our team focused on training and promoting adoption of the design system while continuing to create new components. We also built internal tools to measure adoption. I created a web app that analyzed multiple repositories to track component usage and surfaced the results—together with iOS, Android, and Figma figures—in a React dashboard. This gave us detailed insight into how widely components were used across products.
<Figure caption="The XING Canteen"> <BasicImage
<Image caption="The XING Canteen"
src="/assets/images/posts/15-years-xing-cantina.webp" src="/images/posts/15-years-xing-cantina.webp"
alt="Modern canteen interior featuring mustard-yellow booth seating and a large black and mint-green mural with stylized fish and the text 'FREU DICH', with a dish return sign in the foreground" alt="Modern canteen interior featuring mustard-yellow booth seating and a large black and mint-green mural with stylized fish and the text 'FREU DICH', with a dish return sign in the foreground"
/> />
</Figure>
I also created a Chrome extension that highlights XING Design System components with a green border and their names, making it easy to spot custom components. I also created a Chrome extension that highlights XING Design System components with a green border and their names, making it easy to spot custom components.
@@ -304,12 +293,11 @@ New Work SE had a total of 8 locations at that time: Hamburg, Berlin, Munich, Vi
The company continued to lose money due to the post-COVID recession. Expanding the monetary supply by printing a trillion euros had led to massive inflation and the boom-bust cycle, as described by Ludwig von Mises in “[The Theory of Money and Credit](https://mises.org/library/book/theory-money-and-credit)” (1912). Additionally, losing access to cheap gas from Russia and shutting down all nuclear power plants was likely not a good decision, resulting in a 20% decline in industrial production and a negative GDP growth for multiple years in a row. These factors, combined with the post-COVID recession, had negatively affected the job market and recruitment solutions. The stock price fell to €150, and layoffs occurred in Q1. The company continued to lose money due to the post-COVID recession. Expanding the monetary supply by printing a trillion euros had led to massive inflation and the boom-bust cycle, as described by Ludwig von Mises in “[The Theory of Money and Credit](https://mises.org/library/book/theory-money-and-credit)” (1912). Additionally, losing access to cheap gas from Russia and shutting down all nuclear power plants was likely not a good decision, resulting in a 20% decline in industrial production and a negative GDP growth for multiple years in a row. These factors, combined with the post-COVID recession, had negatively affected the job market and recruitment solutions. The stock price fell to €150, and layoffs occurred in Q1.
<Figure caption="The Kietzkneipe"> <BasicImage
<Image caption="The Kietzkneipe"
src="/assets/images/posts/15-years-xing-kietzkneipe.webp" src="/images/posts/15-years-xing-kietzkneipe.webp"
alt="Lounge area in an office with a retro vibe, featuring a green velvet sofa, patterned rug, foosball table, dark ceiling, and a bar counter in the background" alt="Lounge area in an office with a retro vibe, featuring a green velvet sofa, patterned rug, foosball table, dark ceiling, and a bar counter in the background"
/> />
</Figure>
The Design System team worked on implementing dark mode for the platform. We created darkmodeready illustrations and used CSS custom properties to switch colors while keeping the same files. By the end of the year, we successfully launched dark mode. It required significant effort across teams because it depended on adopting the design system, and areas not yet migrated didnt yet reflect dark mode. The Design System team worked on implementing dark mode for the platform. We created darkmodeready illustrations and used CSS custom properties to switch colors while keeping the same files. By the end of the year, we successfully launched dark mode. It required significant effort across teams because it depended on adopting the design system, and areas not yet migrated didnt yet reflect dark mode.
@@ -325,23 +313,21 @@ Onlyfy underwent a restructuring with significant layoffs. Two colleagues joined
Henning Rönneberg was appointed CFO and COO in February. In May, Petra von Strombeck handed over the CEO role to Rönneberg. Despite prior cost measures, financial headwinds persisted, and many anticipated another round of layoffs. Henning Rönneberg was appointed CFO and COO in February. In May, Petra von Strombeck handed over the CEO role to Rönneberg. Despite prior cost measures, financial headwinds persisted, and many anticipated another round of layoffs.
<Figure caption="The Band Room"> <BasicImage
<Image caption="The Band Room"
src="/assets/images/posts/15-years-xing-music.webp" src="/images/posts/15-years-xing-music.webp"
alt="Music rehearsal room with floor-to-ceiling windows overlooking an atrium, equipped with a red keyboard, microphone stand, drum kit, guitars, and amplifiers, set on Persian-style rugs" alt="Music rehearsal room with floor-to-ceiling windows overlooking an atrium, equipped with a red keyboard, microphone stand, drum kit, guitars, and amplifiers, set on Persian-style rugs"
/> />
</Figure>
Our team led the accessibility initiative to meet the midyear timeline for the [European Accessibility Act](https://commission.europa.eu/strategy-and-policy/policies/justice-and-fundamental-rights/disability/union-equality-strategy-rights-persons-disabilities-2021-2030/european-accessibility-act_en). We introduced features such as highcontrast mode, reduced/accessible motion, improved keyboard navigation, and enhanced ARIA roles and labels. It was a challenging project, but we delivered on time. Additionally, the web platform team built a dashboard to monitor stability, accessibility, and other key factors. Our team led the accessibility initiative to meet the midyear timeline for the [European Accessibility Act](https://commission.europa.eu/strategy-and-policy/policies/justice-and-fundamental-rights/disability/union-equality-strategy-rights-persons-disabilities-2021-2030/european-accessibility-act_en). We introduced features such as highcontrast mode, reduced/accessible motion, improved keyboard navigation, and enhanced ARIA roles and labels. It was a challenging project, but we delivered on time. Additionally, the web platform team built a dashboard to monitor stability, accessibility, and other key factors.
Throughout the year, the Design System team continued building components for priority projects, creating several new components and enhancing others. Throughout the year, the Design System team continued building components for priority projects, creating several new components and enhancing others.
<Figure caption="The Record Room"> <BasicImage
<Image caption="The Record Room"
src="/assets/images/posts/15-years-xing-records.webp" src="/images/posts/15-years-xing-records.webp"
alt="Music-themed corner in a modern office featuring framed concert posters of Michael Jackson, AC/DC, The Beatles, and ABBA mounted on a dark blue wall above a light wooden record display stand" alt="Music-themed corner in a modern office featuring framed concert posters of Michael Jackson, AC/DC, The Beatles, and ABBA mounted on a dark blue wall above a light wooden record display stand"
/> />
</Figure>
In late October, XING announced another round of layoffs planned for yearend, and we waited for several weeks for details. Activity slowed noticeably. I migrated a few apps to the cloud and completed that work shortly before the layoffs. Our backlog was quiet, with few new component requests or project starts. In late October, XING announced another round of layoffs planned for yearend, and we waited for several weeks for details. Activity slowed noticeably. I migrated a few apps to the cloud and completed that work shortly before the layoffs. Our backlog was quiet, with few new component requests or project starts.
@@ -349,21 +335,19 @@ In late October, XING announced another round of layoffs planned for yearend,
To be honest, I didnt expect to be fired. I was uncertain about the future of the design system but thought my own role was relatively safe. A longtime colleague even joked we would be too expensive to be severed and possibly the last to leave the company. In the end, engineering roles in Germany were largely reduced, including many who had worked on shared infrastructure and foundations. Starting in January, the remaining engineering teams—primarily in other locations—planned to expand the use of AIassisted coding tools to help with knowledge transfer. To be honest, I didnt expect to be fired. I was uncertain about the future of the design system but thought my own role was relatively safe. A longtime colleague even joked we would be too expensive to be severed and possibly the last to leave the company. In the end, engineering roles in Germany were largely reduced, including many who had worked on shared infrastructure and foundations. Starting in January, the remaining engineering teams—primarily in other locations—planned to expand the use of AIassisted coding tools to help with knowledge transfer.
<Figure caption="XING Welcome Area"> <BasicImage
<Image caption="XING Welcome Area"
src="/assets/images/posts/15-years-xing-freudich.webp" src="/images/posts/15-years-xing-freudich.webp"
alt="Office break room featuring a large teal wall mural with the text 'FREU DICH' and cartoon illustrations, framing beverage refrigerators and wooden coat racks, with a bowl of green apples in the foreground" alt="Office break room featuring a large teal wall mural with the text 'FREU DICH' and cartoon illustrations, framing beverage refrigerators and wooden coat racks, with a bowl of green apples in the foreground"
/> />
</Figure>
All that remains is looking back to remember the good times. I dont look back in anger; XING was the best company I worked for, with some of the most skilled people Ive met. I wouldnt have stayed so long if it had been otherwise. Im confident the XING Design System is among the strongest in Europe, perhaps beyond. Reviewing the documentation, spec sheets, and product guides reminded me how skilled and innovative our designers are. From the challenging Superellipse profile image—[which can soon be built natively with CSS](https://nerdy.dev/superellipsed-pill-shapes-are-cool)—to bold colors, animations, and distinctive illustrations, icons, and stickers, the work stands out. Building a custom design system rather than theming an existing component library made a real difference. To all the developers, designers, QAs, product managers, tech, and non-tech people Ive worked with over the past 15 years: thank you for the learning and the projects we created together. All that remains is looking back to remember the good times. I dont look back in anger; XING was the best company I worked for, with some of the most skilled people Ive met. I wouldnt have stayed so long if it had been otherwise. Im confident the XING Design System is among the strongest in Europe, perhaps beyond. Reviewing the documentation, spec sheets, and product guides reminded me how skilled and innovative our designers are. From the challenging Superellipse profile image—[which can soon be built natively with CSS](https://nerdy.dev/superellipsed-pill-shapes-are-cool)—to bold colors, animations, and distinctive illustrations, icons, and stickers, the work stands out. Building a custom design system rather than theming an existing component library made a real difference. To all the developers, designers, QAs, product managers, tech, and non-tech people Ive worked with over the past 15 years: thank you for the learning and the projects we created together.
<Figure caption="For a better working life"> <BasicImage
<Image caption="For a better working life"
src="/assets/images/posts/15-years-xing-for-a-better-working-life.webp" src="/images/posts/15-years-xing-for-a-better-working-life.webp"
alt="Office break area featuring a teal wall with the text 'For a better working life' and a large mosaic made of small photos, situated behind a kitchen island with fresh fruit and a seating table" alt="Office break area featuring a teal wall with the text 'For a better working life' and a large mosaic made of small photos, situated behind a kitchen island with fresh fruit and a seating table"
/> />
</Figure>
XING is in the process of moving out of New Work Harbour, and Kununu plans to operate as its own company. Ive returned my notebook and iPhone, and when my remaining access ends, Ill close this chapter of my life. XING is in the process of moving out of New Work Harbour, and Kununu plans to operate as its own company. Ive returned my notebook and iPhone, and when my remaining access ends, Ill close this chapter of my life.

View File

@@ -65,12 +65,11 @@ Two months ago, my company brought together everyone from my work unit for a thr
At home, I researched split keyboards for a while by watching all kinds of videos on YouTube and by asking my co-worker many questions about his keyboards via chat. He told me the delivery might take a few weeks, as it is sent from Taiwan. The price of the ZSA Voyager is quite hefty. At home, I researched split keyboards for a while by watching all kinds of videos on YouTube and by asking my co-worker many questions about his keyboards via chat. He told me the delivery might take a few weeks, as it is sent from Taiwan. The price of the ZSA Voyager is quite hefty.
<Figure caption="My current desk setup with my ZSA Voyager keyboard" size="wide"> <BasicImage
<Image caption="My current desk setup with my ZSA Voyager keyboard"
src="/assets/images/posts/zsa-voyager.webp" src="/images/posts/zsa-voyager.webp"
alt="A modern desk setup with a large monitor displaying a samurai wallpaper, a split ergonomic keyboard, a Mac Mini, speakers, a white mouse, and a row of books on the right." alt="A modern desk setup with a large monitor displaying a samurai wallpaper, a split ergonomic keyboard, a Mac Mini, speakers, a white mouse, and a row of books on the right."
/> />
</Figure>
I decided to just go for it and ordered the ZSA Voyager in Cosmic Nomad black, with Kailh Choc Pro Red switches that have a linear, lighter touch of **35±5gf** and printed US keycaps. The keyboard comes with RGB LED backlights, a carrying case, additional magnetic legs to tilt the keyboard, cables in all kinds of sizes, a key puller, and 2 extra thumb keys. It also includes 34 extra keycaps with tactile bumps for QWERTY, Colemak, and Dvorak layouts. I decided to just go for it and ordered the ZSA Voyager in Cosmic Nomad black, with Kailh Choc Pro Red switches that have a linear, lighter touch of **35±5gf** and printed US keycaps. The keyboard comes with RGB LED backlights, a carrying case, additional magnetic legs to tilt the keyboard, cables in all kinds of sizes, a key puller, and 2 extra thumb keys. It also includes 34 extra keycaps with tactile bumps for QWERTY, Colemak, and Dvorak layouts.
@@ -88,12 +87,11 @@ Every day, I used various websites to enhance my writing and speed. I completed
After one and a half months, I achieved my speed goal and ordered a set of two beautiful custom-designed coiled cables from [King Cables](https://www.kingcables.org). I spent several hours researching options since I knew very little about cables. I chose the “Galaxy” theme for both cables from a wide range of color options. One coiled keyboard cable features a 16 cm coil, a detachable YC8 connector in black, black heat shrink, and is USB-C to USB-C with a total length of 1 m. The second cable is a custom TRRS cable that connects the two halves of the split keyboard. I ordered a 25 cm long coil with angled 90° connectors in gold and a black heat sink. I didnt order a cute animal for the cable, but King Cables send me a cute Panda bear nevertheless. After one and a half months, I achieved my speed goal and ordered a set of two beautiful custom-designed coiled cables from [King Cables](https://www.kingcables.org). I spent several hours researching options since I knew very little about cables. I chose the “Galaxy” theme for both cables from a wide range of color options. One coiled keyboard cable features a 16 cm coil, a detachable YC8 connector in black, black heat shrink, and is USB-C to USB-C with a total length of 1 m. The second cable is a custom TRRS cable that connects the two halves of the split keyboard. I ordered a 25 cm long coil with angled 90° connectors in gold and a black heat sink. I didnt order a cute animal for the cable, but King Cables send me a cute Panda bear nevertheless.
<Figure caption="ZSA Voyager keyboard with custom coiled cables and LED backlight" size="wide"> <BasicImage
<Image caption="ZSA Voyager keyboard with custom coiled cables and LED backlight"
src="/assets/images/posts/zsa-voyager-light.webp" src="/images/posts/zsa-voyager-light.webp"
alt="A close-up of a split ergonomic keyboard with colorful backlighting, connected by a coiled cable, on a dark desk surface." alt="A close-up of a split ergonomic keyboard with colorful backlighting, connected by a coiled cable, on a dark desk surface."
/> />
</Figure>
The new setup looks fantastic, and I sometimes feel sad when my workday ends because I have no The new setup looks fantastic, and I sometimes feel sad when my workday ends because I have no
excuse to stay at the computer. 😅 The galaxy-themed cables look much better than any photo can excuse to stay at the computer. 😅 The galaxy-themed cables look much better than any photo can

View File

@@ -41,12 +41,11 @@ I first read Ayn Rands fiction in March 2023. Since then, I have [read numero
This essay will be full of spoilers in case you havent read the book. This essay will be full of spoilers in case you havent read the book.
</Banner> </Banner>
<Figure caption="“This is John Galt Speaking.”"> <BasicImage
<Image caption="“This is John Galt Speaking.”"
src="/assets/images/posts/modern-atlas-shrugged-john-galt.webp" src="/images/posts/modern-atlas-shrugged-john-galt.webp"
alt="A serious-looking John Galt in a shirt and tie speaks into a vintage microphone, with sunburst patterns and art deco designs in the background." alt="A serious-looking John Galt in a shirt and tie speaks into a vintage microphone, with sunburst patterns and art deco designs in the background."
/> />
</Figure>
My favorite chapter from the book is Part 3, Chapter VII, “This is John Galt Speaking.” In this chapter, the ominous John Galt takes control of all broadcasting in the country and presents a four-hour argument that human reason and individual self-interest form the foundations of a moral and productive society. He rejects altruism and collectivism as destructive forces that enslave the capable to the incompetent. Galt asserts that the mind is the source of all value and calls on the “men of the mind”—the innovators and producers—to withdraw from a world that punishes their virtues, leading to its inevitable collapse. This chapter defends capitalism, personal freedom, and the pursuit of happiness through rational self-reliance. My favorite chapter from the book is Part 3, Chapter VII, “This is John Galt Speaking.” In this chapter, the ominous John Galt takes control of all broadcasting in the country and presents a four-hour argument that human reason and individual self-interest form the foundations of a moral and productive society. He rejects altruism and collectivism as destructive forces that enslave the capable to the incompetent. Galt asserts that the mind is the source of all value and calls on the “men of the mind”—the innovators and producers—to withdraw from a world that punishes their virtues, leading to its inevitable collapse. This chapter defends capitalism, personal freedom, and the pursuit of happiness through rational self-reliance.
@@ -72,12 +71,11 @@ The socialist government is developing a secret weapon system called “Project
People use the phrase “Who is John Galt?” to express their frustration and anger at government policies. If you recognize these signs, congratulations! You are not alone. If you dont, allow me to share my thoughts. People use the phrase “Who is John Galt?” to express their frustration and anger at government policies. If you recognize these signs, congratulations! You are not alone. If you dont, allow me to share my thoughts.
<Figure caption="Who is John Galt?"> <BasicImage
<Image caption="Who is John Galt?"
src="/assets/images/posts/modern-atlas-shrugged-who-is-john-galt.webp" src="/images/posts/modern-atlas-shrugged-who-is-john-galt.webp"
alt="A narrow, dirty alleyway at night, lined with tall brick buildings covered in colorful graffiti, one with says 'Who is John Galt?', and scattered with piles of trash, while a glowing city skyline is visible in the distance under a starry sky." alt="A narrow, dirty alleyway at night, lined with tall brick buildings covered in colorful graffiti, one with says 'Who is John Galt?', and scattered with piles of trash, while a glowing city skyline is visible in the distance under a starry sky."
/> />
</Figure>
## Industrial and Economic Decline ## Industrial and Economic Decline
@@ -85,12 +83,10 @@ People use the phrase “Who is John Galt?” to express their frustration and a
Sixteen years ago, the economies of the European Union and the United States stood shoulder to shoulder, each a titan of global prosperity. Today, the US boasts a GDP of €25,5 trillion—50% larger than the EUs €16,6 trillion. At the heart of Europes faltering fortunes lies Germany, once an industrial juggernaut, now a shadow of its former self. The International Monetary Fund ranks it last among the worlds top 30 economies, and it ended 2023 with a negative growth rate of 0.3% GDP. Germany has fallen from 6th in global competitiveness in 2014 to 24th in 2024. This decline is not only a national crisis—its a warning for Europe and the West. What went wrong? A toxic mix of energy missteps, industrial neglect, and excessive state control has dragged Germany into an economic mire, with ripple effects threatening the broader Western world. Sixteen years ago, the economies of the European Union and the United States stood shoulder to shoulder, each a titan of global prosperity. Today, the US boasts a GDP of €25,5 trillion—50% larger than the EUs €16,6 trillion. At the heart of Europes faltering fortunes lies Germany, once an industrial juggernaut, now a shadow of its former self. The International Monetary Fund ranks it last among the worlds top 30 economies, and it ended 2023 with a negative growth rate of 0.3% GDP. Germany has fallen from 6th in global competitiveness in 2014 to 24th in 2024. This decline is not only a national crisis—its a warning for Europe and the West. What went wrong? A toxic mix of energy missteps, industrial neglect, and excessive state control has dragged Germany into an economic mire, with ripple effects threatening the broader Western world.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-decline.webp"
src="/assets/images/posts/modern-atlas-shrugged-decline.webp"
alt="A golden, muscular figure stands confidently among ruined buildings, with dark clouds and sun rays shining through in the background." alt="A golden, muscular figure stands confidently among ruined buildings, with dark clouds and sun rays shining through in the background."
/> />
</Figure>
The statistics present a troubling scenario. Germanys GDP decreased by 0.2% in 2024, and productivity growth has stalled. The IMF reduced its 2025 forecast by 0.5 points to just 0.3%, while the countrys long-term potential growth has halved from 1.4% to 0.7% over five years. In contrast, the US has seen its potential growth rise to 2.8%. Globally, Germanys share of GDP has fallen from 5% to 4% over the past decade, while the USs share increased from 22% to 26%. Domestically, the DAX index of export giants surged by 18.56% in 2024, masking the MDAXs decline of 5.35%. Wealth per person has dropped to €68,000, leaving Germans poorer than Slovenians and ranking 30th worldwide. These figures are not only statistics; they signal distress from a nation losing its economic stability. The statistics present a troubling scenario. Germanys GDP decreased by 0.2% in 2024, and productivity growth has stalled. The IMF reduced its 2025 forecast by 0.5 points to just 0.3%, while the countrys long-term potential growth has halved from 1.4% to 0.7% over five years. In contrast, the US has seen its potential growth rise to 2.8%. Globally, Germanys share of GDP has fallen from 5% to 4% over the past decade, while the USs share increased from 22% to 26%. Domestically, the DAX index of export giants surged by 18.56% in 2024, masking the MDAXs decline of 5.35%. Wealth per person has dropped to €68,000, leaving Germans poorer than Slovenians and ranking 30th worldwide. These figures are not only statistics; they signal distress from a nation losing its economic stability.
@@ -104,12 +100,10 @@ Germanys troubles resonate across Europe. The EU has no trillion-dollar compa
One sign of decline is the collapse of infrastructure. In Germany, public infrastructure investment is critically low, ranking near the bottom in the EU. This situation is exacerbated by planning delays and a shortage of skilled labor. Despite the potential for course correction, experts suggest it may already be too late, raising concerns about Germanys ability to catch up with other EU countries in infrastructure development. One sign of decline is the collapse of infrastructure. In Germany, public infrastructure investment is critically low, ranking near the bottom in the EU. This situation is exacerbated by planning delays and a shortage of skilled labor. Despite the potential for course correction, experts suggest it may already be too late, raising concerns about Germanys ability to catch up with other EU countries in infrastructure development.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-bridge.webp"
src="/assets/images/posts/modern-atlas-shrugged-bridge.webp"
alt="A golden, muscular figure kneels on rubble by a river, surrounded by damaged buildings, with a bridge and a dramatic sunrise or sunset in the background." alt="A golden, muscular figure kneels on rubble by a river, surrounded by damaged buildings, with a bridge and a dramatic sunrise or sunset in the background."
/> />
</Figure>
A prime example of this is the Carolabrücke in Dresden, which partially collapsed on September 11th, 2024, narrowly avoiding casualties during peak traffic hours. The left-wing city council majority rejected a crucial structural integrity review requested by the Free Voters, prioritizing political affiliations over public safety. More than half a year later, the debris remains uncleared, and the construction of a new bridge is not to be expected before 2035. A prime example of this is the Carolabrücke in Dresden, which partially collapsed on September 11th, 2024, narrowly avoiding casualties during peak traffic hours. The left-wing city council majority rejected a crucial structural integrity review requested by the Free Voters, prioritizing political affiliations over public safety. More than half a year later, the debris remains uncleared, and the construction of a new bridge is not to be expected before 2035.
@@ -121,12 +115,10 @@ Ironically, Germany is lagging behind Brazil and Peru in terms of average intern
While trains in China reach speeds of up to 800 km/h, in Germany, you are fortunate if they arrive at all. Deutsche Bahn exemplifies the inefficiencies and decline of the German railway system. Although it operates as a stock company, the state owns 100% of Deutsche Bahn AG, making it state-owned. In 2024, only 62.5% of long-distance trains arrived within six minutes of their scheduled time. Cancellations and disruptions are common, often due to ongoing construction and an aging infrastructure that requires extensive repairs. The company has launched a new initiative to improve punctuality and reliability, with plans to reduce delays by 2027 and achieve a punctuality rate of 75-80%. While trains in China reach speeds of up to 800 km/h, in Germany, you are fortunate if they arrive at all. Deutsche Bahn exemplifies the inefficiencies and decline of the German railway system. Although it operates as a stock company, the state owns 100% of Deutsche Bahn AG, making it state-owned. In 2024, only 62.5% of long-distance trains arrived within six minutes of their scheduled time. Cancellations and disruptions are common, often due to ongoing construction and an aging infrastructure that requires extensive repairs. The company has launched a new initiative to improve punctuality and reliability, with plans to reduce delays by 2027 and achieve a punctuality rate of 75-80%.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-trains.webp"
src="/assets/images/posts/modern-atlas-shrugged-trains.webp"
alt="A golden train crosses a broken bridge over water, driving away from a futuristic city with tall skyscrapers, under dramatic sun rays and clouds." alt="A golden train crosses a broken bridge over water, driving away from a futuristic city with tall skyscrapers, under dramatic sun rays and clouds."
/> />
</Figure>
Cancellations are so frequent and problematic that anyone who has taken a train can share horror stories about their experiences. I have several stories, including instances where I was late by three hours or more due to snow, fallen trees, or suicides. I injured my leg when someone pushed me while I tried to board a replacement bus that arrived two hours after the trains stopped, as 500 people attempted to enter a bus with room for only 120. Cancellations are so frequent and problematic that anyone who has taken a train can share horror stories about their experiences. I have several stories, including instances where I was late by three hours or more due to snow, fallen trees, or suicides. I injured my leg when someone pushed me while I tried to board a replacement bus that arrived two hours after the trains stopped, as 500 people attempted to enter a bus with room for only 120.
@@ -138,12 +130,10 @@ Infrastructure decline is a critical issue. Decades of underinvestment have led
Another company declining is the Deutsche Post AG or DHL Group. Although privatized in the 1990s, the state still holds nearly 17% through the KfW Bank. The company has been struggling with labor shortages, particularly in logistics and transportation. The shortage of truck drivers has led to delays in deliveries and increased costs for businesses. The company has also faced criticism for its treatment of workers, including low wages and poor working conditions, which have led to strikes and protests. Another company declining is the Deutsche Post AG or DHL Group. Although privatized in the 1990s, the state still holds nearly 17% through the KfW Bank. The company has been struggling with labor shortages, particularly in logistics and transportation. The shortage of truck drivers has led to delays in deliveries and increased costs for businesses. The company has also faced criticism for its treatment of workers, including low wages and poor working conditions, which have led to strikes and protests.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-post.webp"
src="/assets/images/posts/modern-atlas-shrugged-post.webp"
alt="A golden delivery van labeled 'Golden Parcel' drives through a city with tall buildings, dramatic clouds, and sun rays in the background." alt="A golden delivery van labeled 'Golden Parcel' drives through a city with tall buildings, dramatic clouds, and sun rays in the background."
/> />
</Figure>
More people than ever formally complained about the postal service last year. Over 44,000 complaints about the former state-owned company reached the Federal Network Agency in 2024, marking a 7% increase from the previous year and setting a record. More people than ever formally complained about the postal service last year. Over 44,000 complaints about the former state-owned company reached the Federal Network Agency in 2024, marking a 7% increase from the previous year and setting a record.
@@ -157,12 +147,10 @@ However, the postal service is contributing to these issues itself. By the end o
In 2015, Germanys education system faced a sobering reality check when the PISA results revealed a sharp decline in students reading, math, and science competencies. A decade later, this downward trend continues, with reading scores plummeting since Angela Merkels 2015 open-door refugee policy. This is not just a statistical anomaly; it reflects a broader competency crisis that threatens Germanys future. The nation is grappling with a combination of demographic, educational, and societal shifts that require urgent attention. What is driving this decline, and how did a country once renowned for its precision and intellect reach this point? In 2015, Germanys education system faced a sobering reality check when the PISA results revealed a sharp decline in students reading, math, and science competencies. A decade later, this downward trend continues, with reading scores plummeting since Angela Merkels 2015 open-door refugee policy. This is not just a statistical anomaly; it reflects a broader competency crisis that threatens Germanys future. The nation is grappling with a combination of demographic, educational, and societal shifts that require urgent attention. What is driving this decline, and how did a country once renowned for its precision and intellect reach this point?
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-education.webp"
src="/assets/images/posts/modern-atlas-shrugged-education.webp"
alt="A teacher stands in front of a chalkboard filled with complex math equations, explaining to a classroom of attentive students." alt="A teacher stands in front of a chalkboard filled with complex math equations, explaining to a classroom of attentive students."
/> />
</Figure>
Germanys competency crisis starts with its demographics. For over 50 years, fertility rates have remained between 1.2 and 1.5 children per woman, well below the replacement level of 2.1. This has created an age pyramid with a large cohort of baby boomers, born in the 1960s, who are now nearing retirement. These workers, who form the backbone of Germanys skilled trades and industries, will soon leave the labor market, taking decades of expertise with them. The result is a shrinking working-age population and a growing knowledge gap that younger generations are ill-prepared to fill. Germanys competency crisis starts with its demographics. For over 50 years, fertility rates have remained between 1.2 and 1.5 children per woman, well below the replacement level of 2.1. This has created an age pyramid with a large cohort of baby boomers, born in the 1960s, who are now nearing retirement. These workers, who form the backbone of Germanys skilled trades and industries, will soon leave the labor market, taking decades of expertise with them. The result is a shrinking working-age population and a growing knowledge gap that younger generations are ill-prepared to fill.
@@ -184,12 +172,10 @@ Too often, fingers point outward—to schools, teachers, or abstract “systems
One of the main drivers of the economic decline is Germanys ideologically driven Energiewende policy, which aims to achieve climate neutrality by 2045. This policy seeks to transition the nation from fossil fuels and nuclear power to renewable energy sources like wind and solar. Since 1971, the energy mix has evolved significantly, with low-carbon alternatives—such as wind, solar, biofuels, and hydropower—gaining traction. However, a crucial decision made under Angela Merkel and finalized under Olaf Scholz phased out nuclear power entirely, reducing capacity from 23 GW to 0 GW by 2023. This move, influenced by public fears following Fukushima and pressure from the Green Party, aimed to satisfy environmentalists but left Germany vulnerable. Over the past 25 years, the nation has invested more than €500 billion in renewables, constructing 30,000 wind turbines and over 3 million solar panels—many sourced from China. Yet, the promise of a stable, green energy future remains unfulfilled. One of the main drivers of the economic decline is Germanys ideologically driven Energiewende policy, which aims to achieve climate neutrality by 2045. This policy seeks to transition the nation from fossil fuels and nuclear power to renewable energy sources like wind and solar. Since 1971, the energy mix has evolved significantly, with low-carbon alternatives—such as wind, solar, biofuels, and hydropower—gaining traction. However, a crucial decision made under Angela Merkel and finalized under Olaf Scholz phased out nuclear power entirely, reducing capacity from 23 GW to 0 GW by 2023. This move, influenced by public fears following Fukushima and pressure from the Green Party, aimed to satisfy environmentalists but left Germany vulnerable. Over the past 25 years, the nation has invested more than €500 billion in renewables, constructing 30,000 wind turbines and over 3 million solar panels—many sourced from China. Yet, the promise of a stable, green energy future remains unfulfilled.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-energy.webp"
src="/assets/images/posts/modern-atlas-shrugged-energy.webp"
alt="A large golden hand blocks half of a radiant sun above a cityscape, dividing the scene into a warm side with wind turbines and a cool side with solar panels." alt="A large golden hand blocks half of a radiant sun above a cityscape, dividing the scene into a warm side with wind turbines and a cool side with solar panels."
/> />
</Figure>
The fragility of this transition becomes evident during “Dunkelflaute”—periods of cold, windless, and cloudy weather when renewable energy production declines. In late 2024 and early 2025, Germany experienced several such events, with wind and solar output plummeting to as low as 0.7 GW out of a 56 GW capacity—just over 1%—on December 27, 2024. During a week-long Dunkelflaute across Central Europe, which intensified over two days, wind energy provided almost nothing, and solar energy contributed zero. Electricity demand surged, but renewables could not keep up. Despite its scale, Germanys renewable infrastructure fails to meet demand when nature does not cooperate. The fragility of this transition becomes evident during “Dunkelflaute”—periods of cold, windless, and cloudy weather when renewable energy production declines. In late 2024 and early 2025, Germany experienced several such events, with wind and solar output plummeting to as low as 0.7 GW out of a 56 GW capacity—just over 1%—on December 27, 2024. During a week-long Dunkelflaute across Central Europe, which intensified over two days, wind energy provided almost nothing, and solar energy contributed zero. Electricity demand surged, but renewables could not keep up. Despite its scale, Germanys renewable infrastructure fails to meet demand when nature does not cooperate.
@@ -217,12 +203,10 @@ A few days before the blackout, Repsol issued a mandatory stock market notice to
Since Angela Merkels decision to permit an unlimited influx of immigrants in 2015, Germany has seen a significant increase in crime rates. In 2023, there were 21,000 reported knife attacks—nearly 60 per day. The online project [Messerinzidenz](https://messerinzidenz.de/) collects publicly available knife crime data and displays these attacks on a map daily. Nancy Faeser, the former Federal Minister of the Interior and Community, presented the Federal Crime Statistics (PKS), which reveal alarming figures and underscore the serious situation. Since Angela Merkels decision to permit an unlimited influx of immigrants in 2015, Germany has seen a significant increase in crime rates. In 2023, there were 21,000 reported knife attacks—nearly 60 per day. The online project [Messerinzidenz](https://messerinzidenz.de/) collects publicly available knife crime data and displays these attacks on a map daily. Nancy Faeser, the former Federal Minister of the Interior and Community, presented the Federal Crime Statistics (PKS), which reveal alarming figures and underscore the serious situation.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-knife-crime.webp"
src="/assets/images/posts/modern-atlas-shrugged-knife-crime.webp"
alt="A golden figure kneels in the center of a cityscape, illuminated by the sun, while two shadowy figures on either side threaten with raised knifes." alt="A golden figure kneels in the center of a cityscape, illuminated by the sun, while two shadowy figures on either side threaten with raised knifes."
/> />
</Figure>
Similar alarming trends are evident in crimes against sexual self-determination, which have surged from 30,000 to 80,000 per year since 2015. In 2023, group rapes in North Rhine-Westphalia (NRW) showed that 13% of suspects had clearly German names, while 34% had clearly foreign names, despite foreigners making up only 16.1% of the population in NRW. This indicates an overrepresentation of non-Germans in these crimes. Similar alarming trends are evident in crimes against sexual self-determination, which have surged from 30,000 to 80,000 per year since 2015. In 2023, group rapes in North Rhine-Westphalia (NRW) showed that 13% of suspects had clearly German names, while 34% had clearly foreign names, despite foreigners making up only 16.1% of the population in NRW. This indicates an overrepresentation of non-Germans in these crimes.
@@ -252,12 +236,10 @@ While socialist parties present immigration as the future and backbone of our ec
Europe is more divided than ever. Even though some bureaucrats dream of a United States of Europe, this will never happen. The cultures, languages, and people are too different. Besides, the EU doesnt want to create a federal system like the United States has with a constitution and 1st and 2nd amendment rights, but rather a centralized system that is more similar to the Soviet Union. Critics mock the EU as EUdSSR. Europe is more divided than ever. Even though some bureaucrats dream of a United States of Europe, this will never happen. The cultures, languages, and people are too different. Besides, the EU doesnt want to create a federal system like the United States has with a constitution and 1st and 2nd amendment rights, but rather a centralized system that is more similar to the Soviet Union. Critics mock the EU as EUdSSR.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-politics.webp"
src="/assets/images/posts/modern-atlas-shrugged-politics.webp"
alt="Two politicians in suits angrily face each other with clenched fists, shouting, while dramatic sun rays and clouds fill the background." alt="Two politicians in suits angrily face each other with clenched fists, shouting, while dramatic sun rays and clouds fill the background."
/> />
</Figure>
The concept of a European state is more complex than just domestic trade and free travel; the countries involved are too diverse. Ideologically, we have progressive nations like France and Germany, alongside conservative ones such as Poland and Hungary, which hold vastly different views on migration, LGBTQ+ rights, and the rule of law. Financially, the countries are also divided. Wealthier nations like Germany and the Netherlands are net contributors, while poorer countries like Italy, Greece, and Spain face higher debt and unemployment, seeking more financial support from the EU. The concept of a European state is more complex than just domestic trade and free travel; the countries involved are too diverse. Ideologically, we have progressive nations like France and Germany, alongside conservative ones such as Poland and Hungary, which hold vastly different views on migration, LGBTQ+ rights, and the rule of law. Financially, the countries are also divided. Wealthier nations like Germany and the Netherlands are net contributors, while poorer countries like Italy, Greece, and Spain face higher debt and unemployment, seeking more financial support from the EU.
@@ -271,12 +253,10 @@ The Euro devalues each year, and inflation is rampant. The EU has lost credibili
The situation in Germany remains challenging. Thirty-six years after reunification, the country is more divided between East and West than it was when the Berlin Wall fell. The AfD (Alternative for Germany) has gained significant support in the East and is also growing in the West, making it the strongest party. This division is not only political; it reflects deeper cultural and ideological gaps that have persisted since reunification. However, the ideological divide between the AfD and other parties hinders the formation of a center-right coalition. The CDU (Christian Democratic Union) has broken all its pre-election promises and increased the debt by €1.5 trillion for rearmament, infrastructure, and ecological projects. They formed a coalition with the SPD (Social Democratic Party), the former leading party whose government collapsed prematurely, and continued the policies of the previous failed administration. The situation in Germany remains challenging. Thirty-six years after reunification, the country is more divided between East and West than it was when the Berlin Wall fell. The AfD (Alternative for Germany) has gained significant support in the East and is also growing in the West, making it the strongest party. This division is not only political; it reflects deeper cultural and ideological gaps that have persisted since reunification. However, the ideological divide between the AfD and other parties hinders the formation of a center-right coalition. The CDU (Christian Democratic Union) has broken all its pre-election promises and increased the debt by €1.5 trillion for rearmament, infrastructure, and ecological projects. They formed a coalition with the SPD (Social Democratic Party), the former leading party whose government collapsed prematurely, and continued the policies of the previous failed administration.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-rich-vs-poor.webp"
src="/assets/images/posts/modern-atlas-shrugged-rich-vs-poor.webp"
alt="A group of elegantly dressed people stand and sit on golden bars under rays of light, while a crowd of sad, hooded figures sits in the shadows below." alt="A group of elegantly dressed people stand and sit on golden bars under rays of light, while a crowd of sad, hooded figures sits in the shadows below."
/> />
</Figure>
Friedrich Merz, the new chancellor and a former Black Rock employee, understands that his party may cease to exist in the near future if it fails to deliver on its promises. He will face significant challenges in keeping these promises, as the socialist coalition partner will do everything possible to obstruct him. His election as chancellor was already embarrassing, as he became the first chancellor in the history of the republic to fail to secure a majority in the first round of voting. He needed additional support from the former SED—the Wall Murderer Party—to finally be elected chancellor in the second round. Friedrich Merz, the new chancellor and a former Black Rock employee, understands that his party may cease to exist in the near future if it fails to deliver on its promises. He will face significant challenges in keeping these promises, as the socialist coalition partner will do everything possible to obstruct him. His election as chancellor was already embarrassing, as he became the first chancellor in the history of the republic to fail to secure a majority in the first round of voting. He needed additional support from the former SED—the Wall Murderer Party—to finally be elected chancellor in the second round.
@@ -296,12 +276,13 @@ Followers of the utopian vision view human nature as malleable, believing that p
In contrast, followers of the tragic vision see human beings as inherently flawed and limited, both morally and intellectually. They believe that social evils and conflicts arise from these inherent limitations, not merely from poor institutions or a lack of effort. They argue that society must acknowledge these permanent limits. Progress involves finding workable trade-offs rather than pursuing perfection; attempts to achieve ideal outcomes can be futile and counterproductive. They emphasize evolved traditions, systemic processes (such as markets and families), and the importance of incentives, rather than relying solely on rational planning or moral intentions. Justice and freedom are viewed in terms of fair processes and the absence of arbitrary power, rather than guaranteed outcomes. They advocate for incremental social change, as categorical or sweeping changes often overlook complexities and lead to unintended consequences. In contrast, followers of the tragic vision see human beings as inherently flawed and limited, both morally and intellectually. They believe that social evils and conflicts arise from these inherent limitations, not merely from poor institutions or a lack of effort. They argue that society must acknowledge these permanent limits. Progress involves finding workable trade-offs rather than pursuing perfection; attempts to achieve ideal outcomes can be futile and counterproductive. They emphasize evolved traditions, systemic processes (such as markets and families), and the importance of incentives, rather than relying solely on rational planning or moral intentions. Justice and freedom are viewed in terms of fair processes and the absence of arbitrary power, rather than guaranteed outcomes. They advocate for incremental social change, as categorical or sweeping changes often overlook complexities and lead to unintended consequences.
<Figure caption="Snicklink: The greatest psyop of all time."> <BasicImage
<Image caption="The greatest psyop of all time."
src="/assets/images/posts/modern-atlas-shrugged-snicklink-psyop.webp" source="Snicklink"
sourceUrl="https://x.com/snicklink/status/1746487986001186952"
src="/images/posts/modern-atlas-shrugged-snicklink-psyop.webp"
alt="The image is split into two parts. The top part shows a group of wealthy men in old-fashioned suits and top hats, laughing together. The bottom part is a grid of cartoon-style drawings showing pairs of people angrily arguing, each pair with different symbols above them representing various political, social, or cultural issues." alt="The image is split into two parts. The top part shows a group of wealthy men in old-fashioned suits and top hats, laughing together. The bottom part is a grid of cartoon-style drawings showing pairs of people angrily arguing, each pair with different symbols above them representing various political, social, or cultural issues."
/> />
</Figure>
The country is divided on many issues, making it difficult to keep track: climate change, energy policies, immigration, gender ideology and LGBTQ+ matters, COVID-19 vaccines and lockdowns, Donald Trump, Elon Musk, free speech, religion, the Ukraine war, the Israel-Palestine conflict, meat consumption, language, education, and even the concept of “freedom” itself. While the left was the peaceful faction in the 1970s, it has now become authoritarian and collectivist. They demand censorship against “hate speech” and “misinformation,” call for rearmament, and even advocate for open war with Russia, all while promoting a new form of moralizing authoritarianism. The terms “Nazi,” “Fascist,” and “Hitler” are used so frequently that they have lost their meaning. They support globalist agendas like the Sustainable Development Goals, Agenda 2030, and plans for a one-world government and 15-minute cities, pushed forward by organizations such as NATO, the UN, WHO, and the WEF. While many people might still have diverse opinions on topics, it has become nearly impossible to voice opinions without risking the loss of friendships, jobs, or even being reported to the reporting centers. The left has become the new authoritarian faction, and the right has become the new peaceful faction. The country is divided on many issues, making it difficult to keep track: climate change, energy policies, immigration, gender ideology and LGBTQ+ matters, COVID-19 vaccines and lockdowns, Donald Trump, Elon Musk, free speech, religion, the Ukraine war, the Israel-Palestine conflict, meat consumption, language, education, and even the concept of “freedom” itself. While the left was the peaceful faction in the 1970s, it has now become authoritarian and collectivist. They demand censorship against “hate speech” and “misinformation,” call for rearmament, and even advocate for open war with Russia, all while promoting a new form of moralizing authoritarianism. The terms “Nazi,” “Fascist,” and “Hitler” are used so frequently that they have lost their meaning. They support globalist agendas like the Sustainable Development Goals, Agenda 2030, and plans for a one-world government and 15-minute cities, pushed forward by organizations such as NATO, the UN, WHO, and the WEF. While many people might still have diverse opinions on topics, it has become nearly impossible to voice opinions without risking the loss of friendships, jobs, or even being reported to the reporting centers. The left has become the new authoritarian faction, and the right has become the new peaceful faction.
@@ -311,12 +292,10 @@ A survey by Datapraxis and YouGov, conducted across all European countries, reve
The divide extends even between genders. A striking [article](https://archive.is/PSONZ) in the Financial Times from January 2024 examined how the perspectives of women and men aged 18 to 30 have evolved since the 1990s. The article compares several countries in the East and West, presenting diagrams for South Korea, the USA, Germany, and the UK. In Germany and the US, men have become slightly more conservative over time, while women have become more progressive by 20 to 30 points. In the UK, men have become 20 points more progressive, while for women it increased by 50 points. In South Korea, women have become 30 points more progressive, while men have become 20 points more conservative. The gender divide encompasses issues such as sexual harassment, immigration, and racial justice. This ideological split could have long-term societal implications, potentially influencing political landscapes, marriage rates, and social dynamics. The divide extends even between genders. A striking [article](https://archive.is/PSONZ) in the Financial Times from January 2024 examined how the perspectives of women and men aged 18 to 30 have evolved since the 1990s. The article compares several countries in the East and West, presenting diagrams for South Korea, the USA, Germany, and the UK. In Germany and the US, men have become slightly more conservative over time, while women have become more progressive by 20 to 30 points. In the UK, men have become 20 points more progressive, while for women it increased by 50 points. In South Korea, women have become 30 points more progressive, while men have become 20 points more conservative. The gender divide encompasses issues such as sexual harassment, immigration, and racial justice. This ideological split could have long-term societal implications, potentially influencing political landscapes, marriage rates, and social dynamics.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-division.webp"
src="/assets/images/posts/modern-atlas-shrugged-division.webp"
alt="Two golden figures hold hands in front of dark clouds, separated by a jagged black lightning bolt under bright sun rays." alt="Two golden figures hold hands in front of dark clouds, separated by a jagged black lightning bolt under bright sun rays."
/> />
</Figure>
While it may initially seem that men have issues with women becoming more independent, there are other explanations. The modern world has disconnected people, particularly women, from the real dangers of life. A world built and maintained by men—where in some jobs, men comprise 90% or more—creates the illusion of a consequence-free environment. Additionally, women tend to be more empathetic. While it is natural and beneficial for them to direct this empathy toward their offspring, family, and community, many women, particularly childless women, extend this empathy to the entire world, including strangers, animals, and nature. Dr. Gad Saad, a professor of marketing at Concordia University, coined the term “suicidal empathy” to describe this phenomenon. He argues that it results from the modern worlds [disconnect from reality](/interpretation-the-gods-of-the-copybook-headings/). This form of empathy can lead to a misunderstanding of the real dangers and consequences of certain ideologies and policies, ultimately causing societal harm. While it may initially seem that men have issues with women becoming more independent, there are other explanations. The modern world has disconnected people, particularly women, from the real dangers of life. A world built and maintained by men—where in some jobs, men comprise 90% or more—creates the illusion of a consequence-free environment. Additionally, women tend to be more empathetic. While it is natural and beneficial for them to direct this empathy toward their offspring, family, and community, many women, particularly childless women, extend this empathy to the entire world, including strangers, animals, and nature. Dr. Gad Saad, a professor of marketing at Concordia University, coined the term “suicidal empathy” to describe this phenomenon. He argues that it results from the modern worlds [disconnect from reality](/interpretation-the-gods-of-the-copybook-headings/). This form of empathy can lead to a misunderstanding of the real dangers and consequences of certain ideologies and policies, ultimately causing societal harm.

View File

@@ -38,12 +38,10 @@ The government nationalizes all railroad companies and develops “Project&nbsp;
The European Union, which started as a free trade zone, has transformed into a bureaucratic [leviathan](https://grokipedia.com/page/Leviathan) that intrudes into every aspect of life. It has become a tool for the wealthy elite to maintain their power and wealth at the expense of ordinary people. There is no area of life that the EU does not seek to control. From how people live and what they eat to how they manage their health, heat their homes, and choose their cars, there is likely a task force or group advocating for regulations on every conceivable issue. This often occurs against the wishes of the overwhelming majority of European citizens who reject these measures. The European Union, which started as a free trade zone, has transformed into a bureaucratic [leviathan](https://grokipedia.com/page/Leviathan) that intrudes into every aspect of life. It has become a tool for the wealthy elite to maintain their power and wealth at the expense of ordinary people. There is no area of life that the EU does not seek to control. From how people live and what they eat to how they manage their health, heat their homes, and choose their cars, there is likely a task force or group advocating for regulations on every conceivable issue. This often occurs against the wishes of the overwhelming majority of European citizens who reject these measures.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-regulations.webp"
src="/assets/images/posts/modern-atlas-shrugged-regulations.webp"
alt="A golden muscular figure stands in the center with a chain around his waist, surrounded by faceless businessmen holding papers and a key, against a backdrop of tall buildings and radiant sunlight." alt="A golden muscular figure stands in the center with a chain around his waist, surrounded by faceless businessmen holding papers and a key, against a backdrop of tall buildings and radiant sunlight."
/> />
</Figure>
<Blockquote author="Jean-Claude Juncker, Former President of the European Commission"> <Blockquote author="Jean-Claude Juncker, Former President of the European Commission">
We decide something, then put it out there, and wait for a while to see what happens. If theres We decide something, then put it out there, and wait for a while to see what happens. If theres
@@ -71,12 +69,10 @@ The EU is actively combating smoking. After an initial attempt to ban smoking in
The European Union is engaged in an ongoing battle with farmers. Regulations concerning fertilizers, and agricultural practices are making it increasingly difficult for farmers to produce food and compete in the global market. The EU Fertilizing Products Regulation (EU) 2019/1009 took effect on July 16, 2022, replacing the previous regulation from 2003. This new regulation expands the scope to include organic, organomineral, and secondary raw material-based fertilizers, in addition to traditional mineral fertilizers. Farmers must comply with hundreds of rules and regulations, which often conflict with one another, complicating adherence. Drones are used to monitor compliance with planting regulations and enforce adherence automatically. The European Union is engaged in an ongoing battle with farmers. Regulations concerning fertilizers, and agricultural practices are making it increasingly difficult for farmers to produce food and compete in the global market. The EU Fertilizing Products Regulation (EU) 2019/1009 took effect on July 16, 2022, replacing the previous regulation from 2003. This new regulation expands the scope to include organic, organomineral, and secondary raw material-based fertilizers, in addition to traditional mineral fertilizers. Farmers must comply with hundreds of rules and regulations, which often conflict with one another, complicating adherence. Drones are used to monitor compliance with planting regulations and enforce adherence automatically.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-farmers.webp"
src="/assets/images/posts/modern-atlas-shrugged-farmers.webp"
alt="A large crowd of farmers holding scythes and pitchforks, with tractors in the foreground, gathers in front of a grand government building under dramatic clouds and sun rays." alt="A large crowd of farmers holding scythes and pitchforks, with tractors in the foreground, gathers in front of a grand government building under dramatic clouds and sun rays."
/> />
</Figure>
Since late 2023, European farmers have been protesting across the continent due to rising production costs, particularly for fuel and fertilizer, while facing declining incomes and product prices. They oppose the EU environmental regulations from the Green Deal, which impose costly burdens without adequate compensation for farmers. Cheap agricultural imports from Ukraine, which do not have to follow the strict EU regulations, are flooding the market and driving down prices by 40%. Since late 2023, European farmers have been protesting across the continent due to rising production costs, particularly for fuel and fertilizer, while facing declining incomes and product prices. They oppose the EU environmental regulations from the Green Deal, which impose costly burdens without adequate compensation for farmers. Cheap agricultural imports from Ukraine, which do not have to follow the strict EU regulations, are flooding the market and driving down prices by 40%.
@@ -84,12 +80,10 @@ Since late 2023, European farmers have been protesting across the continent due
The EU is waging a war on individual mobility with its ongoing attacks on cars. Its latest initiative, innocuously titled “Updated Rules for Safer Roads, Less Air Pollution, and Digital Vehicle Documents,” is marketed as a step toward improved public safety and environmental stewardship. However, beneath the surface, it represents another move in a coordinated plan that aligns with the World Economic Forums vision—“Youll own nothing and be happy”—and the United Nations Agenda 2030 sustainability goals. The EUs Transport Commissioner, Apostolos Tzitzikostas, claims a noble mission: to halve road deaths and serious injuries by 2030. On paper, who could object? In practice, however, these rules focus less on safety and more on control and the gradual erosion of personal mobility. The EU is waging a war on individual mobility with its ongoing attacks on cars. Its latest initiative, innocuously titled “Updated Rules for Safer Roads, Less Air Pollution, and Digital Vehicle Documents,” is marketed as a step toward improved public safety and environmental stewardship. However, beneath the surface, it represents another move in a coordinated plan that aligns with the World Economic Forums vision—“Youll own nothing and be happy”—and the United Nations Agenda 2030 sustainability goals. The EUs Transport Commissioner, Apostolos Tzitzikostas, claims a noble mission: to halve road deaths and serious injuries by 2030. On paper, who could object? In practice, however, these rules focus less on safety and more on control and the gradual erosion of personal mobility.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-dark-figure.webp"
src="/assets/images/posts/modern-atlas-shrugged-dark-figure.webp"
alt="A faceless hooded figure tries to take the wheel of a golden muscular man and in front of city buildings and a radiant sun." alt="A faceless hooded figure tries to take the wheel of a golden muscular man and in front of city buildings and a radiant sun."
/> />
</Figure>
Consider the following numbers: In 2024, Germany recorded only 2,780 road traffic deaths, the third lowest since 1953. In contrast, violent knife attacks resulting in serious injuries totaled 8,160 in 2022, three times higher than traffic fatalities. Despite these statistics, Brussels remains focused on cars, particularly on the “challenges posed by unsafe and aging vehicles.” They have now introduced a plan requiring every car over ten years old to pass annual inspections. This expensive and inconvenient process will compel many to scrap reliable vehicles. Since half of Germanys cars are over ten years old, this measure effectively targets the working and middle classes who depend on older, affordable vehicles. Consider the following numbers: In 2024, Germany recorded only 2,780 road traffic deaths, the third lowest since 1953. In contrast, violent knife attacks resulting in serious injuries totaled 8,160 in 2022, three times higher than traffic fatalities. Despite these statistics, Brussels remains focused on cars, particularly on the “challenges posed by unsafe and aging vehicles.” They have now introduced a plan requiring every car over ten years old to pass annual inspections. This expensive and inconvenient process will compel many to scrap reliable vehicles. Since half of Germanys cars are over ten years old, this measure effectively targets the working and middle classes who depend on older, affordable vehicles.
@@ -133,12 +127,10 @@ This pattern is echoed across the European Union. In Italy, businesses often fac
The European Union is increasingly infringing on the autonomy of its citizens through regulations and surveillance. Germany is a leader in surveillance, actively pursuing user data from tech giants. Over the past decade, German authorities have requested information on 709,400 accounts—seven times the global per-person average. With 850 requests per 100,000 residents, Germany ranks second only to the United States, far surpassing Austria (136 requests) and Switzerland (245 requests per 100,000 citizens). In 2022 alone, requests surged by 38%, with a 65.4% response rate from tech companies. For example, Apple complied with 83% of German requests, up from 75% in 2016. This relentless data collection indicates a state eager to scrutinize every aspect of its citizens digital lives. The European Union is increasingly infringing on the autonomy of its citizens through regulations and surveillance. Germany is a leader in surveillance, actively pursuing user data from tech giants. Over the past decade, German authorities have requested information on 709,400 accounts—seven times the global per-person average. With 850 requests per 100,000 residents, Germany ranks second only to the United States, far surpassing Austria (136 requests) and Switzerland (245 requests per 100,000 citizens). In 2022 alone, requests surged by 38%, with a 65.4% response rate from tech companies. For example, Apple complied with 83% of German requests, up from 75% in 2016. This relentless data collection indicates a state eager to scrutinize every aspect of its citizens digital lives.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-surveillance.webp"
src="/assets/images/posts/modern-atlas-shrugged-surveillance.webp"
alt="A golden human figure stands behind bars in a city, with surveillance cameras in the clouds watching from above as sun rays shine outward." alt="A golden human figure stands behind bars in a city, with surveillance cameras in the clouds watching from above as sun rays shine outward."
/> />
</Figure>
The German Federal Office for the Protection of the Constitution (Verfassungsschutz) amplifies these concerns. Since Thomas Haldenwang took over in 2018, the agency has accumulated 485,000 datasets of personal information. Critics label it “Stasi 2.0,” referencing the legacy of the East German secret police and its extensive surveillance. Is this a “defensive democracy” or the foundation of a surveillance state? Public unease grows as historical parallels clash with modern realities. They even have an extensive dossier on the former president of the Verfassungsschutz, Hans-Georg Maaßen, who served from 2012 to 2018. He was dismissed from his position due to public statements regarding false claims of far-right attacks on migrants in Chemnitz, which were later proven to be false by a court, as Maaßen had claimed. Since then, Maaßen has been categorized as an enemy of the state, and they have started collecting material to use against him. The German Federal Office for the Protection of the Constitution (Verfassungsschutz) amplifies these concerns. Since Thomas Haldenwang took over in 2018, the agency has accumulated 485,000 datasets of personal information. Critics label it “Stasi 2.0,” referencing the legacy of the East German secret police and its extensive surveillance. Is this a “defensive democracy” or the foundation of a surveillance state? Public unease grows as historical parallels clash with modern realities. They even have an extensive dossier on the former president of the Verfassungsschutz, Hans-Georg Maaßen, who served from 2012 to 2018. He was dismissed from his position due to public statements regarding false claims of far-right attacks on migrants in Chemnitz, which were later proven to be false by a court, as Maaßen had claimed. Since then, Maaßen has been categorized as an enemy of the state, and they have started collecting material to use against him.
@@ -156,12 +148,10 @@ It is unlikely that the rules applied to you will also be enacted for politician
Another dark cloud of totalitarian control is emerging on the horizon. The European Union plans to systematically record and manage assets through the introduction of an asset register. A central database will consolidate all asset values exceeding 200,000 EUR. Citizens will be required to declare all account movements, stock holdings, company investments, cryptocurrencies, and even cash. Additionally, assets located outside the European Union must be registered. Violating this reporting obligation can result in hefty fines of up to one million euros for individuals and over ten million euros for banks. Another dark cloud of totalitarian control is emerging on the horizon. The European Union plans to systematically record and manage assets through the introduction of an asset register. A central database will consolidate all asset values exceeding 200,000 EUR. Citizens will be required to declare all account movements, stock holdings, company investments, cryptocurrencies, and even cash. Additionally, assets located outside the European Union must be registered. Violating this reporting obligation can result in hefty fines of up to one million euros for individuals and over ten million euros for banks.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-wealth.webp"
src="/assets/images/posts/modern-atlas-shrugged-wealth.webp"
alt="An open safe filled with gold bars, surrounded by cash, pearls, and more gold, with surveillance cameras watching over a city skyline under dramatic clouds and sun rays." alt="An open safe filled with gold bars, surrounded by cash, pearls, and more gold, with surveillance cameras watching over a city skyline under dramatic clouds and sun rays."
/> />
</Figure>
The new Anti-Money Laundering Authority (AMLA) will be granted extensive sanctioning powers, including the ability to block accounts and prevent transactions. The new Anti-Money Laundering Authority (AMLA) will be granted extensive sanctioning powers, including the ability to block accounts and prevent transactions.
@@ -177,12 +167,10 @@ Additionally, access to cash is being restricted. In the EU, a €10,000 cash pa
Lately, the European Union has significantly expanded its digital infrastructure, with Germany leading the way in implementing new technologies to streamline public services. A key example is the introduction of the digital patient record (elektronische Patientenakte, ePA), which became mandatory for all citizens with statutory health insurance in Germany starting in 2025, although opting out is still permitted. This digital file stores sensitive health data, prescriptions, and medical histories, making them accessible to healthcare providers and, under certain conditions, to insurance companies and government agencies. Lately, the European Union has significantly expanded its digital infrastructure, with Germany leading the way in implementing new technologies to streamline public services. A key example is the introduction of the digital patient record (elektronische Patientenakte, ePA), which became mandatory for all citizens with statutory health insurance in Germany starting in 2025, although opting out is still permitted. This digital file stores sensitive health data, prescriptions, and medical histories, making them accessible to healthcare providers and, under certain conditions, to insurance companies and government agencies.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-health.webp"
src="/assets/images/posts/modern-atlas-shrugged-health.webp"
alt="A doctor takes notes while a shirtless man stands beside an X-ray machine showing his skeleton, with surveillance cameras and dramatic sun rays in the background." alt="A doctor takes notes while a shirtless man stands beside an X-ray machine showing his skeleton, with surveillance cameras and dramatic sun rays in the background."
/> />
</Figure>
While the official justification is increased efficiency and improved medical care, critics warn that these measures indicate a shift toward a surveillance society reminiscent of dystopian worlds. The EUs broader push for digital identity frameworks, combined with data retention laws and the expansion of AI-powered monitoring, raises serious concerns about personal autonomy and freedom. The EU plans to implement the European Health Data Space (EHDS), a central system that aims for nearly all member states to join by 2025, with exchanges starting in early 2028. This system will enable cross-border access to electronic health records, including patient summaries, prescriptions, medical imagery, and laboratory results. Participation will be mandatory, with no option to opt out. While the official justification is increased efficiency and improved medical care, critics warn that these measures indicate a shift toward a surveillance society reminiscent of dystopian worlds. The EUs broader push for digital identity frameworks, combined with data retention laws and the expansion of AI-powered monitoring, raises serious concerns about personal autonomy and freedom. The EU plans to implement the European Health Data Space (EHDS), a central system that aims for nearly all member states to join by 2025, with exchanges starting in early 2028. This system will enable cross-border access to electronic health records, including patient summaries, prescriptions, medical imagery, and laboratory results. Participation will be mandatory, with no option to opt out.
@@ -196,12 +184,10 @@ Citizens fear that these systems could be used to profile individuals, influence
Germany has the largest public broadcasting network in the world, with a budget of around 10 billion euros collected from every citizen, regardless of their service usage. Germany has the largest public broadcasting network in the world, with a budget of around 10 billion euros collected from every citizen, regardless of their service usage.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-propaganda.webp"
src="/assets/images/posts/modern-atlas-shrugged-propaganda.webp"
alt="A golden muscular figure stands with an outstretched arm in front of a shining sun, while a television with a shattered screen sits among city buildings and dark clouds." alt="A golden muscular figure stands with an outstretched arm in front of a shining sun, while a television with a shattered screen sits among city buildings and dark clouds."
/> />
</Figure>
The system is enforced via mandatory fees (€18.36 per month), with critics claiming this compulsion is akin to financial coercion, especially given the perceived lack of neutrality and the one-sidedness in representation. A refusal to pay this fee can lead to the seizure of personal assets and even imprisonment. Georg Thiel became widely known for his imprisonment due to his refusal to pay the German broadcasting license fee. He was brought into administrative detention (“Erzwingungshaft”) to force compliance with court-ordered payments and remained in prison for 181 days (nearly 6 months). He didnt pay his debt but needed to be released due to limits on administrative detention. The system is enforced via mandatory fees (€18.36 per month), with critics claiming this compulsion is akin to financial coercion, especially given the perceived lack of neutrality and the one-sidedness in representation. A refusal to pay this fee can lead to the seizure of personal assets and even imprisonment. Georg Thiel became widely known for his imprisonment due to his refusal to pay the German broadcasting license fee. He was brought into administrative detention (“Erzwingungshaft”) to force compliance with court-ordered payments and remained in prison for 181 days (nearly 6 months). He didnt pay his debt but needed to be released due to limits on administrative detention.
@@ -227,12 +213,10 @@ The public broadcast network frequently attracts negative attention due to its m
At the EU level, lawfare manifests as legislative initiatives designed to expand state power over speech. Ursula von der Leyen, President of the European Commission, has proposed a new law to criminalize “hate speech” throughout the EU. This initiative requires unanimous approval from all member states and faces political challenges, particularly from leaders like Hungarys Viktor Orbán and Slovakias Robert Fico. The laws broad scope—criminalizing not only discrimination but also negative stereotyping of groups—has raised concerns that it could suppress legitimate discourse, including reporting on immigration-related crime statistics. At the EU level, lawfare manifests as legislative initiatives designed to expand state power over speech. Ursula von der Leyen, President of the European Commission, has proposed a new law to criminalize “hate speech” throughout the EU. This initiative requires unanimous approval from all member states and faces political challenges, particularly from leaders like Hungarys Viktor Orbán and Slovakias Robert Fico. The laws broad scope—criminalizing not only discrimination but also negative stereotyping of groups—has raised concerns that it could suppress legitimate discourse, including reporting on immigration-related crime statistics.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-lawfare.webp"
src="/assets/images/posts/modern-atlas-shrugged-lawfare.webp"
alt="A golden figure kneels and raises a hand toward a judge seated on a throne, with a city in ruins and the sun setting behind clouds in the background." alt="A golden figure kneels and raises a hand toward a judge seated on a throne, with a city in ruins and the sun setting behind clouds in the background."
/> />
</Figure>
In Germany, lawfare is directly targeted against individuals who criticize the state. A significant group of politicians, particularly from the Green Party and the FDP, including Robert Habeck, Marie-Agnes Strack-Zimmermann, Annalena Baerbock, and Katrin Göring-Eckardt, leads in suing ordinary citizens. Some have filed lawsuits against over 1,000 citizens. Many of these cases involve the services of the agency SO-DONE, which specializes in automatic cease-and-desist letters. They utilize AI to scan social media platforms and identify posts that infringe on their clients rights. In Germany, lawfare is directly targeted against individuals who criticize the state. A significant group of politicians, particularly from the Green Party and the FDP, including Robert Habeck, Marie-Agnes Strack-Zimmermann, Annalena Baerbock, and Katrin Göring-Eckardt, leads in suing ordinary citizens. Some have filed lawsuits against over 1,000 citizens. Many of these cases involve the services of the agency SO-DONE, which specializes in automatic cease-and-desist letters. They utilize AI to scan social media platforms and identify posts that infringe on their clients rights.
@@ -271,12 +255,10 @@ On May 15, 2025, an event occurred that I never thought possible in a democratic
Germanys welfare state, a cornerstone of its social policy, has grown into a behemoth that consumes a disproportionate share of public resources. In 2024, social security spending—including unemployment insurance—accounts for 45.9% of the federal budget, overshadowing investments in education (5.1%), infrastructure (1.9%), and public transport (0.5%). Additional welfare programs, such as asylum seeker and family benefits, add another 5.2%, bringing total social spending to over half the budget. This allocation leaves little room for investments that could drive long-term economic growth, a concern libertarians view as a misprioritization of resources. Critics, echoing Ayn Rands Atlas Shrugged, argue that such policies risk fostering a society of “moochers”—those who live off the productivity of others without contributing themselves—thus perpetuating dependency over self-reliance. Germanys welfare state, a cornerstone of its social policy, has grown into a behemoth that consumes a disproportionate share of public resources. In 2024, social security spending—including unemployment insurance—accounts for 45.9% of the federal budget, overshadowing investments in education (5.1%), infrastructure (1.9%), and public transport (0.5%). Additional welfare programs, such as asylum seeker and family benefits, add another 5.2%, bringing total social spending to over half the budget. This allocation leaves little room for investments that could drive long-term economic growth, a concern libertarians view as a misprioritization of resources. Critics, echoing Ayn Rands Atlas Shrugged, argue that such policies risk fostering a society of “moochers”—those who live off the productivity of others without contributing themselves—thus perpetuating dependency over self-reliance.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-welfare.webp"
src="/assets/images/posts/modern-atlas-shrugged-welfare.webp"
alt="A golden figure relaxes in a hammock under dramatic clouds and sun rays, with distant buildings and small figures scattered across a green landscape." alt="A golden figure relaxes in a hammock under dramatic clouds and sun rays, with distant buildings and small figures scattered across a green landscape."
/> />
</Figure>
The middle class, the backbone of Germanys industrial strength, bears the brunt of this system. For example, the average worker contributes 18.6% of their gross wage to the pension system but receives only a fraction of this in retirement benefits. With an aging population and a shrinking workforce, this disparity is widening, creating a system where the productive are heavily taxed to sustain an increasingly unsustainable entitlement structure. This fosters dependency, reduces work incentives, and undermines individual responsibility. The middle class, the backbone of Germanys industrial strength, bears the brunt of this system. For example, the average worker contributes 18.6% of their gross wage to the pension system but receives only a fraction of this in retirement benefits. With an aging population and a shrinking workforce, this disparity is widening, creating a system where the productive are heavily taxed to sustain an increasingly unsustainable entitlement structure. This fosters dependency, reduces work incentives, and undermines individual responsibility.
@@ -288,12 +270,10 @@ Across the EU, the scale of the welfare state is equally troubling. Europe accou
Germanys taxation system exacerbates the burdens of the welfare state, imposing some of the highest rates in the world on both individuals and corporations. In 2024, a €100,000 income incurs an annual tax burden of €36,500—the highest among G7 nations—compared to €26,600 in the US and €24,800 in Japan. This leaves German workers with significantly less disposable income, limiting their ability to save, invest, or build wealth. Over the past 55 years, social security contributions alone have risen from 26.5% to 42.5% of an employers gross salary, reducing an average workers annual take-home pay by €8,467 compared to 1970 rates. Germanys taxation system exacerbates the burdens of the welfare state, imposing some of the highest rates in the world on both individuals and corporations. In 2024, a €100,000 income incurs an annual tax burden of €36,500—the highest among G7 nations—compared to €26,600 in the US and €24,800 in Japan. This leaves German workers with significantly less disposable income, limiting their ability to save, invest, or build wealth. Over the past 55 years, social security contributions alone have risen from 26.5% to 42.5% of an employers gross salary, reducing an average workers annual take-home pay by €8,467 compared to 1970 rates.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-taxation.webp"
src="/assets/images/posts/modern-atlas-shrugged-taxation.webp"
alt="A hooded, faceless figure in dark clothing crouches among piles of gold bars, holding a sack of gold, with city buildings and dramatic light beams in the background." alt="A hooded, faceless figure in dark clothing crouches among piles of gold bars, holding a sack of gold, with city buildings and dramatic light beams in the background."
/> />
</Figure>
Corporate taxation presents a similar challenge. Germanys high corporate tax rates deter investment and entrepreneurship, which are key drivers of economic dynamism. As other European nations lower rates to attract businesses, Germanys increases indicate a disconnect from global trends, jeopardizing its competitiveness. Energy taxes further illustrate this burden: 50-55% of gasoline prices consist of taxes (e.g., €0.65 energy tax, €0.08 CO₂ tax, plus 19% VAT), while gas stations earn only €0.10-0.15 per liter. This disparity highlights a system where the government extracts significant revenue without providing proportional value, resembling parasitic governance. Corporate taxation presents a similar challenge. Germanys high corporate tax rates deter investment and entrepreneurship, which are key drivers of economic dynamism. As other European nations lower rates to attract businesses, Germanys increases indicate a disconnect from global trends, jeopardizing its competitiveness. Energy taxes further illustrate this burden: 50-55% of gasoline prices consist of taxes (e.g., €0.65 energy tax, €0.08 CO₂ tax, plus 19% VAT), while gas stations earn only €0.10-0.15 per liter. This disparity highlights a system where the government extracts significant revenue without providing proportional value, resembling parasitic governance.
@@ -307,12 +287,10 @@ The middle class—Rands “Atlases”—is heavily taxed to sustain a welfar
But it is not only taxation that burdens “Atlas”—the middle class and productive industrialists. Inflation, driven by government expansion of the money supply, acts as a hidden form of taxation. Unlike obvious taxes on income or property, most people do not immediately recognize its effects. As new money enters the economy, it redistributes wealth toward those who receive it first (Cantillon effect)—typically governments, banks, and politically connected entities—at the expense of everyone else, especially fixed-income earners, savers, and pensioners. This process benefits the government and its allies, allowing the state to siphon off resources while diminishing citizens purchasing power without the transparency of direct taxation. This not only extracts wealth but does so in a way that is harder for the public to understand and resist than overt taxation. Inflation also hurts savers and pensioners the most, as their stored wealth loses purchasing power over time. But it is not only taxation that burdens “Atlas”—the middle class and productive industrialists. Inflation, driven by government expansion of the money supply, acts as a hidden form of taxation. Unlike obvious taxes on income or property, most people do not immediately recognize its effects. As new money enters the economy, it redistributes wealth toward those who receive it first (Cantillon effect)—typically governments, banks, and politically connected entities—at the expense of everyone else, especially fixed-income earners, savers, and pensioners. This process benefits the government and its allies, allowing the state to siphon off resources while diminishing citizens purchasing power without the transparency of direct taxation. This not only extracts wealth but does so in a way that is harder for the public to understand and resist than overt taxation. Inflation also hurts savers and pensioners the most, as their stored wealth loses purchasing power over time.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-inflation.webp"
src="/assets/images/posts/modern-atlas-shrugged-inflation.webp"
alt="Two hands hold golden coins above a wheat field and city buildings, one coin is whole and the other is cracked." alt="Two hands hold golden coins above a wheat field and city buildings, one coin is whole and the other is cracked."
/> />
</Figure>
Throughout history, states have resorted to inflation—by debasing coinage or printing money—to cover expenses and benefit insiders. The Roman government frequently debased its currency by reducing the silver content of its coins and mixing them with cheaper metals like copper to fund its spending. Over time, this caused severe inflation, eroded trust in money, and ultimately forced the state to collect taxes in kind because its coins had become worthless. By the late third century, the currency had lost so much value that Rome could no longer pay its soldiers and officials in money; instead, taxes were collected in supplies or bullion, and the state resorted to forced labor. Throughout history, states have resorted to inflation—by debasing coinage or printing money—to cover expenses and benefit insiders. The Roman government frequently debased its currency by reducing the silver content of its coins and mixing them with cheaper metals like copper to fund its spending. Over time, this caused severe inflation, eroded trust in money, and ultimately forced the state to collect taxes in kind because its coins had become worthless. By the late third century, the currency had lost so much value that Rome could no longer pay its soldiers and officials in money; instead, taxes were collected in supplies or bullion, and the state resorted to forced labor.

View File

@@ -42,12 +42,10 @@ European citizens are trapped in a state of slavery due to inflation, taxes, and
The flight of Germanys entrepreneurial talent is a vivid manifestation of “Atlas Shrugged.” [A panel discussion](https://www.youtube.com/watch?v=LH9FT0ldHQY) hosted by Mark Friedrich, featuring four prominent German entrepreneurs—Prof. Dr. Richard Werner, Dr. Markus Krall, Dr. Andreas Beck, and Friedrich himself—reveals a stark reality: three of the four have already relocated to Switzerland. Their reasons are telling: lower taxes, reduced regulatory burdens, and a stable environment that respects individual achievement. Switzerland, with its decentralized governance and economic freedom, has become a beacon for those escaping Germanys stifling bureaucracy. The flight of Germanys entrepreneurial talent is a vivid manifestation of “Atlas Shrugged.” [A panel discussion](https://www.youtube.com/watch?v=LH9FT0ldHQY) hosted by Mark Friedrich, featuring four prominent German entrepreneurs—Prof. Dr. Richard Werner, Dr. Markus Krall, Dr. Andreas Beck, and Friedrich himself—reveals a stark reality: three of the four have already relocated to Switzerland. Their reasons are telling: lower taxes, reduced regulatory burdens, and a stable environment that respects individual achievement. Switzerland, with its decentralized governance and economic freedom, has become a beacon for those escaping Germanys stifling bureaucracy.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-emigration.webp"
src="/assets/images/posts/modern-atlas-shrugged-emigration.webp"
alt="A golden figure with a briefcase waves goodbye while walking along a winding road away from a city, with sun rays shining through clouds in the background." alt="A golden figure with a briefcase waves goodbye while walking along a winding road away from a city, with sun rays shining through clouds in the background."
/> />
</Figure>
Or consider the podcast duo [Hoss and Hopf](https://hossundhopf.podigee.io/) as further evidence. Hoss has settled in Dubai, drawn by its business-friendly policies and minimal tax regime. He cites the emirates streamlined processes and lack of personal income tax as critical factors, allowing him to focus on growing his ventures rather than navigating red tape. Hopf, meanwhile, moved to Switzerland in 2024, seeking not just economic advantages but also safety and relief from what he perceives as oppressive ideological pressures, such as Germanys growing emphasis on progressive social policies like LGBT ideology and unsafe streets for his children. These individual stories reflect a broader trend: Germanys entrepreneurs are voting with their feet, abandoning a nation that once nurtured industrial giants for destinations that reward initiative. Or consider the podcast duo [Hoss and Hopf](https://hossundhopf.podigee.io/) as further evidence. Hoss has settled in Dubai, drawn by its business-friendly policies and minimal tax regime. He cites the emirates streamlined processes and lack of personal income tax as critical factors, allowing him to focus on growing his ventures rather than navigating red tape. Hopf, meanwhile, moved to Switzerland in 2024, seeking not just economic advantages but also safety and relief from what he perceives as oppressive ideological pressures, such as Germanys growing emphasis on progressive social policies like LGBT ideology and unsafe streets for his children. These individual stories reflect a broader trend: Germanys entrepreneurs are voting with their feet, abandoning a nation that once nurtured industrial giants for destinations that reward initiative.
@@ -113,12 +111,10 @@ This could mean starting to consume alternative media, listening to alternative
Henry David Thoreau, a foundational thinker on this subject, observed that those who, by default or routine, “yield to [government] their allegiance and support are undoubtedly its most conscientious supporters, and so frequently the most serious obstacles to reform.” Henry David Thoreau, a foundational thinker on this subject, observed that those who, by default or routine, “yield to [government] their allegiance and support are undoubtedly its most conscientious supporters, and so frequently the most serious obstacles to reform.”
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-grey-mass.webp"
src="/assets/images/posts/modern-atlas-shrugged-grey-mass.webp"
alt="A golden human figure stands on large gears, pointing toward a bright sun, while surrounded by a grey crowd of identical, expressionless heads." alt="A golden human figure stands on large gears, pointing toward a bright sun, while surrounded by a grey crowd of identical, expressionless heads."
/> />
</Figure>
The German language has a remarkable word that is difficult to translate fully: “Mitläufer.” The literal translation is “someone who runs with [the crowd].” Since the Third Reich, this term has described individuals who do not actively participate in the regime but support it through passive acceptance of its rules and regulations. This group comprises roughly two-thirds of people who conform to the masses, even when they know it is wrong and harmful to others. Two famous experiments from the 1950s and 1960s demonstrated that 65% of people are willing to harm or even kill someone if an authority figure instructs them to do so ([Milgram experiment](https://grokipedia.com/page/Milgram_experiment)) and will go along with any lie when everyone else in the experiment does the same ([Asch conformity experiments](https://grokipedia.com/page/Asch_conformity_experiments). This represents the majority of people in any society. They are the ones who will always follow the state, regardless of how oppressive it becomes. Dont be one of these people; instead, become the sand in the machine. The German language has a remarkable word that is difficult to translate fully: “Mitläufer.” The literal translation is “someone who runs with [the crowd].” Since the Third Reich, this term has described individuals who do not actively participate in the regime but support it through passive acceptance of its rules and regulations. This group comprises roughly two-thirds of people who conform to the masses, even when they know it is wrong and harmful to others. Two famous experiments from the 1950s and 1960s demonstrated that 65% of people are willing to harm or even kill someone if an authority figure instructs them to do so ([Milgram experiment](https://grokipedia.com/page/Milgram_experiment)) and will go along with any lie when everyone else in the experiment does the same ([Asch conformity experiments](https://grokipedia.com/page/Asch_conformity_experiments). This represents the majority of people in any society. They are the ones who will always follow the state, regardless of how oppressive it becomes. Dont be one of these people; instead, become the sand in the machine.
@@ -161,23 +157,19 @@ Another idea is to overwhelm the telephone hotlines and email inboxes of newly e
then, the remedy to power is simply to withdraw that consent. then, the remedy to power is simply to withdraw that consent.
</Blockquote> </Blockquote>
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-disobedience.webp"
src="/assets/images/posts/modern-atlas-shrugged-disobedience.webp"
alt="A powerful golden figure stands with one arm raised and shouts 'NO!' while suited men holding clipboards surround him against a cityscape background." alt="A powerful golden figure stands with one arm raised and shouts 'NO!' while suited men holding clipboards surround him against a cityscape background."
/> />
</Figure>
The simplest form of disobedience is frequently saying “**No!**” However, civil disobedience encompasses various methods, and each individual must determine their willingness to act. Some actions may constitute administrative offenses or even crimes, so its crucial to consider the consequences of your disobedience. Simple ideas include opting out of government programs, such as the digital patient record, or disregarding rules that seem unreasonable, like waiting at a red traffic light when no one is around. Germans are among the most obedient people in the world, and crossing a red light will likely result in someone reprimanding you. The simplest form of disobedience is frequently saying “**No!**” However, civil disobedience encompasses various methods, and each individual must determine their willingness to act. Some actions may constitute administrative offenses or even crimes, so its crucial to consider the consequences of your disobedience. Simple ideas include opting out of government programs, such as the digital patient record, or disregarding rules that seem unreasonable, like waiting at a red traffic light when no one is around. Germans are among the most obedient people in the world, and crossing a red light will likely result in someone reprimanding you.
My favorite German podcast, [Aethervox Ehrenfeld](https://xsxm.de/), has the motto “Normie muss weinen” (Normie has to cry) as a philosophy. This means you do and enjoy anything that state-conforming, statist people dislike and find offensive. Eating meat is a sign of toxic masculinity? Have one for breakfast, lunch, and dinner! Drinking raw milk is far-right? Where is the nearest farm to get fresh milk? Celebrating Christmas and wishing “Merry Christmas” is insensitive to Muslims? Well, “Merry Christmas and a fucking New Year!” Driving a petrol car is bad for climate change? Buy a bigger car with more horsepower! The more those people get offended, the more fun you will have. My favorite German podcast, [Aethervox Ehrenfeld](https://xsxm.de/), has the motto “Normie muss weinen” (Normie has to cry) as a philosophy. This means you do and enjoy anything that state-conforming, statist people dislike and find offensive. Eating meat is a sign of toxic masculinity? Have one for breakfast, lunch, and dinner! Drinking raw milk is far-right? Where is the nearest farm to get fresh milk? Celebrating Christmas and wishing “Merry Christmas” is insensitive to Muslims? Well, “Merry Christmas and a fucking New Year!” Driving a petrol car is bad for climate change? Buy a bigger car with more horsepower! The more those people get offended, the more fun you will have.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-mockery.webp"
src="/assets/images/posts/modern-atlas-shrugged-mockery.webp"
alt="A golden, muscular figure with a wide smiling mask waves in front of a tall, stylized building, with sun rays and clouds in the background." alt="A golden, muscular figure with a wide smiling mask waves in front of a tall, stylized building, with sun rays and clouds in the background."
/> />
</Figure>
Ridicule is generally regarded as one of the most effective weapons against totalitarian thinking. Absurdity is intrinsic to tyranny, and “no acid is more corrosive to the absurdity of tyranny than laughter.”[^lindsay2021ss] Psychological studies and political philosophy agree: humor and ridicule can undermine fear, diminish the rulers aura of invincibility, and expose their hypocrisy. Totalitarian leaders and demagogues are notoriously humorless; ridicule destabilizes them, puts their pretensions into perspective, and encourages others to question their legitimacy. Ridicule is generally regarded as one of the most effective weapons against totalitarian thinking. Absurdity is intrinsic to tyranny, and “no acid is more corrosive to the absurdity of tyranny than laughter.”[^lindsay2021ss] Psychological studies and political philosophy agree: humor and ridicule can undermine fear, diminish the rulers aura of invincibility, and expose their hypocrisy. Totalitarian leaders and demagogues are notoriously humorless; ridicule destabilizes them, puts their pretensions into perspective, and encourages others to question their legitimacy.
@@ -189,12 +181,11 @@ Ridicule is generally regarded as one of the most effective weapons against tota
With the internet and social media, we live in the best time to follow this advice. While individuals like Joost A. M. Meerloo, an active member of the Dutch resistance during World War II, had to print and distribute pamphlets to mock their oppressors, we can achieve this with just a few clicks. The internet is a powerful tool for spreading ideas and memes that can challenge the authority of tyrants and demagogues. The power of ridicule is amplified by the speed and reach of social media, making it a potent weapon against authoritarianism. With the internet and social media, we live in the best time to follow this advice. While individuals like Joost A. M. Meerloo, an active member of the Dutch resistance during World War II, had to print and distribute pamphlets to mock their oppressors, we can achieve this with just a few clicks. The internet is a powerful tool for spreading ideas and memes that can challenge the authority of tyrants and demagogues. The power of ridicule is amplified by the speed and reach of social media, making it a potent weapon against authoritarianism.
<Figure caption="Who radicalized you? You did."> <BasicImage
<Image caption="Who radicalized you? You did."
src="/assets/images/posts/modern-atlas-shrugged-who-radicalized-you.webp" src="/images/posts/modern-atlas-shrugged-who-radicalized-you.webp"
alt="A gray, expressionless character (NPC) asked a bearded man (Chad) who radicalized them, and they respond by saying it was the person asking, implying that the questioners actions caused their radicalization." alt="A gray, expressionless character (NPC) asked a bearded man (Chad) who radicalized them, and they respond by saying it was the person asking, implying that the questioners actions caused their radicalization."
/> />
</Figure>
You can learn about memes on [Know Your Meme](https://knowyourmeme.com/), learn about special words and phrases to mock the enemy on [Urban Dictionary](https://www.urbandictionary.com/), and create your own memes on one of the many platforms, for example, the [Imgflip Meme Generator](https://imgflip.com/memegenerator). You can even use AI to generate fake images of politicians doing funny or ridiculous things. The possibilities are endless. If you would like to learn how an expert works with memes and viral clips, take a look at the channel of [Snicklink on 𝕏](https://x.com/snicklink). He is a master of meme creation and the use of AI for ridicule and satire, and his work has made it multiple times into television around the globe, including Fox News. You can learn about memes on [Know Your Meme](https://knowyourmeme.com/), learn about special words and phrases to mock the enemy on [Urban Dictionary](https://www.urbandictionary.com/), and create your own memes on one of the many platforms, for example, the [Imgflip Meme Generator](https://imgflip.com/memegenerator). You can even use AI to generate fake images of politicians doing funny or ridiculous things. The possibilities are endless. If you would like to learn how an expert works with memes and viral clips, take a look at the channel of [Snicklink on 𝕏](https://x.com/snicklink). He is a master of meme creation and the use of AI for ridicule and satire, and his work has made it multiple times into television around the globe, including Fox News.
@@ -202,12 +193,10 @@ You can learn about memes on [Know Your Meme](https://knowyourmeme.com/), learn
One of the most important tasks for those within the system is to educate others about the concepts of freedom, self-reliance, and individualism. The Western world, particularly Germany, faces significant deficits in these areas, making this task seem daunting. German-speaking countries were the breeding ground for two immensely destructive ideologies: National Socialism and Marxism. These ideas spread rapidly and led to the bloodiest civil war in human history. Socialists states have murdered between 140 and 200 million people in democides in the 20th century. Germany experienced two socialist dictatorships in one century: the Third Reich and the GDR. One of the most important tasks for those within the system is to educate others about the concepts of freedom, self-reliance, and individualism. The Western world, particularly Germany, faces significant deficits in these areas, making this task seem daunting. German-speaking countries were the breeding ground for two immensely destructive ideologies: National Socialism and Marxism. These ideas spread rapidly and led to the bloodiest civil war in human history. Socialists states have murdered between 140 and 200 million people in democides in the 20th century. Germany experienced two socialist dictatorships in one century: the Third Reich and the GDR.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-teaching.webp"
src="/assets/images/posts/modern-atlas-shrugged-teaching.webp"
alt="A golden woman sits among large gears holding an open book, surrounded by people and stacks of books." alt="A golden woman sits among large gears holding an open book, surrounded by people and stacks of books."
/> />
</Figure>
Additionally, Germany exhibits an unusually high level of obedience. This trait began in the Holy Roman Empire, where fragmented small states with local rulers ingrained loyalty to authority in the German psyche. Prussian militarism and bureaucracy in the 18th and 19th centuries emphasized discipline, order, and obedience to authority. Nationalism in the 19th century fostered a sense of national identity tied to the state. The failure and instability of the Weimar Republic led many to crave strong, stable authority, paving the way for the acceptance of authoritarian rule. The Nazi regime exploited and amplified obedience and authority, using propaganda and terror to ensure conformity. After the war, Germany was rebuilt on democratic principles while valuing order, rules, and the state. It transitioned to a mixed economy that is predominantly socialist and becoming increasingly so. Additionally, Germany exhibits an unusually high level of obedience. This trait began in the Holy Roman Empire, where fragmented small states with local rulers ingrained loyalty to authority in the German psyche. Prussian militarism and bureaucracy in the 18th and 19th centuries emphasized discipline, order, and obedience to authority. Nationalism in the 19th century fostered a sense of national identity tied to the state. The failure and instability of the Weimar Republic led many to crave strong, stable authority, paving the way for the acceptance of authoritarian rule. The Nazi regime exploited and amplified obedience and authority, using propaganda and terror to ensure conformity. After the war, Germany was rebuilt on democratic principles while valuing order, rules, and the state. It transitioned to a mixed economy that is predominantly socialist and becoming increasingly so.
@@ -235,12 +224,10 @@ One of the most important tasks for each individual is to learn about digital an
A century ago, in a stable gold-backed monetary system, you could buy a house with three to three and a half years income. Today, it takes 10 to 12 years income to purchase a home. Your grandparents and parents were able to buy houses not because they worked harder than you, but because their money retained more value. The state has robbed you of your wealth and your future. It has taken away your time and opportunities. A century ago, in a stable gold-backed monetary system, you could buy a house with three to three and a half years income. Today, it takes 10 to 12 years income to purchase a home. Your grandparents and parents were able to buy houses not because they worked harder than you, but because their money retained more value. The state has robbed you of your wealth and your future. It has taken away your time and opportunities.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-bitcoin.webp"
src="/assets/images/posts/modern-atlas-shrugged-bitcoin.webp"
alt="A hand holds up a glowing Bitcoin coin with radiant light beams, surrounded by golden skyscrapers." alt="A hand holds up a glowing Bitcoin coin with radiant light beams, surrounded by golden skyscrapers."
/> />
</Figure>
Four financial options are available for individuals to protect their wealth: gold, Bitcoin, securities (stocks, ETFs, bonds, etc.), and real estate. Depending on your risk tolerance, choose one or more of these options to safeguard your wealth. Each option has its advantages and disadvantages. The older generation of libertarians tends to favor gold, while the younger generation shows more interest in Bitcoin. Both options are valid, so select the one that best fits your needs. If you want to invest in stocks or ETFs, consider that it may not be advisable to do so in Europe. Additionally, the “emerging markets” have also significantly underperformed in the last years. Keep in mind that stocks and ETFs may be highly overvalued due to monetary expansion and the [Cantillon effect](https://youtu.be/hX9e1VSSP6Y?si=RJT-1f_9IwtJC4dx&t=1428). Four financial options are available for individuals to protect their wealth: gold, Bitcoin, securities (stocks, ETFs, bonds, etc.), and real estate. Depending on your risk tolerance, choose one or more of these options to safeguard your wealth. Each option has its advantages and disadvantages. The older generation of libertarians tends to favor gold, while the younger generation shows more interest in Bitcoin. Both options are valid, so select the one that best fits your needs. If you want to invest in stocks or ETFs, consider that it may not be advisable to do so in Europe. Additionally, the “emerging markets” have also significantly underperformed in the last years. Keep in mind that stocks and ETFs may be highly overvalued due to monetary expansion and the [Cantillon effect](https://youtu.be/hX9e1VSSP6Y?si=RJT-1f_9IwtJC4dx&t=1428).
@@ -264,12 +251,10 @@ It is always wise to stay informed about government plans that may infringe on y
Regardless of whether you stay or emigrate, the state dislikes self-reliance the most. It prefers individuals who depend on it for survival. The state favors people who do not think critically and possess minimal skills. Their ideal citizen is born, pays taxes, and dies. This is why they seek to regulate and forbid everything. Regardless of whether you stay or emigrate, the state dislikes self-reliance the most. It prefers individuals who depend on it for survival. The state favors people who do not think critically and possess minimal skills. Their ideal citizen is born, pays taxes, and dies. This is why they seek to regulate and forbid everything.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-resilience.webp"
src="/assets/images/posts/modern-atlas-shrugged-resilience.webp"
alt="A large golden figure in red trunks lifts a barbell overhead in a desert landscape, while a smaller figure runs on a path toward a lake and mountains at sunrise." alt="A large golden figure in red trunks lifts a barbell overhead in a desert landscape, while a smaller figure runs on a path toward a lake and mountains at sunrise."
/> />
</Figure>
Nothing frightens the Leviathan more than self-reliant, resilient, and independent people. Klaus Schwab, the former chairman of the World Economic Forum, identified the enemy of his corporate-fascist agenda, the Libertarians, during a recent panel discussion. Nothing frightens the Leviathan more than self-reliant, resilient, and independent people. Klaus Schwab, the former chairman of the World Economic Forum, identified the enemy of his corporate-fascist agenda, the Libertarians, during a recent panel discussion.
@@ -296,12 +281,10 @@ Learning languages is extremely useful if you are thinking about emigrating. Eng
You can prepare for potential catastrophes, such as blackouts, riots, and other emergencies, whether you live in a city or the countryside. Ive written an [essay](/how-to-prepare-for-the-worst-case/) about my preparation methods. You can prepare for potential catastrophes, such as blackouts, riots, and other emergencies, whether you live in a city or the countryside. Ive written an [essay](/how-to-prepare-for-the-worst-case/) about my preparation methods.
<Figure> <BasicImage
<Image src="/images/posts/modern-atlas-shrugged-farm.webp"
src="/assets/images/posts/modern-atlas-shrugged-farm.webp"
alt="A large hand places a golden Bitcoin coin on a plant sprout between two farmhouses with chickens and crops, under a bright, radiant sky." alt="A large hand places a golden Bitcoin coin on a plant sprout between two farmhouses with chickens and crops, under a bright, radiant sky."
/> />
</Figure>
If you live in the countryside, you might want to consider becoming less dependent on the state. This could mean having a garden, chickens, and solar panels. You could also consider having a well. If you have a fireplace with firewood, you will not freeze when the power goes out in the winter. If you live in the countryside, you might want to consider becoming less dependent on the state. This could mean having a garden, chickens, and solar panels. You could also consider having a well. If you have a fireplace with firewood, you will not freeze when the power goes out in the winter.
@@ -367,12 +350,11 @@ But history teaches us a relentless lesson: when a society chooses coercion over
The collapse of an old, oppressive order is not merely an end—it is the fertile ground from which renewal can spring. Just as Rands heroes retreated to Galts Gulch to build anew, todays pioneers are forging parallel worlds: from digital frontiers, to private cities, to [network states](https://thenetworkstate.com/), from open markets to unstoppable code. The same principles endure—self-ownership, property, freedom, responsibility, and the dignity of voluntary cooperation. In our time, the question echoes in a new form. “Who is John Galt?” once captured the longing for a world shaped by reason and liberty. The collapse of an old, oppressive order is not merely an end—it is the fertile ground from which renewal can spring. Just as Rands heroes retreated to Galts Gulch to build anew, todays pioneers are forging parallel worlds: from digital frontiers, to private cities, to [network states](https://thenetworkstate.com/), from open markets to unstoppable code. The same principles endure—self-ownership, property, freedom, responsibility, and the dignity of voluntary cooperation. In our time, the question echoes in a new form. “Who is John Galt?” once captured the longing for a world shaped by reason and liberty.
<Figure caption="Who is Satoshi Nakamoto?"> <BasicImage
<Image caption="Who is Satoshi Nakamoto?"
src="/assets/images/posts/modern-atlas-shrugged-satoshi-nakamoto.webp" src="/images/posts/modern-atlas-shrugged-satoshi-nakamoto.webp"
alt="A bronze statue of a hooded, faceless figure with a Bitcoin symbol on their chest, above a plaque that reads 'Who is Satoshi Nakamoto?'" alt="A bronze statue of a hooded, faceless figure with a Bitcoin symbol on their chest, above a plaque that reads 'Who is Satoshi Nakamoto?'"
/> />
</Figure>
Today, we ask, “**Who is Satoshi Nakamoto?**” The answer is not just a name, but an invitation—a challenge to join the ranks of the builders, the creators, the defenders of human sovereignty. The future belongs to those who choose to think, to act, and to build. Will you be among them? Today, we ask, “**Who is Satoshi Nakamoto?**” The answer is not just a name, but an invitation—a challenge to join the ranks of the builders, the creators, the defenders of human sovereignty. The future belongs to those who choose to think, to act, and to build. Will you be among them?

View File

@@ -20,9 +20,12 @@ Obsidian allows you to configure the window layout to your liking; you can drag
I use stacked tabs (known as sliding panes). This allows me to have multiple notes open side by side and move them left and right with my mouse. I use stacked tabs (known as sliding panes). This allows me to have multiple notes open side by side and move them left and right with my mouse.
<Figure caption="The Obsidian Layout" size="wide"> <BasicImage
<Image src="/assets/images/posts/obsidian-layout.webp" alt="Obsidian Layout" /> caption="The Obsidian Layout"
</Figure> src="/images/posts/obsidian-layout.webp"
alt="Obsidian Layout"
size="wide"
/>
My left pane has files, search, and bookmarks in the upper section, with bookmarks open 90% of the time. Below this section, I use a calendar. This is new; I started with loose journaling in January 2025. I briefly note down important things—who I talked to, what we discussed, or what important things I learned or did that day. At the end of the left column, I have the Git community plugin pane to see and work with changed files. My left pane has files, search, and bookmarks in the upper section, with bookmarks open 90% of the time. Below this section, I use a calendar. This is new; I started with loose journaling in January 2025. I briefly note down important things—who I talked to, what we discussed, or what important things I learned or did that day. At the end of the left column, I have the Git community plugin pane to see and work with changed files.
@@ -76,9 +79,12 @@ The Graph view is one of the coolest features to show to other people when intro
Additionally, you can search for specific words and see how notes are connected. There is a cool feature that shows the history of your notes, how they were created and changed over time. Additionally, you can search for specific words and see how notes are connected. There is a cool feature that shows the history of your notes, how they were created and changed over time.
<Figure caption="The Obsidian Graph View" size="wide"> <BasicImage
<Image src="/assets/images/posts/obsidian-graph-view-2025.webp" alt="Obsidian Graph View" /> caption="The Obsidian Graph View"
</Figure> src="/images/posts/obsidian-graph-view-2025.webp"
alt="Obsidian Graph View"
size="wide"
/>
Im proud that my notes are well-connected. And yes, my Graph View looks like the Death Star, thats a coincidence. When others share their graph view, it is often a mess of notes that are not connected or massive separated clusters connected with only a few connections. Connecting notes is one of my main tasks to create a useful Zettelkasten. When Im finished with my notes, I always link important words in my notes and additionally search for notes that might relate to my note. Im proud that my notes are well-connected. And yes, my Graph View looks like the Death Star, thats a coincidence. When others share their graph view, it is often a mess of notes that are not connected or massive separated clusters connected with only a few connections. Connecting notes is one of my main tasks to create a useful Zettelkasten. When Im finished with my notes, I always link important words in my notes and additionally search for notes that might relate to my note.
@@ -366,17 +372,17 @@ I export my highlights from Readwise to Obsidian once a week, but I keep them in
Readwise recently added the feature to [talk to your highlights and notes with AI](https://docs.readwise.io/readwise/guides/chat-with-highlights), allowing you to ask questions, get context for a highlight, and much more. This has made it an additional tool for me to create notes in Obsidian while talking to my highlights. The AI will provide structured answers to your questions and links to the highlights in your vault. I have dipped my toes into this feature, but I see giant potential in it. This feature has changed how I highlight from now on, because I know that anything I highlight will be part of the permanent AI brain in Readwise and can be accessed later by talking to the AI. Readwise recently added the feature to [talk to your highlights and notes with AI](https://docs.readwise.io/readwise/guides/chat-with-highlights), allowing you to ask questions, get context for a highlight, and much more. This has made it an additional tool for me to create notes in Obsidian while talking to my highlights. The AI will provide structured answers to your questions and links to the highlights in your vault. I have dipped my toes into this feature, but I see giant potential in it. This feature has changed how I highlight from now on, because I know that anything I highlight will be part of the permanent AI brain in Readwise and can be accessed later by talking to the AI.
<Figure caption="Readwise Chat"> <BasicImage caption="Readwise Chat" src="/images/posts/readwise-chat.webp" alt="Readwise Chat" />
<Image src="/assets/images/posts/readwise-chat.webp" alt="Readwise Chat" />
</Figure>
In the future, Ill likely use this feature every day to get answers for my notes. The good thing is that, in contrast to regular AI, which uses a web search to find the first few articles for a question and uses those as context, in Readwise I know that all the highlights I marked before as important and worth remembering make the answer much more valuable. But with all content, you get out what you feed it. If you read and highlight shallow articles or view things only from one side, your AI answers will be shallow and biased. In the future, Ill likely use this feature every day to get answers for my notes. The good thing is that, in contrast to regular AI, which uses a web search to find the first few articles for a question and uses those as context, in Readwise I know that all the highlights I marked before as important and worth remembering make the answer much more valuable. But with all content, you get out what you feed it. If you read and highlight shallow articles or view things only from one side, your AI answers will be shallow and biased.
With the introduction of the [Model Context Protocol](https://modelcontextprotocol.io/) (MCP), an open standard that facilitates seamless integration between large language models (LLMs) and external data sources and tools, it is now possible to use external tools to interact with my highlights. Last month, Readwise released an [MCP](https://www.npmjs.com/package/@readwise/readwise-mcp), which I used to connect [Raycast](/raycast/) AI with their new [MCP feature](https://manual.raycast.com/model-context-protocol), allowing direct interaction with my highlights. With the introduction of the [Model Context Protocol](https://modelcontextprotocol.io/) (MCP), an open standard that facilitates seamless integration between large language models (LLMs) and external data sources and tools, it is now possible to use external tools to interact with my highlights. Last month, Readwise released an [MCP](https://www.npmjs.com/package/@readwise/readwise-mcp), which I used to connect [Raycast](/raycast/) AI with their new [MCP feature](https://manual.raycast.com/model-context-protocol), allowing direct interaction with my highlights.
<Figure caption="Raycast AI with Readwise MCP"> <BasicImage
<Image src="/assets/images/posts/readwise-raycast-mcp.webp" alt="Raycast AI with Readwise MCP" /> caption="Raycast AI with Readwise MCP"
</Figure> src="/images/posts/readwise-raycast-mcp.webp"
alt="Raycast AI with Readwise MCP"
/>
### Using AI for Research ### Using AI for Research
@@ -384,15 +390,20 @@ There are many people who think AI is bad for writing because it might replace t
I use all kinds of AI to summarize articles for me and to extract the gist of an idea. There is, for example, the built-in AI in my browser [Brave](https://brave.com/), Leo AI, which uses either Claude 3 Haiku by Anthropic, Llama 3.1 8B, or Mixtral. You can also add local AI with [Ollama](https://ollama.com/) and provide your prompts. Another useful browser extension is [Perplexity](https://www.perplexity.ai/). I use all kinds of AI to summarize articles for me and to extract the gist of an idea. There is, for example, the built-in AI in my browser [Brave](https://brave.com/), Leo AI, which uses either Claude 3 Haiku by Anthropic, Llama 3.1 8B, or Mixtral. You can also add local AI with [Ollama](https://ollama.com/) and provide your prompts. Another useful browser extension is [Perplexity](https://www.perplexity.ai/).
<Figure caption="Brave Leo AI" size="wide"> <BasicImage
<Image src="/assets/images/posts/brave-leo-ai.webp" alt="Brave Leo AI" /> caption="Brave Leo AI"
</Figure> src="/images/posts/brave-leo-ai.webp"
alt="Brave Leo AI"
size="wide"
/>
But my main tool are the AI models in [Raycast Pro](https://raycast.com/pro?via=kogakure). I have subscribed to the biggest plan and use it every day. The advantage of Raycast is that you can use all the AI models for one fixed price of either €8 or €16 (for the bigger models) instead of subscribing to a dozen models. However, each model has its advantages and disadvantages, one model will likely not fulfill all your needs. Presently, Raycast supports the following providers with all their models: OpenAI, Anthropic, Perplexity, Meta, Mistral, DeepSeek, Google, and xAI. There are many models to choose from: fast models, big models, models with knowledge about current events, models specialized in code, models that answer unbiasedly, or models that can reason. I wrote a whole article about [Raycast](/raycast/). But my main tool are the AI models in [Raycast Pro](https://raycast.com/pro?via=kogakure). I have subscribed to the biggest plan and use it every day. The advantage of Raycast is that you can use all the AI models for one fixed price of either €8 or €16 (for the bigger models) instead of subscribing to a dozen models. However, each model has its advantages and disadvantages, one model will likely not fulfill all your needs. Presently, Raycast supports the following providers with all their models: OpenAI, Anthropic, Perplexity, Meta, Mistral, DeepSeek, Google, and xAI. There are many models to choose from: fast models, big models, models with knowledge about current events, models specialized in code, models that answer unbiasedly, or models that can reason. I wrote a whole article about [Raycast](/raycast/).
<Figure caption="Raycast AI: Summarize Website"> <BasicImage
<Image src="/assets/images/posts/raycast-ai-summarize.webp" alt="Raycast AI: Summarize Website" /> caption="Raycast AI: Summarize Website"
</Figure> src="/images/posts/raycast-ai-summarize.webp"
alt="Raycast AI: Summarize Website"
/>
Raycast provides a [browser extension](https://www.raycast.com/browser-extension) that allows access to any website and to ask questions about the content or code. AI models allow others to add files, PDFs, URLs, or images. Some can generate images. Raycast provides a [browser extension](https://www.raycast.com/browser-extension) that allows access to any website and to ask questions about the content or code. AI models allow others to add files, PDFs, URLs, or images. Some can generate images.
@@ -419,9 +430,11 @@ This is a scene from school where the protagonist listens to his school teacher.
I highlight the quote and use my most important Raycast AI command, `TL;DR`, to summarize it. I highlight the quote and use my most important Raycast AI command, `TL;DR`, to summarize it.
<Figure caption="Raycast AI: TL;DR"> <BasicImage
<Image src="/assets/images/posts/raycast-ai-tldr.webp" alt="Raycast AI: TL;DR" /> caption="Raycast AI: TL;DR"
</Figure> src="/images/posts/raycast-ai-tldr.webp"
alt="Raycast AI: TL;DR"
/>
My AI Command uses this prompt: My AI Command uses this prompt:

View File

Before

Width:  |  Height:  |  Size: 45 KiB

After

Width:  |  Height:  |  Size: 45 KiB

View File

Before

Width:  |  Height:  |  Size: 69 KiB

After

Width:  |  Height:  |  Size: 69 KiB

View File

Before

Width:  |  Height:  |  Size: 150 KiB

After

Width:  |  Height:  |  Size: 150 KiB

View File

Before

Width:  |  Height:  |  Size: 91 KiB

After

Width:  |  Height:  |  Size: 91 KiB

View File

Before

Width:  |  Height:  |  Size: 81 KiB

After

Width:  |  Height:  |  Size: 81 KiB

View File

Before

Width:  |  Height:  |  Size: 92 KiB

After

Width:  |  Height:  |  Size: 92 KiB

View File

Before

Width:  |  Height:  |  Size: 81 KiB

After

Width:  |  Height:  |  Size: 81 KiB

View File

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 47 KiB

View File

Before

Width:  |  Height:  |  Size: 82 KiB

After

Width:  |  Height:  |  Size: 82 KiB

View File

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 41 KiB

View File

Before

Width:  |  Height:  |  Size: 96 KiB

After

Width:  |  Height:  |  Size: 96 KiB

View File

Before

Width:  |  Height:  |  Size: 94 KiB

After

Width:  |  Height:  |  Size: 94 KiB

View File

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 56 KiB

View File

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 43 KiB

View File

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 56 KiB

View File

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 50 KiB

View File

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 42 KiB

View File

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 62 KiB

View File

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 73 KiB

View File

Before

Width:  |  Height:  |  Size: 119 KiB

After

Width:  |  Height:  |  Size: 119 KiB

View File

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

View File

Before

Width:  |  Height:  |  Size: 105 KiB

After

Width:  |  Height:  |  Size: 105 KiB

View File

Before

Width:  |  Height:  |  Size: 124 KiB

After

Width:  |  Height:  |  Size: 124 KiB

View File

Before

Width:  |  Height:  |  Size: 76 KiB

After

Width:  |  Height:  |  Size: 76 KiB

View File

Before

Width:  |  Height:  |  Size: 145 KiB

After

Width:  |  Height:  |  Size: 145 KiB

View File

Before

Width:  |  Height:  |  Size: 118 KiB

After

Width:  |  Height:  |  Size: 118 KiB

View File

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 79 KiB

View File

Before

Width:  |  Height:  |  Size: 150 KiB

After

Width:  |  Height:  |  Size: 150 KiB

View File

Before

Width:  |  Height:  |  Size: 70 KiB

After

Width:  |  Height:  |  Size: 70 KiB

View File

Before

Width:  |  Height:  |  Size: 232 KiB

After

Width:  |  Height:  |  Size: 232 KiB

View File

Before

Width:  |  Height:  |  Size: 146 KiB

After

Width:  |  Height:  |  Size: 146 KiB

View File

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 37 KiB

View File

Before

Width:  |  Height:  |  Size: 449 KiB

After

Width:  |  Height:  |  Size: 449 KiB

View File

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 65 KiB

View File

Before

Width:  |  Height:  |  Size: 91 KiB

After

Width:  |  Height:  |  Size: 91 KiB

View File

Before

Width:  |  Height:  |  Size: 263 KiB

After

Width:  |  Height:  |  Size: 263 KiB

View File

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

View File

Before

Width:  |  Height:  |  Size: 102 KiB

After

Width:  |  Height:  |  Size: 102 KiB

View File

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 73 KiB

View File

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

View File

Before

Width:  |  Height:  |  Size: 96 KiB

After

Width:  |  Height:  |  Size: 96 KiB

View File

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

View File

Before

Width:  |  Height:  |  Size: 55 KiB

After

Width:  |  Height:  |  Size: 55 KiB

View File

Before

Width:  |  Height:  |  Size: 84 KiB

After

Width:  |  Height:  |  Size: 84 KiB

View File

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 21 KiB

View File

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 47 KiB

View File

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 79 KiB

View File

Before

Width:  |  Height:  |  Size: 174 KiB

After

Width:  |  Height:  |  Size: 174 KiB

View File

Before

Width:  |  Height:  |  Size: 7.9 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

View File

Before

Width:  |  Height:  |  Size: 86 KiB

After

Width:  |  Height:  |  Size: 86 KiB

View File

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 75 KiB

View File

Before

Width:  |  Height:  |  Size: 84 KiB

After

Width:  |  Height:  |  Size: 84 KiB

View File

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

View File

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

View File

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 48 KiB

View File

Before

Width:  |  Height:  |  Size: 83 KiB

After

Width:  |  Height:  |  Size: 83 KiB

View File

Before

Width:  |  Height:  |  Size: 209 KiB

After

Width:  |  Height:  |  Size: 209 KiB

View File

Before

Width:  |  Height:  |  Size: 173 KiB

After

Width:  |  Height:  |  Size: 173 KiB

View File

Before

Width:  |  Height:  |  Size: 176 KiB

After

Width:  |  Height:  |  Size: 176 KiB

View File

Before

Width:  |  Height:  |  Size: 90 KiB

After

Width:  |  Height:  |  Size: 90 KiB

View File

Before

Width:  |  Height:  |  Size: 118 KiB

After

Width:  |  Height:  |  Size: 118 KiB

View File

Before

Width:  |  Height:  |  Size: 122 KiB

After

Width:  |  Height:  |  Size: 122 KiB

View File

Before

Width:  |  Height:  |  Size: 104 KiB

After

Width:  |  Height:  |  Size: 104 KiB

View File

Before

Width:  |  Height:  |  Size: 94 KiB

After

Width:  |  Height:  |  Size: 94 KiB

View File

Before

Width:  |  Height:  |  Size: 126 KiB

After

Width:  |  Height:  |  Size: 126 KiB

View File

Before

Width:  |  Height:  |  Size: 104 KiB

After

Width:  |  Height:  |  Size: 104 KiB

View File

Before

Width:  |  Height:  |  Size: 194 KiB

After

Width:  |  Height:  |  Size: 194 KiB

View File

Before

Width:  |  Height:  |  Size: 156 KiB

After

Width:  |  Height:  |  Size: 156 KiB

View File

Before

Width:  |  Height:  |  Size: 138 KiB

After

Width:  |  Height:  |  Size: 138 KiB

View File

Before

Width:  |  Height:  |  Size: 130 KiB

After

Width:  |  Height:  |  Size: 130 KiB

View File

Before

Width:  |  Height:  |  Size: 136 KiB

After

Width:  |  Height:  |  Size: 136 KiB

View File

Before

Width:  |  Height:  |  Size: 171 KiB

After

Width:  |  Height:  |  Size: 171 KiB

View File

Before

Width:  |  Height:  |  Size: 127 KiB

After

Width:  |  Height:  |  Size: 127 KiB

Some files were not shown because too many files have changed in this diff Show More