← all paths empty Mac → observable cluster

A local platform from zero

Set up language runtimes with version managers, run real Kubernetes clusters locally with Minikube, attach the IDE debugger to a JVM inside a pod, and wire logs, metrics, and traces across services with one correlation ID.

4 steps · 41 min total
  1. 01
    note Tooling

    Dev environment from scratch: managing Java, Python, and Node versions on Mac

    SDKMAN, pyenv, and nvm manage Java, Python, and Node versions on a Mac, with per-project pin files that switch the runtime automatically on cd.

    May 01, 2026 · 8 min read
  2. 02
    note Infrastructure

    Working with Kubernetes locally: Minikube, multiple clusters, and k9s

    Iterating against a remote Kubernetes cluster means a build-push-deploy cycle on every change. Minikube gives us real clusters on our machine, several of them, where the full deployment path can be tested without consequences.

    May 03, 2026 · 9 min read
  3. 03
    note Infrastructure

    Remote debugging Java on Kubernetes: attaching the IDE to the JVM inside the pod

    When a bug only appears inside the cluster, adding log statements and redeploying quickly turns into a slow feedback loop. Remote debugging lets you attach your IDE directly to the JVM running inside the pod and inspect the real execution path.

    May 09, 2026 · 11 min read
  4. 04
    essay Infrastructure

    Observability in a hybrid microservices stack: Spring Boot, FastAPI, and LangChain on Kubernetes

    In distributed systems, a single request can cross multiple services and runtimes. When something breaks, we need to easily reconstruct the flow of that request through logs, metrics, and traces, instead of manually navigating unrelated application logs with no correlation.

    May 05, 2026 · 13 min read
  5. path complete