12 — Master mixed review
What this fixes for you: this is the capstone. One big practice set that mixes every topic so far — articles, much/many, agreement, tenses, possessives, prepositions, punctuation, run-ons, confused words, and spelling — so the rules stick instead of fading after each separate lesson.
This doc is mostly drills. There’s a short warm-up, then 28 mixed exercises (including a few “clean up this messy dev message” tasks), then a full answer key with one-line explanations. Work through it with a pen or in a scratch file, then check yourself.
How to use this
- Don’t peek at the answer key until you’ve tried the whole set.
- Write your fix out in full — don’t just think “yeah, I know that one.” The point is to train your fingers, because you write commits and Slack messages on autopilot.
- After checking, note which topics you missed most. Re-read that lesson (see 00-index.md).
A quick reminder of what’s being tested
| Topic | The one thing to remember |
|---|---|
| Articles | Don’t drop a / an / the: “open a pull request”, not “open pull request”. |
| Much / many | many + countable plural (“many bugs”); much + uncountable (“much progress”). |
| Agreement | Singular subject → singular verb: “the test passes”, “the tests pass”. |
| Tenses | ”I fixed it” (done), “I have fixed it” (done, still relevant), “I’m fixing it” (now). |
| Possessives | its = belonging to it; it’s = it is. your vs you’re. |
| Prepositions | ”merge into main”, “depends on the API”, “blocked by the migration”. |
| Punctuation | End sentences with a full stop. Use commas to break up clauses. |
| Capitalization | Always capital I. Capitalize the first word of every sentence. |
| Run-ons | Two complete thoughts need a full stop, a semicolon, or a comma + and/but. |
| Confused words | their/there/they’re, then/than, affect/effect, lose/loose. |
| Spelling | grammar, research, separate, receive, occurred, definitely. |
| Texting leak | No “u”, “ur”, “thx” in professional writing. Write it out. |
Drills
Part A — Fix the sentence
Each line has one or more errors. Rewrite it correctly.
-
i pushed the fix to ur branch can u review it -
we are making so much mistake in the checkout flow -
the migration are still running, it has not finished yet -
please open pull request against main branch -
i did a lot of reaseach on grammer before writing this doc -
the API return 500 when the cart is empty we should add a guard -
your right, the cache key was wrong its fixed now -
there is to many open tickets in the backlog this sprint -
the deploy effected all tenants because the config was shared -
i think this approach is more better then the old one
Part B — Fill the blank
Choose the right word and write the full sentence.
-
The pricing service depends ______ the tenant context being initialized first. (on / from / to)
-
We merged the hotfix ______ main and tagged a release. (into / in / to)
-
There ______ three failing tests in the payment suite right now. (is / are)
-
______ the queue worker still running, or did it crash? (Is / Are)
-
I’ve reviewed the PR; ______ ready to merge once CI passes. (its / it’s)
-
Please update ______ local
.envbefore running the seeder. (your / you’re) -
We didn’t have ______ time to write tests for the edge cases. (much / many)
-
There were ______ duplicate rows after the bad import. (much / many)
-
The bug only appears ______ the user has more than one address. (then / when)
-
This fix is faster ______ the previous one by about 40 ms. (then / than)
Part C — Choose A or B
-
(A) “The endpoint returns it’s payload as JSON.” (B) “The endpoint returns its payload as JSON.”
-
(A) “Each tenant have their own subdomain.” (B) “Each tenant has its own subdomain.”
-
(A) “I have already deployed it yesterday.” (B) “I deployed it yesterday.”
-
(A) “We need to separate the read and write paths.” (B) “We need to seperate the read and write paths.”
Part D — Clean up the messy dev message
Rewrite each so a teammate could read it without effort. Fix spelling, capitals, full stops, run-ons, articles, much/many, and the texting style.
-
A run-on Slack standup:
yesterday i worked on the cart bug today i am doing the checkout flow i found so much issue in the validation also the API is slow we should look at it tmrw can u help -
A sloppy commit message:
fixed stuff in pricing also some other thing, broke the test but its fine i think will fix latter -
A confusing PR description:
this PR change the order service so it dont crash when address is missing i also did some refactor and remove dead code there is still much bug but this is good for now plz review -
The learner’s own line (the one that started this course):
can u do reaseach on grammer for me and teach me i already know but as of now i am making so much mistake
Answer key
Part A
-
“I pushed the fix to your branch. Can you review it?” — Capital I, “your” not “ur”, “you” not “u”, split into two sentences, and it’s a question so it ends with ?.
-
“We are making so many mistakes in the checkout flow.” — “mistake” is countable, so many + plural mistakes. This is your signature slip.
-
“The migration is still running; it hasn’t finished yet.” — “migration” is singular → is. Two thoughts joined; use a semicolon (or a full stop) instead of a comma. (A comma alone between two complete sentences is a comma splice.)
-
“Please open a pull request against the main branch.” — Add a before “pull request” and the before “main branch”. You routinely drop these articles.
-
“I did a lot of research on grammar before writing this doc.” — Capital I, “research” (not “reaseach”), “grammar” (not “grammer”). Memorize both spellings — they show up constantly in your work.
-
“The API returns a 500 when the cart is empty. We should add a guard.” — “The API” is singular → returns; add a before “500”; split the run-on into two sentences.
-
“You’re right. The cache key was wrong; it’s fixed now.” — “You’re” = “you are”; “it’s” = “it is” (here it means “it is fixed”). New sentence after “right”.
-
“There are too many open tickets in the backlog this sprint.” — “tickets” is plural → are; too (excessive), not “to”; many with countable tickets.
-
“The deploy affected all tenants because the config was shared.” — affected (verb) not “effected”; “effect” is usually the noun. Memorize: affect = action, effect = result.
-
“I think this approach is better than the old one.” — Capital I; “more better” is doubled — just better; than for comparison, not “then”.
Part B
-
on — “depends on something.” Fixed preposition.
-
into — you merge changes into a branch (movement toward a target).
-
are — “three failing tests” is plural.
-
Is — “the queue worker” is singular; also capital at the start of the sentence.
-
it’s — “it’s ready” = “it is ready.”
-
your — possessive: the
.envbelonging to you. (“you’re” = “you are”.) -
much — “time” is uncountable.
-
many — “rows” is countable plural.
-
when — the bug appears when a condition is met. (“then” = next/after.)
-
than — comparison uses than.
Part C
-
B — “its payload” (belonging to it). “it’s” would mean “it is payload,” which is nonsense.
-
B — “Each tenant” is singular → has + its. (“Each” is always singular, even though it feels like many.)
-
B — “yesterday” is a finished time, so use simple past deployed, not present perfect “have deployed.” Don’t mix “already…yesterday.”
-
A — separate is the correct spelling. Mnemonic: there’s a rat in separate.
Part D
- Run-on Slack standup — cleaned up:
Yesterday I worked on the cart bug. Today I’m on the checkout flow. I found many issues in the validation. The API is also slow — we should look at it tomorrow. Can you help?
What changed: capital I throughout; full stops between each thought (no more run-on); many issues (countable) not “so much issue”; “tomorrow” not “tmrw”; “you” not “u”; the question gets a ?.
- Sloppy commit message — cleaned up:
Fix pricing rounding bug; also adjust the tier lookup. One test is failing — will fix in a follow-up.
What changed: capital first word; full stops; its → it’s isn’t even needed once you say it plainly; “latter” → later (latter = the second of two things, later = afterward); say what you fixed instead of “stuff” and “some other thing” so the log is searchable. A commit subject is best in the imperative (“Fix…”, “Add…”), short, and specific.
- Confusing PR description — cleaned up:
This PR changes the order service so it doesn’t crash when the address is missing. I also refactored and removed some dead code. There are still a few known bugs, but this is a good checkpoint. Please review.
What changed: “change → changes” (the PR is singular); “dont → doesn’t”; add the before “address”; There are still a few bugs (countable → “a few”, not “much”); split the run-on; Please and “review” spelled out (no “plz”); capital I.
- Your original line — corrected:
Can you do research on grammar for me and teach me? I already know it, but right now I’m making so many mistakes.
What changed: “u → you”; “reaseach → research”; “grammer → grammar”; it’s a request, so it ends with ?; capital I; “i already know” needs an object → “I already know it”; “as of now” → right now; so many mistakes (countable plural) instead of “so much mistake.” That last one is the single most common mistake in your writing — when you can count it, use many and add the -s.
You’ve now touched every rule in the course in one sitting. The three habits that will buy you the most respect in commits, PRs, and standups: (1) end every sentence with a full stop, (2) capital I always, and (3) count it before you write much vs many. Keep this file bookmarked and redo it in a week — if you score the same drills clean twice, the rules have stuck.
Part of the Developer English course — see 00-index.md.