Manual ’till it hurts

I’ve been going buildless—or as Brad crudely puts it, raw-dogging websites on a few projects recently. Not just obviously simple things like Clearleft’s Browser Support page, but sites like:

They also have 0 dependencies.

Like Max says:

Funnily enough, many build tools advertise their superior “Developer Experience” (DX). For my money, there’s no better DX than shipping code straight to the browser and not having to worry about some cryptic node_modules error in between.

Making websites without a build step is a gift to your future self. When you open that project six months or a year or two years later, there’ll be no faffing about with npm updates, installs, or vulnerabilities.

Need to edit the CSS? You edit the CSS. Need to change the markup? You change the markup.

It’s remarkably freeing. It’s also very, very performant.

If you’re thinking that your next project couldn’t possibly be made without a build step, let me tell you about a phrase I first heard in the indie web community: “Manual ‘till it hurts”. It’s basically a two-step process:

  1. Start doing what you need to do by hand.
  2. When that becomes unworkable, introduce some kind of automation.

It’s remarkable how often you never reach step two.

I’m not saying premature optimisation is the root of all evil. I’m just saying it’s premature.

Start simple. Get more complex if and when you need to.

You might never need to.

Have you published a response to this? :

Responses

ThomasAPowell

@adactio I’ve long said in my webdev courses a variation of this phrase

“Feel the hate before you automate”

Enes

@adactio This approach has been leading me into re-inventing my own wheel by going back to basics and building up from what I need.

Exploring the path from a collection of personal essays written in HTML to a fully automated site generator is my favorite pastime in the last few years.

Nowadays I’m building any website in my kitchen with my own ingredients, and I suspect many others will be doing similarly.

# Posted by Enes on Sunday, September 8th, 2024 at 1:21pm

🇺🇸 🇺🇦 🇮🇱 🐧 🥦

@adactio

I’ve been learning React on the job for the past few months. It is a lot of fun, almost like doing programming instead of front end work. However, I think it is bloated and an inefficient way to produce screens. I will not be surprised if the cognoscenti of Silicon Valley announces that Javascript frameworks are out ( like fashion ) as it makes more sense, and always has. Just before they promote the next thing that is logical and efficient, but really just fashion.

Michael Bishop

I’ve seen a few pieces about simplifying web development and fortunately Jeremy Keith put my exact same thoughts about “Manual ‘til it hurts” out there. 1. Start doing what you need to do by hand. 2. When that becomes unworkable, introduce some kind of automation. adactio.com/journal/21397

25 Shares

# Shared by SaptakS on Sunday, September 8th, 2024 at 10:34am

# Shared by Peter Goulborn on Sunday, September 8th, 2024 at 10:34am

# Shared by Choan Gálvez on Sunday, September 8th, 2024 at 11:05am

# Shared by Myles Eftos on Sunday, September 8th, 2024 at 11:05am

# Shared by Walter on Sunday, September 8th, 2024 at 11:05am

# Shared by Caspar Fairhall on Sunday, September 8th, 2024 at 11:05am

# Shared by Johannes Odland on Sunday, September 8th, 2024 at 11:05am

# Shared by Sami Määttä on Sunday, September 8th, 2024 at 11:05am

# Shared by David O'Brien on Sunday, September 8th, 2024 at 11:30am

# Shared by Lucid00 on Sunday, September 8th, 2024 at 12:01pm

# Shared by TuulaP on Sunday, September 8th, 2024 at 12:01pm

# Shared by Chriztian Steinmeier on Sunday, September 8th, 2024 at 12:01pm

# Shared by Thinker on Sunday, September 8th, 2024 at 12:30pm

# Shared by United Mystery Puzzle Solvers on Sunday, September 8th, 2024 at 1:00pm

# Shared by Jon Lunman on Sunday, September 8th, 2024 at 4:24pm

# Shared by Florian Ziegler on Sunday, September 8th, 2024 at 6:34pm

# Shared by juanjobnt on Monday, September 9th, 2024 at 9:09am

# Shared by Fynn Becker on Monday, September 9th, 2024 at 8:54pm

# Shared by Sara Joy :happy_pepper: on Monday, September 9th, 2024 at 8:54pm

# Shared by Nick Sherman on Monday, September 9th, 2024 at 8:54pm

# Shared by Adrian Cochrane on Monday, September 9th, 2024 at 9:27pm

# Shared by Jill on Monday, September 9th, 2024 at 10:01pm

# Shared by David Hayes :prami: on Monday, September 9th, 2024 at 10:01pm

# Shared by Kristof Zerbe on Monday, September 9th, 2024 at 10:54pm

# Shared by JC Simpson on Sunday, September 15th, 2024 at 5:51pm

63 Likes

# Liked by SaptakS on Sunday, September 8th, 2024 at 10:33am

# Liked by Simon St.Laurent on Sunday, September 8th, 2024 at 10:33am

# Liked by Paul Shryock on Sunday, September 8th, 2024 at 10:34am

# Liked by Simon Cox :SEO: on Sunday, September 8th, 2024 at 10:50am

# Liked by Joe Gaffey on Sunday, September 8th, 2024 at 11:04am

# Liked by Aslak Raanes on Sunday, September 8th, 2024 at 11:04am

# Liked by Simon Cox :SEO: on Sunday, September 8th, 2024 at 11:04am

# Liked by Niina on Sunday, September 8th, 2024 at 11:04am

# Liked by Caspar Fairhall on Sunday, September 8th, 2024 at 11:04am

# Liked by Fred Rocha on Sunday, September 8th, 2024 at 11:05am

# Liked by Johannes Odland on Sunday, September 8th, 2024 at 11:05am

# Liked by Jacob Andresen on Sunday, September 8th, 2024 at 11:30am

# Liked by gkeep on Sunday, September 8th, 2024 at 11:30am

# Liked by 🍄🌈🎮💻🚲🥓🎃💀🏴🛻🇺🇸 on Sunday, September 8th, 2024 at 11:30am

# Liked by John P. Green on Sunday, September 8th, 2024 at 11:30am

# Liked by Evil Jim O’Donnell on Sunday, September 8th, 2024 at 11:30am

# Liked by Lucid00 on Sunday, September 8th, 2024 at 12:00pm

# Liked by TuulaP on Sunday, September 8th, 2024 at 12:00pm

# Liked by Craig Lee on Sunday, September 8th, 2024 at 12:00pm

# Liked by Chriztian Steinmeier on Sunday, September 8th, 2024 at 12:01pm

# Liked by Vinay ಕಶ್ಯಪ್ (Mr./Dr.) on Sunday, September 8th, 2024 at 12:30pm

# Liked by Luke Dorny on Sunday, September 8th, 2024 at 12:30pm

# Liked by Pete on Sunday, September 8th, 2024 at 1:00pm

# Liked by DCoder 🇱🇹❤🇺🇦 on Sunday, September 8th, 2024 at 1:00pm

# Liked by United Mystery Puzzle Solvers on Sunday, September 8th, 2024 at 1:00pm

# Liked by Enes on Sunday, September 8th, 2024 at 1:28pm

# Liked by Matt Walker on Sunday, September 8th, 2024 at 1:28pm

# Liked by tech himbo on Sunday, September 8th, 2024 at 1:53pm

# Liked by 🇺🇸 🇺🇦 🇮🇱 🐧 🥦 on Sunday, September 8th, 2024 at 2:21pm

# Liked by Kelly Sims on Sunday, September 8th, 2024 at 2:21pm

# Liked by Tim Riley on Sunday, September 8th, 2024 at 2:57pm

# Liked by Royce Williams on Sunday, September 8th, 2024 at 2:57pm

# Liked by Rishat on Sunday, September 8th, 2024 at 2:57pm

# Liked by Steph on Sunday, September 8th, 2024 at 3:50pm

# Liked by greg on Sunday, September 8th, 2024 at 4:24pm

# Liked by Simon R Jones on Sunday, September 8th, 2024 at 4:56pm

# Liked by Abigail on Sunday, September 8th, 2024 at 7:43pm

# Liked by Xavier Zalawa on Sunday, September 8th, 2024 at 8:46pm

# Liked by Adam Perfect on Sunday, September 8th, 2024 at 8:46pm

# Liked by Crook Cactus on Sunday, September 8th, 2024 at 11:11pm

# Liked by juanjobnt on Monday, September 9th, 2024 at 9:09am

# Liked by Mario on Monday, September 9th, 2024 at 3:41pm

# Liked by Fynn Becker on Monday, September 9th, 2024 at 8:54pm

# Liked by tjkendon on Monday, September 9th, 2024 at 8:54pm

# Liked by Matt Stein on Monday, September 9th, 2024 at 8:54pm

# Liked by Martijn Frazer on Monday, September 9th, 2024 at 8:54pm

# Liked by Sara Joy :happy_pepper: on Monday, September 9th, 2024 at 8:54pm

# Liked by Jackson Showalter-Cavanaugh on Monday, September 9th, 2024 at 9:27pm

# Liked by _foo__bar on Monday, September 9th, 2024 at 9:27pm

# Liked by Nelson Chu Pavlosky on Monday, September 9th, 2024 at 9:27pm

# Liked by :: J :: on Monday, September 9th, 2024 at 9:27pm

# Liked by Cendyne on Monday, September 9th, 2024 at 9:27pm

# Liked by katherine on Monday, September 9th, 2024 at 9:27pm

# Liked by Jill on Monday, September 9th, 2024 at 10:01pm

# Liked by Problem Fox on Monday, September 9th, 2024 at 10:01pm

# Liked by Geoff on Monday, September 9th, 2024 at 10:54pm

# Liked by Kristof Zerbe on Monday, September 9th, 2024 at 10:54pm

# Liked by Eric on Monday, September 9th, 2024 at 11:21pm

# Liked by CJ Dunn on Tuesday, September 10th, 2024 at 4:56am

# Liked by Indra Kupferschmid 💙💛 on Tuesday, September 10th, 2024 at 5:25am

# Liked by Tainome on Tuesday, September 10th, 2024 at 5:51am

# Liked by BobKufen ✅🍰🦆 on Tuesday, September 10th, 2024 at 9:25am

# Liked by JC Simpson on Sunday, September 15th, 2024 at 5:51pm

Related posts

Culture and style

Styling a document about The Culture novels of Iain M Banks.

Notes from the edge

Thoughts prompted by the Edge Conference in London.

Declarative design systems

Is your design system really a system …or is it more like a collection of components?

Declarative design

Defining the inputs instead of trying to control the outputs.

Inertia

Two JavaScript frameworks—Svelte and Astro—share a philosophy, but take subtly different approaches.

Related links

How do build tools break backwards compatibility? | Go Make Things

If you have a project that uses just plain HTML, CSS, and JavaScript, you can just open up the files and start working on them at any time. A project from 20 years ago will still work just fine, and can be easily modified.

Projects that use build tools? Well… to work with them, you need your build tools to actually build. And that’s not always guaranteed.

Also, it me:

One of my least favorite things as a developer is wanting to do a quick patch fix on an older project—I’m talking a simple one-line of CSS kind of fix—but first having to spend 30 minutes patching my build tools to get them running again.

Tagged with

The Cost of Convenience - DEV Community

The pros and cons of dependencies in your toolchain.

Tagged with

Pattern Library First: An Approach For Managing CSS — Smashing Magazine

Rachel goes into detail on how she uses pattern libraries—built with Fractal to build interfaces. I know it sounds like we paid her to say all the nice things about Fractal, but honestly, we didn’t even know she was writing this article!

After discovering Fractal two years ago, we have moved every new project — large and small — into Fractal.

Tagged with

Service Workers | Build Progressive

This is a really nice explanation of adding a service worker to your site to make it more resilient. This tutorial is part of an ongoing series that I’m really looking forward to reading more of.

Tagged with

CodePen - CSS Grid Template Builder

Here’s a handy interface if you want to get your head around named areas in CSS Grid, also known as doing layout with ASCII art.

Tagged with

Previously on this day

1 year ago I wrote Lovers in a dangerous time

Europe, 1991.

2 years ago I wrote One day to dConstruct

Twenny twenny twenny four hours to go-oh-oh!

3 years ago I wrote Coaching on the Clearleft podcast

It’s a bit salesy but it’s also a really good discussion.

4 years ago I wrote T E N Ǝ T

A spoiler-filled look at the new Christopher Nolan film.

9 years ago I wrote Ice cold in Copenhagen

A trip to Denmark for the Coldfront conference.

10 years ago I wrote dConstruct 2014

Important. Serious. Rewarding. Inspiring.

11 years ago I wrote dConstruct 2013

We came, we saw, we communicated with machines.

11 years ago I wrote Testing webmentions

Ping! Ping! Ping!

13 years ago I wrote Makers in Brighton

All the fun of the Maker Faire.

13 years ago I wrote dConstruction of the Fables

dConstruct 2011 was great …in my opinion.

18 years ago I wrote Simon and Paul

APIs are good for business.

20 years ago I wrote Storm chasing

If, like me, you have recently acquired hurricane fever, there’s a handy little freeware OS X application you might like. MegaTrack shows the current and projected paths of tropical storms using data from the National Oceanic and Atmospheric Adminst

21 years ago I wrote Things To Do In Brighton When You're Dead

Make some coffee.

22 years ago I wrote The Farmer's Market

There’s a farmer’s market once a month in the centre of Brighton.