https://gomakethings.com/guides/functions/rest-parameters/
Rest Parameters | Go Make Things
Rest parameters work a lot like the arguments object, but with two notable advantages. You can give them to any name you’d like. You can start at any parameter...
go make thingsrest parameters
https://gomakethings.com/forced-colors-mode/
Forced Colors Mode | Go Make Things
Forced Colors Mode is an accessibility feature that, as my friend Ben Myers explains… replaces websites’ colors (backgrounds, borders, text, focus outlines,...
forced colors modego make things
https://gomakethings.com/now/
Now | Go Make Things
go make things
https://gomakethings.com/the-web-is-not-dying/
The web is not dying | Go Make Things
I’ve been seeing more tweets lately—particularly from Google Chrome developer Alex Russell—that the web is dying. I disagree. The web is a mess. Modern “best...
go make thingsthe webnot dying
https://gomakethings.com/podcast/
The Go Make Things Podcast | Go Make Things
A show about the web (and more) for people who hate the complexity of modern front‑end web development. Listen on... iTunes Spotify Overcast YouTube PCST RSS...
go make thingspodcast
https://gomakethings.com/mit/
MIT License | Go Make Things
Copyright © Chris Ferdinandi Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files...
go make thingsmit license
https://gomakethings.com/prefiguration/
Prefiguration | Go Make Things
A few weeks ago, I learned a fancy new word from Andrew Sage: prefiguration. A few months ago, when SNAP benefits abruptly disappeared, I immediately started...
go make thingsprefiguration
https://gomakethings.com/guides/cloudflare-workers/kv-put/
KV.put() | Go Make Things
You can set or update data in your database using the KV.put() method. Pass in the name of the database key and the value (in string format) as arguments. The...
go make thingskvput
https://gomakethings.com/guides/authentication/token-based-auth/
Token-Based Authentication | Go Make Things
Token-based authentication provides a way to keep users logged in, and verify who they are and what content they have access to, without having to save...
token based authenticationgo make things
https://gomakethings.com/guides/es-modules/side-effects/
Side Effects | Go Make Things
In ES modules, side effects are “things that happen” in the module automatically, without the need for the developer to explicitly run a function. An example...
go make thingsside effects
https://gomakethings.com/guides/accessibility/aria-hidden/
[aria-hidden] | Go Make Things
go make thingsariahidden
https://gomakethings.com/guides/html-text/textcontent/
Node.textContent | Go Make Things
Get and set the text of an element (and omit the markup) as a string. In the example below, you may notice that the Node.textContent property gets all of the...
go make thingsnode
https://gomakethings.com/the-elevator-pitch-for-web-components/
The elevator pitch for Web Components | Go Make Things
I’ve worked with Web Components a little bit over the last few, but really struggled to understand the use case for them. Until this week. Between Jeremy...
the elevator pitchgo make thingsfor webcomponents
https://gomakethings.com/helping-people-find-work/
Helping people find work | Go Make Things
It’s rough out there. AI is being used to devalue work, justify layoffs, and depress wages. An utterly shit economy is making everything cost more. Tech is...
helping people find workgo make things
https://gomakethings.com/guides/adhd-traits/blunt/
Being Blunt | Go Make Things
Much like Autism, people with ADHD can have a tendency to say what they mean in very direct and honest terms without much nuance or sugarcoating. I suspect...
go make thingsbeing blunt
https://gomakethings.com/guides/testing/cli/
The Command Line Interface (CLI) | Go Make Things
All of the testing tools that we’ll be looking at in this guide require the use of the command line interface (or CLI), as well as Node and NPM. If this is...
the command line interfacego make thingscli
https://gomakethings.com/css-only-solutions-are-not-accessible/
CSS-only solutions are not accessible | Go Make Things
In response to my article on my quest for the best progressively-enhanced dropdown nav menu, I had a lot of people ask me about CSS-only options that use...
go make thingscss onlyare notsolutionsaccessible
https://gomakethings.com/guides/
Reference Guides | Go Make Things
Short, focused guides on a bunch of things I’ve learned or care about. Planting in progress! I’m reorganizing this section and the way articles are structure....
go make thingsreference guides
https://gomakethings.com/guides/proxies/handler-construct/
handler.construct() | Go Make Things
The handler.construct() method runs when a constructor function is instantiated with the new keyword. It receives the constructor function and an array of the...
go make thingshandlerconstruct
https://gomakethings.com/claudette-colvin/
Claudette Colvin | Go Make Things
Claudette Colvin died last week. She was Rosa Parks before Rosa Parks. And if you’re an American, there’s a good chance you never learned who she was. On March...
go make thingsclaudette colvin
https://gomakethings.com/my-favorite-way-to-write-code-in-2026-on-becoming-a-tdd-addict/
My favorite way to write code in 2026 (on becoming a TDD addict) | Go Make Things
I’ve hated writing JavaScript tests for pretty my whole career. That thing where you plan a component, write some code, iterate it a whole bunch until it works...
go make thingsmy favorite
https://gomakethings.com/guides/getting-started/loading/
Loading JavaScript? | Go Make Things
go make thingsloadingjavascript
https://gomakethings.com/fun/
Fun & Games 🎉 | Go Make Things
You just found the secret games section of the site. Rad!
go make thingsfun games
https://gomakethings.com/inlining-critical-css-for-better-web-performance/
Inlining critical CSS for better web performance | Go Make Things
Last summer, I tried to implement some performance tweaks to my site that I hoped would push it below the 500ms mark (just half a second) for displaying...
go make thingscritical cssfor betterweb performanceinlining
https://gomakethings.com/guides/service-workers/basics/
The Basics | Go Make Things
To learn the basics, let’s create a simple service worker that shows the user a special offline.html file when they lose network connectivity. Source Code...
go make thingsthe basics
https://gomakethings.com/guides/css-architecture/modular-css/
Modular CSS | Go Make Things
There are a few different strategies and approaches you can use to modularize your CSS into smaller files. A compiler One of the big benefits of using a build...
go make thingsmodularcss
https://gomakethings.com/guides/formdata/append/
FormData.append() | Go Make Things
The FormData.append() method adds an additional value for an existing entry, if one with that name already exists. If not, it creates a new entry. Pass in a...
go make thingsformdataappend
https://gomakethings.com/guides/strings/string-tolowercase/
String.prototype.toLowerCase() | Go Make Things
Transform all text in a string to lowercase. let text = 'This sentence has some MIXED CASE LeTTeRs in it.'; // returns
go make thingsstringprototypetolowercase
https://gomakethings.com/guides/flexbox/gap/
Adding a Gap | Go Make Things
You can use the gap property to define the amount of space between each Flexbox item. .grid-flex { display: flex; gap: 1rem; } If you’d prefer to include space...
go make thingsaddinggap
https://gomakethings.com/guides/layout-examples/reusable-grid/
Reusable Grid | Go Make Things
A reusable grid system makes building a variety of website layouts faster and easier. For this setup, we’ll be using CSS Grid. The single row, 12-column grid...
go make thingsreusablegrid
https://gomakethings.com/its-hard-to-give-a-shit/
It's hard to give a shit | Go Make Things
I’m finding it pretty much impossible to give a shit about anything web dev or tech related right now. Today, I want to rant for a minute, and then offer some...
give a shitgo make things
https://gomakethings.com/guides/css-selectors/not/
:not() | Go Make Things
The :not() pseudo-class can be used to select elements that do not match one or more selectors. You can use it by itself or on an element. Pass in the...
go make things
https://gomakethings.com/you-dont-need-permission/
You don't need permission | Go Make Things
You don’t need permission to help people. You don’t need much to have a positive impact on your community. You don’t need to wait for the perfect solution or...
go make thingsneedpermission
https://gomakethings.com/guides/creating-a-podcast/recording/
Recording Software | Go Make Things
On macOS, you can record audio using the built-in QuickTime software. On Windows, there’s a comparable Windows Voice Recorder app. Because I also do lots of...
go make thingsrecording software
https://gomakethings.com/
Go Make Things
Chris Ferdinandi is a web developer with ADHD, helping people build the web better.
go make things
https://gomakethings.com/articles/
The Stream | Go Make Things
I write about the intersection of frontend web development, anarchy, and gardening. I used to write more. Now I write less. Subscribe with RSS
go make thingsthe stream
https://gomakethings.com/ms.-rachel/
Ms. Rachel | Go Make Things
One common refrain I hear from American liberals is something to the effect of… Demanding basic human rights is not political. And like… I get where they’re...
go make thingsms rachel
https://gomakethings.com/adhd-restlessness/
ADHD restlessness | Go Make Things
Earlier this week, one of my friends who thinks they might have ADHD asked me if ADHD folks ever feel restless or angsty when they’re not being productive....
go make thingsadhd restlessness