A Place to Call Home

My corner of the internet.

March 13, 2025 3 min read
The default macOS home folder for a user named "kelvin".

Ever since I stumbled across my first Flash game, I’ve been fascinated by how the web works. Naively, I would tinker with different keyboard combinations (who doesn’t love cheat codes?) to see if something interesting would happen. My life changed the day I discovered the View Page Source and Inspect Element actions. This curiosity about the web is one of the reasons I unknowingly chose programming as a career. It also helps that I enjoy math, games, and solving problems.

Over the years, I’ve learned a lot about the web - and continue to do so. With any pursuit, there is always a goal. Mine was simple: I wanted to build a website from scratch.

Yak Shaving

I remember downloading WebStorm while watching Brad Traversy’s Bootstrap tutorial many years ago. You’ll have to excuse me- I don’t recall what happened to that project.

I postponed this side project for years until early 2019, when a self-proclaimed blazingly fast and plugin-rich web framework built on React was gaining popularity. No, I’m not talking about Next.js. This was Gatsby.

At first, I really enjoyed using Gatsby. Eventually, I had what I thought was a decent-looking website (which is now probably only accessible via the Internet Archive). A friend described it as “accessible” and “welcoming”. However, building it took far longer than necessary. Most of my time was spent updating broken dependencies and configuring, in hindsight, unnecessary plugins.

During the latter half of the pandemic, I decided to resume work on the site and completely migrate away from Gatsby. I turned to SvelteKit, which was still in beta at the time. Svelte was simple, and configuring popular tools like Vite and Tailwind was even simpler. Still, I soon found myself procrastinating the actually useful tasks again.

Though there was nothing inherently wrong with the tooling, I felt that building a simple blog with a few cool features shouldn’t be taking so long. It didn’t help that I was using a framework designed for complex web applications rather than a content-focused site.

Luckily, I stumbled upon Kent C. Dodds’ article on how he built his site. In his own words, it was over-engineered. That felt like a wake-up call.

I needed a fresh start and the right tool for the job - a simple yet powerful framework focused on content-driven websites.

I chose Astro and got to work. Before long, I had everything I wanted. I just needed to write.

While I spent a lot of time migrating between codebases and configuring new tools, I’m actually glad I went through that process. I learned so much about software development:

  • How open-source projects are maintained by teams
  • The meaning of semantic versioning and releases
  • That most “plugins” are just simple wrappers over existing tools
  • Numerous new tools I might never have discovered otherwise
  • Almost all my current beliefs about programming best practices
  • And many other aspects I can’t recall off the top of my head

Owning My Part

I’ve never been able to fully articulate why I wanted my own site - or why I needed to build it from scratch. I knew I wanted to create something and share it with the world, but I also felt uncomfortable posting on third-party platforms.

Recently, I came across this wonderful article by Naz Hamid, which captured exactly what I had been thinking:

If you care about your creativity, and what you make and bring into the world, I’d suggest having your own website. A place you can shape and change as often, or as little as you like.

The Future

I have a lot of plans for this site. For now, I plan to write. Topics might range from programming and popular culture to fitness, investing, and more.

I’m excited about what’s ahead, and I hope I can share that excitement with you, my friend.

2025 Kelvin DeCosta