Skip to Content

Hi, my name is

Vincent.

Welcome to my corner of the internet where i figure things out.

Dad of two boys sharing my adventures in building stuff, breaking things, and figuring out why things don't work while trying not to mess up parenting too badly.

Recent Articles

view all articles
  • Folder

    I Built a Voltron to Automate YouTube. Then I Stopped.

    I Built a Voltron to Automate YouTube. Then I Stopped.

    Nine repos. Zero videos. I'm not sure whether to be proud or embarrassed, so I'm writing about it instead.


    What the Hell Is an M-Shaped Personality

    It's a pattern. Sound familiar?

    1. Dive deep into a new obsession
    2. Build sophisticated systems around it
    3. Abandon it the moment the novelty fades
    4. Repeat with something completely different

    The fun is solving. Operating is boring.

    I am textbook M-shaped. And YouTube was my latest victim.

    The Voltron I Built

    When I decided to "automate my YouTube channel," I didn't just automate. I went full Software Architect from Hell.

    Nine specialized repositories. Each a limb of the beast. Each with its own README, its own venv, its own little ecosystem of dependencies. An orchestrator to coordinate them all. A whisk module for AI art generation. An elevenlabs wrapper for multi-voice TTS with word-level timestamps. A wavespeed repo for text-to-video. A pexels fetcher. A sheet-to-pexels connector because apparently Google Sheets needed to talk to stock footage. Two shotstack repos for video assembly with Cloudflare R2 storage and 9:16 format enforcement.

    Together, they formed a beautiful, terrible Voltron. A chef's knife to cut butter.

    The Pipeline That Never Ran

    Here's how it was supposed to work:

    1. Read manifest JSON
    2. Generate audio with word-level timestamps
    3. Align timestamps to actual audio duration
       (yes, I wrote a timestamp alignment strategy)
    4. Validate images — abort if any scene is missing
       (very responsible)
    5. Upload assets to Cloudflare R2
    6. Submit render job, watch, download

    The Orchestrator had "atomic operations" and "early abort" features. It was beautiful. It was thorough. It never ran end-to-end on a real video.

    The Procrastination Video

    manifest_procrastination_v1.json has been sitting in my whisk folder since February 26th.

    Six scenes of minimalist stickman art. Word-perfect narration. And this line:

    "You're not being lazy; you're just trying to feel competent while you're secretly drowning."

    A video about why we avoid doing the work. That I avoided doing.

    The meta is painful.

    The Version Tragedy

    My M-shaped personality left fingerprints everywhere:

    • the-quiet-architecture-of-the-mind-v1.json
    • the-quiet-architecture-of-the-mind-v2.json
    • the-quiet-architecture-of-the-mind-v3.json
    • the-quiet-architecture-of-the-mind-v4.json

    Four versions of a video that never existed. I was iterating on the architecture of a video about the architecture of the mind.

    I don't know whether to laugh or delete everything.

    The Dopamine Hit

    Figuring out the timestamp alignment at 2am. First successful render. Orchestrator running end-to-end.

    Each fix released something into my bloodstream. I wasn't building a channel. I was chasing hits.

    200 hours later, I ran out of problems to solve.

    And the channel was never launched.

    The Repo Graveyard

    youtube-automation-orchestrator        ⚰️
    youtube-automation-script-preparation  ⚰️
    youtube-automation-whisk               ⚰️
    youtube-automation-shotstack-node      ⚰️
    youtube-automation-shotstack           ⚰️
    youtube-automation-elevenlabs          ⚰️
    youtube-automation-wavespeed           ⚰️
    youtube-automation-pexels              ⚰️
    youtube-automation-sheet_to_pexels     ⚰️

    Rest in peace my beautiful code. You guys worked perfectly. I was the one who screwed up.

  • Folder

    24 Hours to Launch: Why I'm Still Not Rich

    There’s a guy named Jaxon Poulton who claims he copied a $10M app in 24 hours using nothing but Claude and caffeine. It sounds like absolute bullshit, the kind of hustle-porn nonsense that keeps people awake at 3 AM buying courses. But then you look at the code, and it’s actually kind of terrifying.

    I watched this video with a pit in my stomach. My "Projects" folder is a graveyard of half-built ideas. I have dozens of unfinished experiments. Jaxon shipped in 24 hours what I couldn’t ship in two years.

    The Zero-Coding Delusion

    The video shows Jaxon building a niche peptide visualization app. The guy isn't an engineer; he’s a hustler with a laptop. He types prompts into an LLM, and it spits out functional HTML, CSS, and JavaScript. I used to spend weeks arguing with backend engineers about database schemas just to move a button two inches to the left. This dude just asked the AI to 'fix the broken shit' and it worked. The barrier to entry isn't just lowered; it's basically gone. You don't need a CTO anymore. You just need a credit card and an OpenAI subscription.

    When the AI Hallucinates

    Here is where I would have absolutely screwed this up. The AI hallucinates. It deletes important lines of code. It writes Python when you explicitly asked for JavaScript. In the video, Jaxon hits these walls, but he treats it like a puzzle to be solved. I would have panicked. I would have assumed I was too dumb to pull this off and opened up Reddit to complain about 'AI hype'.

    I went to bed feeling defeated. But the next day, sometime between the coffee machine and the shower, the frame flipped. The friction has shifted. It’s no longer about syntax or staring at error messages while crying. The new friction is knowing what to build, not how to build it.

    Shipping Ugly Things

    The real lesson isn’t the AI tool itself; it’s the speed and low cost of entry for trying out new stuff. Jaxon didn’t build a masterpiece. He pivoted from a complex iOS app to a simple web app because Apple takes too long to approve stuff. He plugged in Stripe and shipped the damn thing. It got shadowbanned because he was talking about peptides on TikTok, and he made like twelve dollars in the first week. But the product existed. That is the win.

    You’re supposed to build, measure, learn. Most of us just build, overthink, and then delete the project. Or in my case, I let them rot in my "Projects" folder—a massive graveyard of half-finished stuff. Notice it’s "Projects" with an "s". That means lots of them.

    Bottom Line

    We don't need to be coders to launch a software business anymore; we just need to be stubborn enough to ship something ugly. Use the AI tools to build fast, break fast, and fix it later.

    And yeah, I know the arguments. AI-generated code is ugly. Technical debt will kill us. Companies that fired their devs are now scrambling to hire seniors back to fix the mess. I get it—I've cleaned up those disasters. But here's the uncomfortable truth: 100% of a product that never launches is still 0%.

    But here's the uncomfortable truth: 100% of a product that never launches is still 0%.

    You can have a perfect product that nobody sees, or a messy product that actual humans use and tell you how to fix.

    Ship the ugly thing. Let the market break it. Then fix it.

    I'm still not rich because I kept choosing perfect over shipped.

  • Folder

    The Ricing Manifesto

    One Does Not Simply Use A Default Setting

    Let me tell you about ricing.

    It comes from the car world - you know those Honda Civics with massive spoilers that look like they could fly, and fake exhaust tips bigger than the actual engine? That's ricing. Race-Inspired-Cosmetic-Enhancement. Basically, making something look fast without actually making it fast.

    Spoiler alert: I became that guy, but for computers. Instead of spoilers and neon lights, I had dotfiles and terminal themes. Same energy, same stupidity.

    Declaration of Ricing

    I've been that guy my whole life. The guy who can't leave "default settings" alone. I don't know why. Please ask my mom.

    My first computer was an Intel Pentium 166MHz beast that I triple-booted with Windows 95, Windows NT 4, and some version of Red Hat that I can't even remember. Why? Because I could. I read dictionary-sized books about the Windows 2000 registry for fun. I even used beta Windows 7 as my daily driver while working as a technical manager, without telling my CTO. What could possibly go wrong, right?

    So when I got my first Mac - OSX Mountain Lion, back when they still called it OSX - I thought, "This is it. The perfect system that just works." I was done. No more tweaking. I was ready to join the normal people who just use their computers.

    Article I: The Innocent Beginning

    My Mac journey started like a love story. I upgraded my non-Retina 13" MacBook Pro with 16GB RAM, swapped the SATA drive for an SSD, and even replaced the CD drive with a bracket to use my old hard disk as secondary storage. Those were the days - if you had the money, you could make anything better.

    Then I discovered Alfred, and oh boy, it was love at first launch. I discovered Time Machine and literally sat there staring at my screen like it was performing magic tricks. "I can see my file structure from last week? WHAT KIND OF SORCERY IS THIS?" I called my wife over to show her. She nodded politely, like you do when your husband is having way too much fun with a backup feature.

    I had this long-ass markdown document - my setup bible - with detailed installation instructions that I treated like sacred text. Every quarter, like some kind of digital spring cleaning ritual, I'd update it. I was organized. I was in control. I was happy.

    Article II: The Temptation

    Then came Bartender. Great app, but something shifted in my brain. I found myself thinking, "This app costs money. What if there's a free version?" That's when I started noticing the open source alternatives. It started innocently - just checking GitHub repos, reading through issues, seeing what else was out there.

    But I was still in my comfort zone. You know, normal user stuff: install apps, change some settings, done. Occasionally, during macOS updates, I'd open Terminal (the scary black box of doom) and run some command I found on Stack Overflow to make the dock autohide faster. That was my extent of terminal usage. I was practically a wizard.

    I was paying for all my apps religiously. My philosophy: if nobody pays, developers can't eat, and then we get no more apps. Simple economics, right? It's like paying for your teh tarik at the mamak - if everyone just sat there using the WiFi without buying anything, the mamak would close down. It's just basic logic.

    Article III: The Point of No Return

    Then I discovered Aerospace. And Sketchybar. And tmux. And Neovim. And suddenly I wasn't just installing apps anymore - I was having an affair with my terminal.

    This is where things got dangerous. I found myself reading documentation at 2 AM like it was the most thrilling novel ever written. Window management protocols! Keyboard-driven navigation! Tiling window managers on macOS! Who knew this was even possible?

    I discovered that my Mac didn't have to work the way Apple intended. I could make windows snap into grids. I could switch applications without touching my mouse. I could have multiple terminals running in one window, each with its own purpose.

    The "oh shit" moment came at 3 AM on a Tuesday. I had just configured my first tmux session and realized - I couldn't go back. I'd seen behind the curtain. My brain had been permanently rewired to see every interface as customizable, every workflow as optimizable. It was like taking the red pill in The Matrix, except instead of fighting Agent Smith, I was fighting the urge to configure my Aerospace config file for the fifth time that night.

    Article IV: The Descent into Madness

    This is where things got really fucked up.

    What started as "making my Mac look nice" became a full-time job. I had a markdown file just to keep track of all my keyboard shortcuts across different apps. My terminal had more colors than a rainbow factory on acid. My dotfiles repository became my new religion - I'd commit changes with messages like "fixed padding" or "slightly adjusted opacity" like I had just cured cancer.

    The disaster wasn't just one moment. It was the slow accumulation of wasted time. I'd open my laptop to write some code and three hours later find myself tweaking the animation speed of my window manager. "Just a small adjustment," I'd tell myself.

    But the real low point? I caught myself in Neovim at 2 AM, meticulously documenting my Aerospace keybindings in a markdown file. I wasn't just using the tool - I was designing the system, "workspace layer" vs "window layer." Three-key combinations for window movement. I spent an hour deciding whether 'cmd-ctrl-shift-minus' should resize windows by 100 pixels or 150 pixels.

    It was like being a chef who spends all day sharpening his knives but never actually cooks anything. Sure, my knives were sharp enough to split atoms, but I was still eating instant noodles for dinner because I'd spent all day sharpening.

    You want to know how bad it got? Let me show you the before and after:

    Before ricing: "To open Arc, I clicked Arc. To switch to Arc from Chrome, I clicked Arc."

    After ricing: "To open Arc: Cmd-2 to switch to workspace 2, then Cmd-Ctrl-Enter to fullscreen it. To move Arc to workspace 3: Cmd-Ctrl-3. To resize it: Cmd-Ctrl-Shift-Equal. To focus the window next to it: Cmd-Ctrl-Right. All this to check my email."

    Article V: The Reality Intervention

    I have to admit it: I'm addicted to customization. I can't use a vanilla setup anymore without getting physical twitches. I see a simple interface and my brain immediately starts cataloging all the ways I could "improve" it - even if it works perfectly fine.

    The other day, I caught myself going through individual Reddit posts in r/unixporn, the home to UNIX customization! at 2 AM. My wife walked in, took one look at my screen, and just shook her head. She knows better by now.

    But the ultimate test came a week later. My wife needed to check her email quickly while I was making coffee. "Just use my laptop," I said, full of confidence.

    I watched in horror as she tried to figure out why clicking Arc wouldn't just open Arc. "It's already open," I said impatiently, "You have to press Cmd-1 first to get to workspace 1, then you can see Arc."

    She stared at the keyboard like it was alien technology. "Cmd-1? What happened to just clicking?"

    "No, no, that's inefficient. You press Cmd-Ctrl-Shift-Right to move the window to workspace 2, then Cmd-2 to follow it."

    She just closed the laptop, gave me that "face", and picked up her phone. My perfectly optimized system was completely unusable by normal humans. I had engineered myself into a private club of one.

    I was delusional as fuck thinking all this customization was making me more productive. Sure, I can now organize windows with keyboard shortcuts that would make a concert pianist jealous, but what am I actually producing? Slightly better organized "nothing".

    Article VI: The Rationalization

    Here's what I learned: the rabbit hole is fun, but make sure it serves you, not the other way around. Sometimes, the most productive setup is the one that doesn't require any setup at all. But does such a world even exist for people like us?

    I found myself thinking about apps like Raycast, Ghostty, and Starfish - tools that are great right out of the box. Zero setup needed. But then... I started digging again. Built my own Raycast extension. Changed my Ghostty config file to auto-attach to my Tmux session. It's like dating someone perfect and then trying to "improve" them into someone else entirely.

    It reminds me of car enthusiasts. You can buy a perfectly good Honda that gets you from point A to point B reliably. But some people will spend thousands modifying it - new suspension, turbo, body kit - until it's barely recognizable. Maybe they could have bought a BMW with all that money, but that's not the point. The point is making it THEIRS.

    Conclusion: The Manifesto Lives

    I guess that's what this is really about.

    My house, my rules, my computer - but I should probably know when to stop tweaking. But again, knowing and doing are two very different things.

    PS: Hey, sometimes I do wonder if I'm serving my computer or if my computer is serving me. And let's just keep this between us, okay?

Commit Confessions: A History of Questionable Decisions