2026 · 08 · 07

Personal website fever

Playground at the park

Hello readers,

In case you missed it, I launched Fernsage, a public commonplace book app, last Friday. I wrote about what it is and why I made it in my last email. If you are keen to accumulate and compound your knowledge, do check it out!

Earlier this week, a friend read my parenting notes and we chatted about it over WhatsApp. This is exactly what I had hoped my public commonplace book would do.

You are reading an archive of the newsletter. If you want to receive this in your inbox as soon as I send them, join the list.


Personal website fever

I love my personal website. It's a little corner of the internet that I truly own. And that ownership allows me to tinker endlessly with it.

If you are as old as me, you will remember the times we "skin" our weblogs and make snow fall from the cursor. I am not technostalgic enough to want to bring all that back. But we have strayed too far to the other side. In a few clicks, you can create an Instagram profile for your photos or a Substack publication for your writings or a LinkedIn profile for your projects. When these platforms made publishing so easy, why go through the hassle of setting up a personal website?

But our creations become stuck in the minimalistic frame that Big Tech calls "feed." We obsess over our photos and forget we can customize the frame.

When I set up my website in 2014, I had to figure out how to set up WordPress. When I wanted more customization than what free themes gave me, I studied how to create a WordPress theme and made my own. When I wanted to tinker even more, I watched YouTube videos and coded a custom website from scratch. Frankly, it took more effort than I would like just to be able to tinker with my own website.

Then, Claude Code happened.


Earlier this year, everyone wouldn't shut up about Claude Code. I opened WhatsApp: "Have you tried Claude Code?" I opened my email: "I built these 10 things, even though I don't know how to code!" Alright, alright, let's try it. I brought Claude Code to my playground, alfredlua.com.

To dip my toes, I got Claude Code to look through my website codebase and find issues. It found a link missing a critical slash, a bug with my Strava code, and a CSS style that was repeated 15 times. It fixed these easily. Pretty cool... but I could do these myself, too.

Simple fixes

Can I do more?

I threw Claude Code an issue that I had been dreading for many years but that I knew I had to deal with someday: Outdated Next.js. It's the thing I worried about the most when it came to having my own custom website. All this scary, endless maintenance, which, as necessary as it is, has nothing to do with publishing new essays or customizing my website! Claude Code took care of it. Upgrading two versions? Fixing breaking changes? No problem. It even ran tests to make sure all pages could load without errors. I could have done this myself... but definitely not in 10 minutes.

Next.js migration

Can I do more?

There was a task that had been at the back of my mind for years, but it was so tedious I gave up trying to do it. But I could never give up the dream. When I moved my blog from WordPress to my custom website in 2021, I exported all my posts as a huge XML file. But I didn’t migrate all the posts because I just physically couldn't parse through WordPress's verbose wp-this and wp-that code to extract the posts into separate markdown files for my custom website. To make things worse, I wrote exclusively on Substack last year. So, I had 63 blog posts stuck in the WordPress XML file and 56 articles on Substack.

But my new playground friend made my dream come true. Using countless Python scripts, it extracted the blog posts into markdown files, searched for images on Wayback Machine and downloaded the ones it could find (sadly, many were lost to time), and formatted the text. All my writing finally reunited on my personal website!

All my writing on my website

I could have done this myself... if I ate a magic pill that gave me infinite patience—and maybe the ability to stop time!

Can I do even more?


My personal site was too minimalistic and soulless. I could toss some Tailwind classes around but they rarely align nicely to form a work of art. I often look at designers' personal websites and wish I could create something at least a little nicer. (I'm realistic about my skills!)

To give my website more "soul", I leaned into my newfound love for anime like Frieren and Witch Hat Atelier. These anime often feature beautiful blue sky, enormous white clouds, and expansive green fields. They mesmerize this city boy. I wanted them on my website, but I wasn't exactly sure how to use such imagery in my design. A blurry background? Fade-out gradient? Light overlay?

I directed Claude Code to create five variations with a rough description of what I wanted (it only took five minutes!) It didn’t generate something I loved, but some were promising. So, I asked it to generate more in those directions. After several iterations, I landed with something I liked and tweaked it further. (I also used this approach for Fernsage’s website, creating at least 20 variations before I narrowed down on one direction.)

Design variations, described by Claude Code

Design variations

As I became more confident using Claude Code, it became more fun. It was less of "let's implement this design" and more of "what other crazy ideas can I try?" I tried making the paper note peel off like it would in real life but that didn't work well enough. No biggie. Even though most experiments failed, they didn't take long. But when something worked, WOAH! Here's my favorite: Toggling to dark mode turns the scene from day to night.

Light and dark modes
Look at the moon, the stars, and the warm glow from the cottage!

I could have done this myself... but Claude Code brought back the fun in tinkering. I went down rabbit holes, overthought section dividers, and obsessed over getting that tiny animation right.


Will everyone start making their own websites? I don't think so. Like IKEA, the ease and convenience of Big Tech platforms have made them very attractive. Too attractive. Just like we fill our houses with identical furniture, we publish our thoughts, showcase our projects, and post our photos in identical frames.

But if you care about where your ideas and achievements live, Claude Code has handed you the tools to build and tinker with your own frame. The excuse that it's too hard is dead. What's left is not your inability but your inaction.


From my commonplace book

AI coding (updated)

I added two new notes:

  1. /doctor in Claude Code helped me to check my setup and clean up my CLAUDE.md file.
  2. From the Claude Code team: Adding examples in the system prompt is no longer a best practice. Lists of "don't do X and don't do Y" can also reduce the quality of the results from the latest models.

Thinking modes to avoid (new)

I added one so far: Self-pity (from Charlie Munger). Munger went through a divorce where he lost everything, and he lost his 9-year-old son to leukemia. Yet he believed one shouldn’t let a single blow become worse through a lack of will or wallowing. Every unfair setback is an opportunity to behave well and learn something new. I meditated on this several times this week!

Writing references (updated)

I just added How I Became the Honest Broker. Recently, as I have been trying to improve my writing, I started quoting historic figures and even anime. Ted Gioia used a personal story about a drunk Australian, which feels much more compelling. Another reminder to live an interesting life!


Around the web

Can The Internet Enable a More Hands On Life? With Simon Sarris by Nicole Ruiz

So never stop at the thinking stage, a good life begins with deliberate effort. This is the moral of many fairy tales. Not magic, not thinking, but effort.

There are many things I like about this interview but I want to share a related story. As I was reading through the section on building a house, my instinct was to think, "Ha, must be nice to be able to build a house in the US. That's never going to be possible in Singapore!" But then, I caught myself. At my friends' wedding a few years ago, I met an entrepreneur about my age who built most of his house himself, with the help of some part-time workers and YouTube (yes!). It's extremely rare but it's not impossible.

Friction is the answer to the human desire for meaning by Utsav Mamoria

Katalin Karikó's research into mRNA helped enable the COVID-19 vaccines. I didn’t know how many setbacks she had overcome before she was recognized for her scientific work. She definitely has no self-pity!

The year is 2063 and you were never interesting. by Liz Leatrice

You are 70 years old. You’re sitting in your home. Your grandchildren ask you what your 20s were like, and you honestly can’t tell them.

You can't read this essay and think, "let me go scroll some more social media." Go live a real life, away from the tiny screen.


I rewrote this week's essay three times because the earlier drafts just didn't feel right. I'm grateful for having the time and space to do creative work like this. Thank you for following along!

And if you are in Singapore, happy long weekend!

Warmly,
Alfred