A Java Geek weekly 133

Pattern-matching across different languages. zizmor. What Is the Life OS?. What is Project N.O.M.A.D.?. Claude Code Worktrees. Friends Don’t Let Friends Use Ollama. How to Run Local LLMs with Claude Code. Meet tailscale-rs, our new Rust library preview. GitHub Stacked PRs. SpotBugs. Kotlin protip: indexed access operator overloading with multiple indices. Migrating from DigitalOcean to Hetzner: From $1,432 to $233/month With Zero Downtime.

link:{ site.baseurl }pattern-matching-different-languages[Pattern-matching across different languages^]

Pattern matching is a major feature in software development. While pattern matching applies in several locations, its current usage is limited to switch case blocks. I want to compare the power of pattern matching across a couple of programming languages I’m familiar with in this post.

zizmor

zizmor is a static analysis tool for GitHub Actions. It can find and fix many common security issues in typical GitHub Actions CI/CD setups.

What Is the Life OS?

Do LLMs finally enable a true second brain?

What is Project N.O.M.A.D.?

Node for Offline Media, Archives, and Data — a free, open source offline server you install on any computer. Download the content you want, and it works without internet — forever. Similar products cost hundreds of dollars. Project NOMAD is free.

Claude Code Worktrees
Problem

You’re running a Claude Code session on a feature branch and need to fix a production bug. You either stash your work, lose context, or open a second terminal and fight merge conflicts when both sessions edit the same files.

Quick Win

Start a new Claude Code session in its own worktree

Friends Don’t Let Friends Use Ollama

I didn’t know about the whole story. Eye opening.

How to Run Local LLMs with Claude Code

This step-by-step guide shows you how to connect open LLMs and APIs to Claude Code entirely locally, complete with screenshots. Run using any open model like Qwen3.5, DeepSeek and Gemma.

I used it and it’s very useful!

Meet tailscale-rs, our new Rust library preview

Tailscale is a Go shop, but in order to provide a C-like system library, they went to Rust instead. It says a lot.

GitHub Stacked PRs

A pull request stack consists of two or more pull requests in the same repository where:

  • The first (bottom) pull request targets the main branch (e.g., main).
  • Each subsequent pull request targets the branch of the PR below it.
   ┌── feat/frontend     → PR #3 (base: feat/api-endpoints)  ← top
  ┌── feat/api-endpoints → PR #2 (base: feat/auth-layer)
 ┌── feat/auth-layer     → PR #1 (base: main)                ← bottom
main (trunk)
SpotBugs

Find bugs in Java Programs

I used FindBugs quite a lot in the past, when there wasn’t a lot of testing utilities. It’s unmaintained, but FindBugs continues the work. I need to test it and assess how useful it is.

Kotlin protip: indexed access operator overloading with multiple indices

Using a multi-index signature makes the grid’s API feel more natural: grid[x, y] reads like "the cell at (x, y)",

Migrating from DigitalOcean to Hetzner: From $1,432 to $233/month With Zero Downtime

The company is from Turkey, so it’s not about digital sovereignty, just about saving money.