Posts

The Developer Who Outsmarted Data Silos: A Practical Story of Unifying Messy Systems

Image
Maya wasn't trying to become a hero. She just wanted the weekly "Customer Health" report to stop lying. Every Monday, Sales said churn was down. Support said tickets were up. Finance said upgrades were flat. Product swore activations were fine-except retention was "mysteriously" dipping. The real culprit wasn't people. It was architecture. In Maya's company, data lived in islands: Salesforce for CRM, Stripe for billing, Zendesk for support, Mixpanel for product events, plus a "temporary" Postgres database that had been "temporary" for three years. Each team had its own definitions, its own dashboards, and its own truth. If you wanted to answer a simple question like, "Are customers who opened three support tickets in month one more likely to churn?" you needed four logins, three exports, and a prayer. Maya, a backend developer with a fondness for clean interfaces and stubborn problems, decided to outsmart the silos. The Silo...

How I Built a Visualization Strategy That Beat Our Dashboards (and Actually Drove Decisions)

Image
Dashboards were supposed to make us "data-driven." Instead, ours became a graveyard of charts: everyone asked for new tiles, nobody removed old ones, and the only consistent behavior was people screenshotting a graph to argue in Slack. I didn't fix this by building a better dashboard. I built a visualization strategy-one that treated charts as decision tools, not decorations. The result: fewer charts, more clarity, and a measurable uptick in decisions made with confidence (and fewer "can we pull this number again?" loops). The problem with dashboards: they answer everything except "so what?" Dashboards are great at displaying metrics. They're terrible at creating shared understanding. Here's what I kept seeing: Misaligned audiences: Executives wanted "Are we on track?" Managers wanted "Where do I intervene?" Analysts wanted "What's causing this?" One dashboard tried to serve all three and satisfied none. Metr...

The Night My Local LLM Became a Language Learner (and Helped Me Learn Too)

Image
I didn't plan to turn my local LLM into a language student. I just wanted to practice Spanish without the pressure of a live tutor-or the weird feeling of shouting into a phone app at midnight. But after a couple of clunky chats, I realized something: my model wasn't just answering me. It was adapting to my mistakes, mirroring my phrasing, and nudging me forward like a patient study buddy. The Setup: Teaching the Model to "Study" Instead of "Perform" My first attempts were the usual: "Chat with me in Spanish." The model complied... and then steamrolled me with perfect grammar, long sentences, and vocabulary I'd never use. It was like asking a native speaker to "go easy" and watching them forget what "easy" means. So I changed the goal: I didn't want a fluent speaker. I wanted a language learner partner. I wrote a short system-style instruction that framed the conversation as structured practice: "Act as my Spanish ...

Inside the Algorithm: How Offline LLMs Supercharge Personal Projects (Without the Cloud)

Image
Offline LLMs -large language models that run on your own computer-feel like a cheat code for personal projects. You get the brainstorming, drafting, and coding help of an AI assistant, but with your files staying local, your workflow staying fast even without Wi‑Fi, and your costs staying predictable after setup. This post breaks down how offline LLMs work in practice, why they're uniquely useful for solo builders, and a few concrete project patterns where they shine. What "Offline LLM" Actually Means (and Why It Matters) An offline LLM is a model you run locally on your laptop/desktop (or a small home server) using tools like Ollama, LM Studio, llama.cpp, or similar. The important detail isn't just "no internet"-it's that your prompts, documents, and outputs don't have to leave your machine. That changes the game for personal projects in three very practical ways: 1) Privacy by default If your project involves personal journal entries, client note...

The Day My Analytics Automation Became My Personal Assistant (and Saved My Week)

Image
I didn't set out to build a "personal assistant." I just wanted my dashboards to stop lying to me on Mondays. For months, my routine was the same: open GA4, pull paid spend from ads platforms, export a CSV from Stripe, paste everything into a spreadsheet, then realize I'd missed a timezone setting somewhere and now nothing matched. The worst part wasn't the work-it was the mental overhead. I'd lose an hour just remembering what to check. Then one day, after yet another "Why is revenue down?" Slack message, I wired up a small automation: scheduled pulls from key sources, a few sanity checks, and a daily digest. Within a week it stopped feeling like automation and started feeling like someone on my team quietly handling the basics. What I Automated (and Why It Felt Like an Assistant) My "assistant" started with three simple jobs: collect, validate, and brief. 1) Collect : Every morning at 7:30am, it grabs yesterday's numbers-sessions and...

The Manifesto: Why Every Developer Needs a Personal LLM (and How to Build One)

Image
Developers already know the feeling: you're in flow, then you hit a wall-an obscure error, a tangled legacy module, a "how did we do this last time?" moment. Public AI tools help, but they're generic by default. A personal LLM is different: it's your always-on, private teammate that understands your codebase, your conventions, your stack, and your preferences. It's not about replacing thinking; it's about removing friction so you can spend your brainpower on the hard parts. The case for a personal LLM (aka: stop context-switching) A personal LLM is a local or controlled model you can tune with your own context: repos, docs, tickets, ADRs, runbooks, and even your preferred coding style. The benefit isn't "better answers," it's fewer interruptions. Practical examples: Debug faster with repo-aware reasoning: Instead of asking "Why does this error happen in React?" you ask "Why does `useInvoices()` throw on empty accounts in ou...

The Contrarian Take: Why AI Agents Shouldn't Replace Human Creativity

Image
The hype cycle says AI agents will "do the creative work"-write the posts, design the ads, storyboard the videos, even invent the brand voice. But here's the contrarian view: AI agents are incredible assistants, and terrible replacements. Not because they're "not smart," but because creativity isn't just output. It's taste, risk, context, and accountability. AI Agents Optimize What Already Exists (Creativity Breaks It) AI agents are amazing at pattern completion. Give them examples of landing pages, and they'll produce a competent new landing page. Give them a dozen brand taglines, and they'll generate fifty more that sound... like taglines. But human creativity often starts where the pattern stops. The best work is frequently the thing that initially feels "wrong": the odd camera angle, the uncomfortably honest line, the logo that breaks the grid, the ad that refuses to sound like an ad. Practical example: you ask an agent to writ...