Wilson E. Husin

Frontend log: embracing minimalism

January 9, 2023 (UTC)

The meme of the land is “new JavaScript framework shows up every week”. As someone who only touches the frontend web development when I have to, I don’t have a counterpoint to that statement.

I did, however, spend 2021-2022 looking into frontend development more than any year prior. Since this is the first installment, let’s take a look at the highlight moments.

Given it’s early 2023, where am I at now? Well, roughly…

Okay, the last two is kind of redundant as I just wrote about them, but they both really change the game — Rails used to be an easy default decision for me to pick, but now that the dreadful part of writing server in Go can be solved by writing plain HTML with AlpineJS + TailwindCSS, Go and friends might become the new default2.

You may notice that I often take the alternate paths on my personal projects, compared to my day job stack. The justifications for both sides are actually similar: “increasing collaboration productivity”, where one is many different people at the same time while the other is same person at many different times. Simple is subjective and contextual.

  1. Complexity in the broadest sense: development velocity, operational cost, troubleshooting failures, increasing build time, polarization of technical skills in an organization, … okay maybe that’s enough for now. ↩︎

  2. On Rails vs Go, there is more nuance to be discussed that doesn’t belong in this frontend post. In short, my hobby projects tend to have 1-2 months of continuous development, followed by ~half a year of hibernation. Then, either I get to revive it for another run or Saint Peter decided if it’s officially abandonware. In such timeline, I found my Ruby projects are less likely to survive the hibernation period (e.g. Ruby upgrades, dependency FFI failing to build). Meanwhile, Go projects started in Go modules era consistently compiles. ↩︎