Skip to content

Ciprian Mandache

Mostly writing code that does stuff…

Menu
  • Home
  • Coding
    • Golang
    • Python
    • PHP
    • Bash
  • AI
    • Assistants
    • Agents
    • Tooling
    • Opinion
  • Containers
  • Embedded
  • Radio
  • Trading
  • Art
    • Music
    • Painting
    • Poetry
  • Links

package

ctxscope: Stop Threading request_id Through Every Function Signature
Golang

ctxscope: Stop Threading request_id Through Every Function Signature

Here’s the code everybody writes. A request comes in, you generate an id, and something a few calls down needs to log it: func handleOrder(ctx context.Context, requestID string, o Order) …

slogging: Delete Twenty Lines of slog Boilerplate With One Blank Import
Golang

slogging: Delete Twenty Lines of slog Boilerplate With One Blank Import

Go 1.21 shipped log/slog and it’s good. What it doesn’t ship is any way to configure it, so every service starts with a version of this: var level slog.Level switch …

essessey: Stream a Turn Anywhere Without Rewriting It
AI Tooling / Golang

essessey: Stream a Turn Anywhere Without Rewriting It

The first version streamed over SSE. Then something needed the same turn over NATS, and I found out I’d built the framing into the wrong layer. event: / data: / …

elelem: Say It Out Loud, You’ll Get It
AI Tooling / Golang

elelem: Say It Out Loud, You’ll Get It

The moment that decides what kind of library you’re writing is the one where a human has to approve a tool call. Everything is lovely right up until then. The …

slog-configurator: Same Zero-Config Logging, Now on the Standard Library
Golang

slog-configurator: Same Zero-Config Logging, Now on the Standard Library

Update, August 2026: this package moved. slog-configurator is now github.com/psyb0t/slogging, where the configurator lives at slogconf/ alongside two handlers it always belonged next to — the searchable in-memory ring at …

goenv: Three Functions, One Env Var, Zero Fucks Given
Golang

goenv: Three Functions, One Env Var, Zero Fucks Given

Every service I write needs exactly one piece of information before it does anything else: is this thing running in prod, or is some poor bastard (me, at 2am, half …

servicepack: The Go Framework That Actually Understands How Real Development Works
Golang

servicepack: The Go Framework That Actually Understands How Real Development Works

Look, I’ve built a lot of shit in Go. Worked on microservices that were basically just glorified HTTP handlers talking to each other across Docker networks. Debugged race conditions at …

gorpitx: Twelve Ways to Turn a Raspberry Pi Into a Broadcast Tower (and a Legal Problem)
Embedded / Golang / Radio

gorpitx: Twelve Ways to Turn a Raspberry Pi Into a Broadcast Tower (and a Legal Problem)

When I was building PIrateRF, I had two options. Option one: shell out to a pile of C binaries from rpitx every time I wanted to key up a transmitter, …

Commander: Bcuz Go’s os/exec Made Me Want to Shart on My Laptop’s Screen
Golang

Commander: Bcuz Go’s os/exec Made Me Want to Shart on My Laptop’s Screen

Let’s be fucking honest here – if you’ve ever tried to do anything serious with Go’s os/exec package, you know it’s about as user-friendly as a cactus suppository. Want to stream output …

ctxerrors: Because Go’s Error Handling Doesn’t Have to Be Complete Shit
Golang

ctxerrors: Because Go’s Error Handling Doesn’t Have to Be Complete Shit

Look, I’m gonna be straight with you. Go’s error handling is fucking verbose, and debugging without context is like trying to find your keys in a pitch-black room while drunk. …

Posts navigation

Further back

Latest Music

devourer_of_time_and_space
a1800269911_16 (1)
space_rocker
the_funeral_march
HardAssFuX_cover-800×800
Music release cover
Music release cover
Music release cover
Music release cover
Notes