5 exercises on the most essential verb+noun collocations that professional developers use every single day.
Core verb+noun patterns
run a build / a test / a pipeline / a migration
write tests / code / a function / a migration
open a PR / an issue / a ticket
ship a feature / a product / a fix
cut a release / a tag
0 / 5 completed
1 / 5
Which sentence uses the correct verb+noun collocation for starting the CI process?
"Run a build" — the standard verb+noun pair for executing a build:
Run is the correct verb for executing automated processes. You run a build, a test, a script, a pipeline, or a container. This comes from "running" a program — the computer executes it.
Common "run + noun" collocations in engineering:
run a build → execute the compilation/bundling process
run a test / run the test suite → execute tests
run a pipeline → trigger a CI/CD pipeline
run a script → execute a shell or Python script
run a container → start a Docker container with docker run
run a migration → execute database migration scripts
Why not "make a build"? "Make a build" sounds like you're creating one manually. "Run a build" means you trigger the automated build system. Note: make as a tool is different — "run make" is correct; "make a build" is not.
2 / 5
A developer says: "I spent this morning ___ tests for the new authentication module — unit, integration, and a few end-to-end scenarios."
Which verb is correct?
"Write tests" — the correct collocation for authoring test code:
When a developer creates new test code, they write tests. This is consistent with how we talk about writing any code: write a function, write a class, write a script.
The full test lifecycle vocabulary:
write a test → author/create the test code
run a test → execute it
pass a test → the test succeeds (green)
fail a test → the test fails (red)
skip a test → exclude it from the run
debug a test → investigate why it's failing
fix a test → correct a broken test
refactor a test → improve its structure without changing behaviour
TDD vocabulary: "Write a failing test first, then write the minimum code to make it pass, then refactor." This red-green-refactor cycle always starts with writing the test.
3 / 5
In a code review comment, a developer writes: "Please ___ a PR with your changes — don't push directly to main."
Which verb is correct?
"Open a PR" — the most natural and widely used collocation:
Open a pull request (or open a PR) is the standard phrase used on GitHub, GitLab, and Bitbucket. The platform UI itself says "Open a pull request." The metaphor is of opening a request for review — creating a formal channel for discussion.
PR lifecycle vocabulary:
open / raise / submit a PR → create it and request review
review a PR → read the code and leave comments
approve a PR → give LGTM / thumbs up
request changes on a PR → ask for revisions before merging
merge a PR → integrate the changes into the target branch
close a PR → abandon it without merging
reopen a PR → revive a closed PR
squash and merge → combine commits when merging
"Create" vs "open": Both are correct. "Open" is more idiomatic in GitHub culture. "Raise a PR" is preferred in British engineering teams.
4 / 5
A product manager says in a sprint review: "The team successfully ___ the dark mode feature — it's now live for all users."
Which verb is correct?
"Ship a feature" — developer culture's favourite word for releasing to users:
Ship means to release software to end users (it's live, users can access it). The word comes from literally shipping physical software on CDs. It implies the feature has reached production — not just been developed, but delivered to users.
Delivery vocabulary and nuances:
ship a feature / a product → release to users; informal/startup culture
release a feature / a version → more formal; implies a versioned deployment
deploy to production → technical act of moving code to the live server
launch a feature / a product → implies something new, often with announcement
roll out a feature → gradual release: "We're rolling it out to 10% of users first"
"Ship" vs "complete": "Complete" means finished building. "Ship" means delivered to users. A feature can be complete for months before shipping. "Finish" has the same problem. "Ship" is the one word that confirms users have it.
5 / 5
A DevOps engineer writes: "The new version is ready. I'm going to ___ a release now and tag the commit as v3.2.0."
Which verb is correct?
"Cut a release" — the idiomatic engineering term for creating a versioned release:
Cut a release is the insider engineering term for creating and publishing a new release — tagging the commit, building the artifacts, and (often) publishing to a package registry or deployment target. The expression comes from the analogy of "cutting" a master tape or disc in audio/film production.
Release vocabulary:
cut a release → create and tag a versioned release: "Cut v3.2.0 from the main branch"
tag a release → create a git tag: git tag v3.2.0
publish a release → make it available: publish to npm, PyPI, GitHub Releases
draft a release → create a release but don't publish it yet (GitHub feature)
roll back a release → revert to a previous version after problems
Typical release workflow: Merge all PRs → run tests → bump version → update changelog → cut the release → tag → CI builds artifacts → publish → announce.