The Counterspell Challenge
I'm building six web apps from scratch in the name of portfolio growth. Yes, I named this after a Magic: The Gathering card. No, I don't see the problem.
Let me tell you about Counterspell. It's a two-mana blue instant from the very beginning of Magic: The Gathering. So old it appeared in Alpha, Beta, and Unlimited before the game even knew what it was doing. You tap two islands, you say "no," and whatever your opponent thought was going to happen simply doesn't.
That's the energy I'm going for here. Counter the slow loop where you spend six months polishing one case study about a redesign of an app you don't use. Say "no" to the safe version. Ship something real instead.
Anyway. I've decided to build six web apps. This is either a great idea or a spectacular miscalculation of my own free time. Probably both.
Six apps. Six weeks each. Each one solving a real problem. Each one tested with actual humans who did not ask to be part of this.
Tools in play
The build stack is intentionally small, because adding tools to avoid building things is its own form of procrastination I am deeply familiar with.
Figma
Lovable
Whatever else is needed
Figma for design thinking and structure before anything gets built, because vibing directly into code with no plan is a different kind of chaos I don't need. Lovable for the actual building, and then "whatever else is needed," which is a formal acknowledgment that reality will surprise me and I am going to need a third tool I haven't thought of yet.
Everything comes out as a web app. No native builds, no app store submissions, no waiting three business days for a review that might reject it anyway. You build it, Lovable deploys it, it exists on the internet. Done.
The Rules
-
Every app solves something from my actual life. Not "reimagining onboarding for a fintech startup." Something I've personally been annoyed by.
-
A Figma file is not an app. A Loom walkthrough is not an app. Something with a URL that a stranger can open: that's an app. That's the requirement.
-
Minimum two weeks of proper user testing and interviews per app. "My roommate glanced at it" does not count as a testing round.
-
Each app gets a six-week window. Finish early and you can start the next one — no mandatory waiting around feeling productive.
-
Write about what happened. The decisions, the feedback, the things that didn't work. Honest, not curated into a case study where everything was a learning opportunity.
How six weeks actually plays out
Weeks 1–2 Design in Figma
Weeks 2–4 Build with Lovable
Weeks 4–6 Testing + interviews (mandatory)
If early Buffer → next app starts
The testing constraint is the important part. It's very easy to spend six weeks building and then declare victory. It's much harder to spend two of those weeks sitting with actual users watching them confused by things you thought were obvious.
The testing phase is not decorative. It's the thing that separates "I built something" from "I built something that does what I think it does." They are different statements and you only find out which one is true by watching someone use your thing in silence while you resist the urge to explain it.
What's on the stack
I'm not announcing all six upfront. Partly because I want each app to be shaped by what the previous one taught me. Partly because committing to a six-month roadmap in a blog post is how people end up with a lot of private drafts they never finished.
What I can say: every app will come from an area I actually spend time in. Bikepacking, running, design, games, tools I wish existed. The usual mess of interests a person accumulates when they spend too much time thinking about things.
In the end
The Counterspell Challenge is me deciding that discomfort is more useful than comfort, and that a portfolio of six live, tested, flawed apps says more about what I can actually do than six beautifully presented case studies where every decision was validated and every user was happy.
It probably won't all go smoothly. Some of these apps will confuse people. Some features will get cut. At least one interview will contain feedback I did not want to hear and will absolutely implement anyway. That's the deal.
Counterspell doesn't care about your feelings. It just resolves.