Keeping Web Dev Simple

As I have gotten older, I have realized that caring less about what people think has brought me a great sense of freedom. In the past, I used to follow all the latest trends in tech, constantly trying to keep up with what everyone else was doing. But now, I have embraced a simpler approach.

I no longer feel the need to use the latest and greatest technologies just for the sake of it. Instead, I focus on using the tech that I genuinely enjoy working with when building websites. This means staying close to the foundations of the web.

My preferred tech stack consists of HTML, CSS, and JavaScript – three essential building blocks of any website. All the tools that have been released to ‘improve’ web development output these in the end so why not just use them?

To make my development process easier and more efficient, I use a few tools that complement these core technologies:

Content Management System: Jekyll

For managing content on my websites, I rely on Jekyll. It allows me to store all my content in markdown files which are easy to version control using git and modify as needed. With Jekyll, organizing and updating content becomes a breeze. Plus all of the templates are in HTML (with a small amount of Liquid templating language) which makes them easy to understand and modify.

JavaScript Framework: Reef.js

When it comes to developing apps, Reef.js is my go-to framework. It’s a simple pure JavaScript framework that takes care of templating and data storage while leaving the rest of the app development up to pure JavaScript code. Using Reef.js simplifies app development without unnecessary complexity.

I find modern JavaScript itself incredibly capable and powerful; therefore, relying on libraries like jQuery is redundant nowadays. By leveraging modern JavaScript features directly, we can achieve similar results without adding extra dependencies or overhead.

CSS Library: ElementalCSS

To handle CSS styling efficiently, I’ve created my own library called ElementalCSS. This library combines a classless CSS framework with a utility library similar to Tailwind CSS. However, it is designed to be lightweight, eliminating the need for a build process. ElementalCSS provides sensible default styles and utility classes, making styling straightforward.

PHP for Data Processing

I now work exclusively with static websites, but I occasionally use PHP for data processing tasks on my local machine. For example, I use PHP to determine related post relationships, something that Jekyll doesn’t offer out of the box. However, these PHP scripts do not run on the actual websites themselves.

By sticking to HTML, CSS, and JavaScript for my websites, I have experienced numerous benefits. Recently when one of my articles reached number one on Hacker News, my site handled the surge in traffic effortlessly. Since there are no databases or complicated server configurations involved, everything is static and loads incredibly fast.

Simplicity allows me to focus on what matters most – making awesome websites. Instead of constantly chasing after the latest trends and fixing bugs in complex frameworks, I can enjoy the process of web development.

Life is too short to worry about always being up-to-date with every new technology. While React may eventually fade into obscurity like jQuery has today, HTML, CSS, and JavaScript will likely remain fundamental components of web development for many years to come – perhaps even expanding their reach even further?

How was it for you? Let me know on BlueSky or Mastodon

(Please) Link to this page

Thanks for reading. I'd really appreciate it if you'd link to this page if you mention it in your newsletter or on your blog.

Related Posts

12 Jun 2023

Rebuilding the Binary Moon Website

I have recently rebuilt the Binary Moon website. It’s been something I’ve been thinking about for a while, and a recent issue with my web host pushed me to finally make a start. In this post, I’ll share some of...
16 Mar 2019

The WordPress Block Directory

There has recently been a proposal to introduce a new type of plugin into WordPress. One specifically for editor blocks.I find this an interesting concept, and I can definitely see some benefits, but there are also some downsides. For starters;...
15 Sep 2023

Building a Control Panel for my Websites

I run a whole stack of websites, and as the number keeps growing, I was finding it harder to manage them all; so I decided to make a central control panel to manage them all efficiently. In this blog post,...
09 Nov 2023

A Manifesto for Progressive Software Development

I’ve been thinking a lot about how I develop projects and what makes my projects uniquely mine. As of November 2023, I have four sites that I am actively working on: Binary Moon, Brush Ninja, Ninja Puzzles, and WPBriefs. Despite...
12 Aug 2023

Learning to Enjoy Building for the Web (Again)

A few years ago, I fell out of love with building for the web. I still did it but it felt like a constant struggle to keep up with the ever-evolving technologies and complex frameworks. I always felt behind, and...
20 Feb 2013

The Amazing Art of Flipping Websites

Recently I have looked at expanding my internet empire. I have all sorts of ideas and never enough time – so I thought I would see if I could buy some websites relatively cheaply, improve them, and then either flip...