🪷 barelyzen

I have approximate knowledge of many things

Why (almost) just HTML

2022-01-13

Last week I stumbled upon this tweet while on the bathroom:

a happy dude coming out of an imaginary shopping mall with boxes representing basic building blocks of the web like css and html

From "heh" to "huh"

It made me chuckle for a second before I kept scrolling, but it stayed with me for the rest of the day.

I tried to maintain a personal webpage several times. Once, I even wrote a UNIX terminal-like webpage, which I think is pretty cool. Each time, I also took the opportunity to learn some new front-end technology, which ended up not being as "easy to start" or "blazing fast to deploy" as their pretty landing pages promised.

In the end, the time and energy that should have been spent thinking about the actual website content, were spent reading documentation and spinning up half-baked prototypes.

So this tweet spoke to me at a somewhat personal level.

Using the bare minimum needed to build anything

Ever since I started getting paid to write code, I spend my weekdays developing software that is concerned about so many different things. In the context of current web and mobile applications, a note-taking app is never just a note taking-app, it's also a tracking app, an attention-grabbing app, an analytics collection app, a subscriptions manager app… on top of that, they usually also communicate and relay on a bunch of third-party actors.

All those extra and non-essential, for the user anyway, features add several layers of complexity to the software, making them unmanageable with anything less than your typical all batteries included framework and/or a team of experienced engineers.

One of the main causes for the complex architectures we are dealing today is the apparently endless feature creep that steams from the business side.

This site does not require any of those extra features, I'm not trying to onboard, engage or track anyone. The extra layers and the architecture overhead that they bring with them are gone. Once I started to actually think about what I want from this website, it was pretty clear that HTML and CSS was all I needed, and will ever need.

The half-life of software

If left alone, how long would it take for TikTok or Instagram to stop working? How long would it take for Stripe or Google Docs? How long would it take for Hacker News? And for Wikipedia? Nobody can say for sure, but it definitely feels like Wikipedia would hold way, way longer than TikTok.

I guess that's the reason why I use Emacs to write code, Markdown for taking notes and the command line for a lot of day to day tasks. Some technologies feel timeless. I'm almost completely certain that I will be using Emacs and the terminal up for the rest of my profesional career, and then some.

Being part of a complex ecosystem has many advantages if you are building the next big thing and need to iterate and pivot every 2 months. When dealing with smaller, down to earth solutions, it's refreshing to go back to basics and stay at lower level of abstraction.

It feels good to create something simple, self-contained and designed to last.