Elhadi.

Blog

The vibecoding journey, documented: project updates, the thinking behind each product, and lessons from shipping solo.

This blog is written by AI — on purpose, and I'm not hiding it.

Every post here is written by AI, in my voice and from my real project notes — the same AI I build everything with. The mind, the projects, and the journey are mine (Suhaib Elhadi); the writing is the machine's. I don't hide that. Owning it is the honest version, and honestly the more interesting one.

5 min readauto-generated update

How to market an app on Reddit without getting banned

Reddit is the best place to find people with the exact problem your app solves — and the fastest place to get banned for saying so. How I think about marketing an app on Reddit.

marketinghow-to
4 min readauto-generated update

What running the same prompt twice tells you

The same prompt, run twice, is the cheapest confidence check I have. When the two answers agree the ground is probably solid; when they diverge, that's the model telling you where it's guessing.

aihow-to
4 min readauto-generated update

How I build enough competence to supervise the model

The model is most confident exactly where I can least check it. How I build just enough competence in a new domain, fast, to catch it when it's confidently wrong.

vibecodinglessons
5 min readauto-generated update

Warming a sending domain: the reputation you can't buy back

A cold-email sending domain is a reputation asset that burns slowly and silently. The mechanics of SPF, DKIM, DMARC and a real warmup, and why none of it survives one bad week.

how-tolessons
5 min readauto-generated update

Safe zones for vertical video: where the app covers your ad

Vertical video safe zones decide whether your caption survives. Where TikTok and Reels put their UI, why published numbers disagree, and how to lay out a clip that works everywhere.

how-toai
4 min readauto-generated update

How to give a friend money back without making it weird

The debtor's side of owing a friend money is its own kind of stuck. Here's the case for settling in the open instead of paying quietly and hoping it un-happens.

how-totab
5 min readauto-generated update

The tier decision nobody re-asks

You pick free tiers, a vercel.app domain, and no error tracking when a project is a toy. Nothing re-asks those questions when the toy quietly becomes production.

vibecodinglessons
5 min readauto-generated update

Forgiving a debt should be a button

The generous move in lending money to friends is quietly walking away from it. Here's the case for making forgiveness an explicit button — and how you design it so it doesn't read as a flex.

how-totab
4 min readauto-generated update

What I'd automate first if I ran a Skool community

Not everything in a Skool community is worth automating. Here's the order I'd actually do it in, ranked by what buys back the most time.

how-tocommunityhq
6 min readauto-generated update

How to price a website that took an afternoon

When AI collapses your cost to build a website, cost-plus pricing breaks. Here's how I think about pricing work that takes an afternoon and is worth more.

lessonsmarketingcadence-studios
6 min readauto-generated update

What a Skool community operator actually does all day

Running a Skool community looks like posting. It isn't. Here's the actual daily job of a community operator — and which parts of it are safe to automate.

use-casecommunityhqlessons
7 min readauto-generated update

Why silent failures are worse than loud ones

A system that fails loudly gets fixed. A system that fails silently keeps reporting success — here's how silent failures hid inside my own automations.

vibecodinglessons
3 min readauto-generated update

Where everything stands — August 2026

Nine projects now, two of them actually live. An honest August walk through what shipped, what's still standing at the door, and the gap I haven't closed.

project-updatevibecoding
5 min readauto-generated update

What one prompt-to-video pipeline can and can't do yet

AI can render eight seconds of genuinely good motion from a sentence. It still can't cut your ad. Here's the honest line between the two, drawn from four real reels.

aicadence-studioslessons
5 min readauto-generated update

How to build a website from a business's Google reviews

A business is the worst describer of itself. Its Google reviews already contain the positioning — here's how I turn that pile of reviews into a whole website.

how-toaicadence-studios
3 min readauto-generated update

How to split a bill without ruining the friendship

The awkward part of splitting a bill isn't the math — it's asking twice. Here's how I stopped eating the loss and started keeping a receipt instead.

use-casetab
4 min readauto-generated update

The economics of a one-person studio

When building got cheap, the economics of a one-person studio flipped. The cost isn't making things now — it's carrying them. Here's where the weight goes.

vibecoding
3 min readauto-generated update

What "done" means when building only takes a weekend

When building a whole app only takes a weekend, done stops being a finish line. Here's how I decide something is actually done instead of just running.

vibecodinglessons
2 min readauto-generated update

Where everything stands — July 2026

A quick honest walk through all seven projects: what's live, what's built and waiting, and what I keep telling myself about the difference.

project-updatevibecoding
1 min read

CommunityHQ, and the day I renamed it out of nowhere

Running a Skool community is mostly invisible admin. I automated the grind — and learned a small lesson about names along the way. (It went SkoolOS → CommunityOS → CommunityHQ.)

project-updatecommunityhqlessons