set up
verbto place or fix in position; to assemble, prepare, or arrange (something) for use or for a particular purpose.
e.g. “Run npm install to set up the project.”
I scanned … public repositories on GitHub and found … of them mixing up set up (the verb) with setup (the noun). This is my attempt at public shaming, hoping it helps people remember to use the correct one.
Set up is a phrasal verb: the action of preparing something.
Setup is a noun: the configuration that results.
Developers too often write setup the database when they mean
set up the database. The mistake hides in READMEs, code
comments, and docs across the open-source (and closed-source) world.
to place or fix in position; to assemble, prepare, or arrange (something) for use or for a particular purpose.
e.g. “Run npm install to set up the project.”
the manner or act of arranging or organizing; the equipment, devices, or apparatus put together for a specific purpose.
e.g. “The CI setup uses GitHub Actions.”
Over the course of 6 months a Python crawler slowly (read: 250 at a time) walked the public GitHub
search API for repositories with at least 25 stars, sliced into six-month windows
of creation date. For each repository it scanned READMEs, documentation files, and code
comments for occurrences of setup used in a verb position
(setup the …, to setup …, Setup your …,
and similar patterns). Lines that matched were captured with file path
and line number for inspection.
The code was largely written by Claude, because of course it was. As such there might be
some inaccuracies in the results, but over the course of collecting the data I spot checked
frequently and didn't find any false-positives.
Last update: ….
The full crawler lives in setup_checker.py.
Early entries in the data do not have examples of the improper grammar.
I later added functionality to grab an example and store it in the log,
so some repos in the data will return a highlighted example in the search
results. If a repo does not have an example that just means it was from
an entry early in the process.
Function names were intionally left out of the scan simply because camel case
doesn't allow for the chance to use the proper form where snake case would: set_up_user vs setupUser.
I have wondered if the common use of camel case is part of the reason this mistake is so ubiquitous.
Among the … repositories that contain at least one error.
Where in the repo the mistakes were found.
Repositories with the highest count of setup/set up mistakes.
Wondering whether your favorite project is on the list? Search for it.
Search →