/Articles>

Longer posts containing deep dives into more complex topics.

← Previous page Next page →

Article

Pair Programming in the Age of AI

pair-programming artificial-intelligence productivity

Pair programming is the work mode in development in which two people collaborate on the same task in split, but frequently reversed, roles (one thinking high level, the other implementing the changes). Compared to solo programming, pair programming may have multiple positive effects, for example, on code quality. Utilizing pairing correctly, therefore, is an important—but non-trivial—aspect of coordination within highly effective development teams. With the emergence of capable generative AI coding assistants in the last few years, pairing between human programmer and an AI coding assistant (sometimes called pAIr programming) has also developed into an established pattern. Since I personally enjoy traditional human/human pair programming but also use and see the benefits of AI coding assistants, I was curious about what the literature has to say on the pros and cons of both work modes. Here is what I found out.

Posted on Tuesday, March the 25th 2025
12 min read

Article

[dev.to] Extending AstroJS Markdown Processing With Remark and Rehype Plugins

astrojs markdown rehype remark plugin

I’m currently migrating my website from Jekyll to AstroJS and the experience has been really positive so far.

AstroJS, in particular, offers quite a lot of flexibility for writing content in Markdown format. For example, by supporting JSX components (via the MDX extension) and, for more general purposes, by supporting Remark and Rehype plugins.

This post gives a short introduction on how to extend Astro’s Markdown processing with Remark and Rehype plugins. You will also find a practical example of how to add Mermaid diagram processing with a Rehype plugin.

Posted on August 17th, 2024
0 min read

Article

[Dev.to] How to define and work with a Rust-like result type in NuShell

nushell result-type pattern-matching

NuShell is a very modern shell and shell language that draws some heavy inspiration from Rust and that I really enjoy writing small programs and glue code in (especially for CI/CD pipelines). In contrast to Rust, it doesn’t have a Result type to model errors in code. Thanks to language features like pattern matching, however, we may easily add one.

Posted on June 21st, 2024
0 min read

Article

[dev.to] Dev Containers on Kubernetes with DevSpace

devcontainer devspace kubernetes

Containerization is an excellent way to package, distribute, and version developer environments. There are quite a lot of tools that simplify ramping up developer environments using containers, like Dev Container, DevFile, and GitPod. DevSpace, the topic of this post, also helps setting up containerized developer environments, but it has the advantage of deploying to Kubernetes, providing two-way sync between host and remote container, as well as being able to inject an SSH server for remote access.

Posted on Monday, May the 06, 2024
0 min read

Article

Minimizing the size of Docker files containing Python executables

python docker multi-stage-builds container minimization
Posted on Friday, April the 12th 2024
2 min read

Article

Alacritty — a fast, minimal, and portable terminal emulator

alacritty terminal rust

In my neverending quest for the perfect development set-up, I’ve recently tried a couple of improvements for my hitherto standard command line tooling (ZSH + iTerm2). While ZSH has—for me—stood the test of time (and I don’t feel the need to try out another shell yet), there is, in my opinion, always room for improvement on the terminal emulator side. So, here’s a quick guide on how to use my new weapon of choice, Alacritty.

Posted on Tuesday, December the 27, 2022
7 min read

Article

Progressive web application installation with Brave

Brave is a free, open-source, Chromium-based web browser that has a strong focus on privacy. Brave also has the option to run progressive web apps (PWA) as standalone applications. This may be useful if you prefer to run some apps in the browser, but still want to have the benefit of launching and switching to the app like a fully native app. Some websites unfortunately don’t declare themselves properly as progressive web applications or simply are not PWA-enabled yet. Brave has the nice feature that in spite of this, you can install websites like these as a PWA. The workflow to do this is a bit hidden in plain sight, however, so here’s a quick tutorial on how to do it.

Posted on Sunday, August the 21, 2022
4 min read

Article

[dev.to] Detecting Kubernetes API Deprecations with pluto

kubernetes api deprecation pluto dev-to

The Kubernetes API is changing all the time. With these changes come deprecations and eventual removals of parts of the API. To be able to keep an up-to-date Kubernetes cluster version, we have to identify deprecated APIs and update them. This may become tedious in larger clusters with hundreds of resources but tools like pluto can help.

Posted on Wednesday, July the 27th, 2022
0 min read

Article

[Weeklyjs.io] Types as Comments for Plain JavaScript

javascript types-as-comments weekly-js

Today we’re looking into the potential future of JavaScript by reading up on the types as comments proposal that seeks to introduce type information as part of the core JavaScript language.

Posted on Friday, June the 24, 2022
0 min read

Article

Excluding false positives with Prowler

prowler infrastructure security-scanning false-positive

Prowler is a security auditing tool for AWS that helps us catch security defects such as credentials stored in plain text or S3 buckets that are publically accessible by accident. While Prowler is generally a very useful technology it sometimes also reports false positives. Thankfully, Prowler also comes with a whitelisting functionality that allows us to ignore certain resources.

Posted on Wednesday, June the 22nd, 2022
6 min read
← Previous page Next page →
friedrichkurz.me

© 2025 Friedrich Kurz

Privacy Policy