Skip to content

Ciprian Mandache

Mostly writing code that does stuff…

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

Coding

chatz: A Self-Hosted AI Chat Where the Assistant Draws the Fucking Dashboard
AI / Containers / Golang

chatz: A Self-Hosted AI Chat Where the Assistant Draws the Fucking Dashboard

Every self-hosted chat UI hands you the same thing: a wall of markdown. You ask the model for last quarter’s numbers, it writes you a table in monospace, and if …

pr0xteus: Disposable VPN Exits for Apps You Wouldn’t Trust With Your Password
Containers / Golang

pr0xteus: Disposable VPN Exits for Apps You Wouldn’t Trust With Your Password

You’ve got some app that needs to leave the building through a VPN. A scraper, a browser bot, some agent poking at sites that would rather it came from somewhere …

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 …

rankrat: Ram One Rat Up Every SEO Console Cockblocking Your Rankings
AI / Containers / Python

rankrat: Ram One Rat Up Every SEO Console Cockblocking Your Rankings

A page falls out of Google’s index. Now you get to find out why. Open Search Console to confirm it’s actually gone. GA4, to see if the traffic died or …

codexbox: Four Environment Variables and a mkdir Standing Between You and OpenAI’s CLI
AI Agents / Bash / Containers

codexbox: Four Environment Variables and a mkdir Standing Between You and OpenAI’s CLI

I already wrote the “why I ripped the plumbing out of my own repos and built a base image” rant in the aicodebox post, so I’m not doing it again …

flickies: A Video Toolbox That Happens to Do Lipsync
AI / Containers / Python

flickies: A Video Toolbox That Happens to Do Lipsync

I was neck-deep in an avatar pipeline and needed two unglamorous things at once: a lipsync pass, and a fistful of ffmpeg operations around it — trim the source, mux …

ibkr-httpapi: Six Asset Classes, No Windows VM, All Real Fucking Money
Containers / Python / Trading

ibkr-httpapi: Six Asset Classes, No Windows VM, All Real Fucking Money

I already burned a month of my life building mt5-httpapi — a full Windows VM booted under QEMU/KVM inside Docker, just so I could talk to a broker that only …

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