A Fresh Start
kangwijen

So a few months ago, I made what I now realize was a terrible decision: I attempted to deploy a Next.js project directly to my shared web hosting server. At the time, I was very excited to build a modern portfolio page to help with internship applications. Next.js seemed like the perfect fit, it's fast, powerful, popular, and most importantly looks good combined with shadcn/ui. What I didn’t realize, though, was just how resource intensive it can be, especially on a shared hosting environment.
As you might guess, things didn’t go well.
The deployment didn’t just cause minor issues like slow load times. It completely crashed the entire server. My portfolio page went down, and so did every other site I owned, including the management panel. I tried everything I could to bring it back online. I even upgraded to a more expensive hosting plan, but that still didn’t solve the problem. The server simply couldn’t handle the workload. With no other options left, I had to wipe the entire server and start from scratch. It was an incredibly frustrating, stressful, and expensive experience.
To make matters worse, when I tried to restore my old WordPress blog, it simply would not work. There were no error messages and no obvious reasons why, it just kept loading infinitely. Fortunately, I had a backup that I downloaded to my personal computer. Thanks to that file, I was able to recover years of content and avoid losing everything I had built.
After going through all of that, I knew I needed a more sustainable approach. I took a step back and rethought how I build and manage personal projects. This time, I’m prioritizing simplicity, reliability, and maintainability.
I rebuilt my blog entirely from scratch using Next.js (properly this time) along with shadcn/ui for the UI components. For content management, I integrated a headless CMS, which allows me to update and manage posts easily without relying on WordPress. Everything is deployed through GitHub and Vercel, which works perfectly for my needs and costs absolutely nothing. It’s fast, stable, and version-controlled through Git, so I have full control and peace of mind.
Now that I’ve learned some valuable (and painful) lessons, I’m excited to start fresh with this new blog. It’s better, flexible, and built with tools I now understand more deeply, and this time, it’s (almost) truly mine from scratch.
As part of this new beginning, I’ll also be working to recover and upload my old blog posts one by one. It may take some time, but I want to preserve the content and experiences I’ve shared over the years. Hopefully, they’ll still be useful or interesting to others, just as they were before.