codebase — a common single-word IT compound. One-word IT compounds:
• codebase — the full body of source code for a project ("the legacy codebase", "our codebase is 1.2M lines") • callback — a function passed as an argument to be called later ("callback hell", "register a callback") • middleware — software connecting two systems; also: functions in a request pipeline • frontend — the client-side part of an application (also written "front end" as a noun modifier) • backend — the server-side part (also "back end") • workflow — a sequence of tasks or steps in a process • runtime — the environment in which code executes ("runtime error", "Node.js runtime")
Note: the one-word/two-word split is inconsistent in tech writing. "Frontend" and "backend" both appear as one word AND two words; follow your style guide conventions.
2 / 6
Choose the sentence where the hyphenated compound is used correctly.
"end-to-end test" — hyphenation rule: when a compound word MODIFIES a noun, hyphenate it.
• "end-to-end test" — hyphen required (modifying "test") • "the testing was end to end" — no hyphen (predicate position, not modifying a noun)
Common hyphenated IT compounds used as modifiers: • built-in — "a built-in function" (vs. "the function was built in") • plug-in / plugin — both spellings accepted; "a plug-in architecture" • trade-off — "there is a trade-off between X and Y"; "a trade-off analysis" • roll-out / rollout — "a phased rollout"; "we began to roll out the feature" • sign-off — "waiting for sign-off from legal"
Quick rule: if you can replace the compound with a one-word adjective ("built-in" ≈ "native"), you need the hyphen.
3 / 6
Which of these is correctly written as TWO separate words (no hyphen)?
source code — two words. Common two-word IT phrases (no hyphen):
• source code — the human-readable program text ("commit the source code to Git") • open source — when used as a noun/adjective ("an open source licence", "it's open source") • pull request — a proposal to merge changes; PR in short ("raise a pull request", "review the PR") • tech debt — accumulated shortcuts that reduce future maintainability • side effect — an observable change outside a function's return value ("pure functions have no side effects") • code review — the process of reviewing source code changes ("during code review") • branch name, commit message, access token, data model
However many of these compound nouns become hyphenated or merged over time as tech jargon matures. When uncertain, check the dominant form in the documentation of the technology in question.
4 / 6
A developer writes: "The downstream services will be affected if we update the upstream API without a version bump." What do "upstream" and "downstream" mean here?
Upstream → the system/service you RECEIVE from (a dependency toward the source) Downstream → the system/service that RECEIVES from you (depends on your output)
Analogy: think of data flowing like a river. Upstream is where the data originates; downstream is where it flows to.
Examples: • "We have an upstream dependency on the payment gateway." (we depend on payment gateway) • "If we break this API, downstream consumers will be affected." (other services consume us) • "Upstream PR" — in open source: a patch sent to the original project (upstream repo) from a fork • "Mirroring upstream changes" — syncing your fork with the original repository
Similar spatial metaphors in IT: • middleware — sits in the middle of a request pipeline • gateway — the entry/exit point • pipeline — a sequence of processing stages (CI/CD pipeline, data pipeline)
5 / 6
Which sentence correctly uses "workaround" (one word)?
"a workaround" (noun) is one word; "work around" (verb phrase) is two words.
This verb-vs-noun pattern is extremely common in IT:
| Noun (one word) | Verb phrase (two words) | |---|---| | a workaround | to work around a bug | | a setup | to set up the environment | | a rollout | to roll out a feature | | a login / logon | to log in / log on | | a shutdown | to shut down the server | | a checkout | to check out a branch | | a callback | to call back a function |
Quick rule: if you can put "the" before it, it's a noun → one word. If a verb follows, it's a verb phrase → two words.
6 / 6
Choose the sentence with the correct form of the compound.
"tech debt" — two words. It is also sometimes written "technical debt" (full form). Never hyphenated, never merged into one word.
Other two-word compounds that are sometimes incorrectly merged or hyphenated:
• tech debt / technical debt — not "tech-debt" • unit test — not "unit-test" (as noun); "to unit-test the function" (as verb) is acceptable • code smell — not "code-smell" or "codesmell" • road map / roadmap — both accepted; "roadmap" is now dominant in tech • time zone — two words (UTC, DST contexts); increasingly written "timezone" in APIs
General guidance: when in doubt about compound spelling in technical writing, check the style the major documentation in your field uses (MDN, Google Developer Docs, or Stripe/Twilio docs are good reference points).