the portfolio I actually finished
Every designer I know has a half-built portfolio site. Here is how I got mine to a public URL by stopping short of perfect on purpose.
Most portfolios live in a graveyard called Drafts. I had three of them in there. A 2022 attempt that died at the hero section. A 2024 attempt with a completed home page and zero project pages. And whatever this is now — except this one is at a real domain, with real projects on it, and you're reading the post that proves it.
The reason the first two failed was the same reason every designer's portfolio fails: I kept treating the site as a moving target. Every time I sat down to ship a page I'd find six things I wanted to redo first. New font pairing. Tighter spacing scale. A "better" colour palette. The work expanded to fill the available perfectionism, and the perfectionism was infinite.
So this time I made three rules and stuck to them. **Rule one: ship one tile a day, even if it's ugly.** A bad tile on the canvas beats a perfect tile in my head. The yellow "I'm Syauqi" hero went up first, looking nothing like the eventual version, and that one ugly tile was the difference between a real codebase and a Figma file.
**Rule two: every section gets exactly one idiom.** No card on this site borrows another card's treatment. The home page is sixteen tiles and sixteen distinct visual ideas. Boarding-pass academic tickets, sticker company badges, a heatmap ledger, a polaroid carousel, a magazine pull-quote. The constraint is brutal — invent or steal. The reward is that no two cards bore me, so no two cards bore the visitor.
**Rule three: deadlines beat reviewers.** I gave myself a public commit window. The repo went open the moment the home page rendered. Pushing to a private branch and "polishing it first" is the same trap, just with different paint. Once it was public I had to keep going — because if you abandon a public repo you have to explain it.
Perfectionism is the polite name for not shipping. The site you're reading exists because I stopped editing the README and started merging. The version you see today is not the version I imagined. The version I imagined still doesn't exist. The one that does is fine, and being fine on the internet beats being perfect in a Figma file.
If you have a portfolio in Drafts, let me make it weirdly easy: pick one project, write three sentences about it, push it. Tomorrow do another. By Friday you have five. The site you build that way is not the site you'd dream up — but the site you'd dream up isn't going to ship, and this one will.