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

library

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 …

aichteeteapee: A Go HTTP Library Named By Someone Who Thinks Spelling Things Out Is Funny
Golang

aichteeteapee: A Go HTTP Library Named By Someone Who Thinks Spelling Things Out Is Funny

Say it out loud: aichteeteapee. Go on. Sound it out. Aitch-tee-tee-pee. Yeah. That’s HTTP. I named my Go HTTP library by spelling “HTTP” phonetically and published it with a straight …

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 …

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, …

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. …

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