Blog
-
On LLMs and choosing the right harness
How the same model can feel completely different depending on the harness you run it in.
-
A push notification rulebook
How to write push notifications people actually tap, without burning permission.
-
Learnings from fixing three security issues
A practical walkthrough of fixing clickjacking headers, a path traversal issue on a Ghost blog, and DMARC/SPF misconfiguration.
-
The DNS mistake that silently breaks every email you send
How duplicate SPF records cause permerror, quietly weaken email authentication, and hurt deliverability until someone checks DNS.
-
How to lock down your server: a beginner's guide to VPS security
A practical, beginner-friendly checklist for hardening a Linux VPS: SSH, firewall, Tailscale, updates, monitoring, and backups.
-
Don't be a genius on the bench
Why brilliant but disruptive talent can lift teams early and fracture them later.
-
On personalising healthcare with AI
A campaign recap on healthcare bias in women and how we used AI to personalize care.
-
The % of sandwiched women, through the U.S lens
Data summary on the sandwich generation among women 25-40 and the caregiving burden.
-
From Vite to Next.js
Lessons and bugs from migrating a codebase from Vite to Next.js in under 24 hours.
-
On company culture & employee influence
How early employees shape company culture and why founders aren't the only influence.
-
Every decision is a trade-off
A short note on choosing what to say yes to by understanding the trade-offs.
-
On running an SMS campaign in Nigeria
Notes from my first SMS campaign in Nigeria and why the local tooling feels behind.
-
On being a panellist + hackathon judge for the first time
What I learned judging a hackathon and how it reshaped my view of growth and nerves.
-
Writing an API documentation that's easy to read
In progress: notes on writing API docs that are clear, scannable, and developer-friendly.
-
Purposeful ignorance
A Twitter-thread style note on choosing curiosity over hot takes about everything.
-
Building a personal pharmacy
A reflection on Peter Thiel's One Person One Problem framework and why focus beats busywork.
-
On avoiding the learning loop
Breaking the cycle of learning without shipping, and the small post that proved it.
-
On being boring
Why being 'boring' is usually a mismatch of interests, not a character flaw.
-
Online video consumption and how brands can survive
What changed in online video consumption and how brands can still win.
-
How to add jump links to your Ghost blog for better UX
Short guide to adding jump links in Ghost so readers can scan long posts faster.
-
When the river meets the wall
Why purpose sustains early-stage work, with lessons from building Famasi Africa.
-
On Famasi Africa and becoming more than a writer
Lessons from joining Famasi Africa and the shift from freelancing to in-house marketing.
-
Is TikTok the new Vine?
A look at TikTok's growth, creator momentum, and whether it risks repeating Vine's fate.