Review: Cause, Contrast, and Condition
LESSON
Review: Cause, Contrast, and Condition
By the end of this lesson, you will be able to...
trace a short engineering update from evidence to cause, consequence, contrast, and release condition;
choose a connector you already know without changing the technical strength of the claim;
write one decision note that shows what is true, what follows, what remains risky, and what must happen before the next action.
Idea in one sentence: A clear decision note lets the reader reconstruct the logic instead of guessing how evidence, risk, and action are related.
Core Insight
This is a consolidation lesson, not a new grammar lesson. In lessons 001–004, you practised four kinds of links:
| Link | Question the reader has | Connectors already in the track |
|---|---|---|
| Cause | Why did this happen? | because, since, as |
| Consequence | What followed from the evidence? | so, therefore, as a result |
| Contrast or concession | What remains true despite another fact? | but, however, although, even though |
| Condition | When is an action allowed or blocked? | if, unless, provided that, as long as |
The same connector can be grammatically correct and still be a poor engineering choice if it hides the relation. Compare these two updates:
The canary is fine, so we will continue.
Error rate stayed below 1%, so we will continue at 25%, although p95 latency is still close to the limit. We will widen the canary only if the old-client check is complete.
The second update is longer, but every clause has a job. The reader can see evidence, consequence, remaining tension, and the guard on the next step. The trade-off is between a short update and a fully inspectable decision path; in a rollout, the extra words are often cheaper than a wrong assumption.
The Concepts Together
Return to the parser fix and migration from the previous lessons. The team is running a canary and records these signals:
error rate: 0.6%
p95 latency: 340 ms
old-client check: complete
rollback path: ready
The release policy is:
continue below 1% errors
pause above 300 ms p95
do not widen before the old-client check
keep rollback ready while traffic grows
Before writing, label each relation. Do not start by searching for a connector.
- Evidence:
p95 latency is 340 ms. - Consequence:
Therefore, we will pause at 25%. - Contrast:
The error rate is within budget, but latency is above the pause boundary. - Condition for recovery:
We will continue if p95 returns below 300 ms. - Condition for widening:
We will widen the canary provided that the old-client check remains complete and rollback is ready.
Now combine the pieces without making one relation pretend to be another:
The error rate is within budget, but p95 latency is 340 ms. Therefore, we will pause at 25%. We will continue if p95 returns below 300 ms, and we will widen the canary provided that the old-client check remains complete and rollback is ready.
The first sentence uses but for two true signals. Therefore names the consequence of the evidence. If describes the recovery condition. Provided that makes the compatibility and rollback checks explicit prerequisites for widening. None of these connectors proves that the system is safe; they expose the reasoning the team is using.
Recover the Logic Graph
A useful review habit is to draw the update as a small graph before editing it:
latency = 340 ms ── therefore ──> pause at 25%
error rate = 0.6% ── but ──> latency still blocks progress
p95 < 300 ms ── if ──> continue
old-client check complete + rollback ready ── provided that ──> widen
The arrows are not interchangeable. If you replace therefore with because, you reverse the direction:
We will pause at 25% because p95 latency is 340 ms.
This is also correct, but it starts with the action and then gives its cause. Choose the order that fits the reader's task. A reviewer scanning evidence first may prefer The latency crossed the limit, so we paused. A decision log may prefer We paused because latency crossed the limit.
Similarly, a condition is not a consequence:
We will continue if p95 returns below 300 ms.
This does not say that p95 will return below 300 ms. It states the rule for the next decision. The distinction matters when a reader treats a planned action as a promise.
Common Confusions
Confusion: because and so are interchangeable
They can describe the same event from opposite directions, but they organise the sentence differently:
We paused because p95 reached 340 ms.
P95 reached 340 ms, so we paused.
Use because when the action or conclusion is already known and you want to justify it. Use so when the evidence should lead the reader toward the consequence. Do not use both for the same relation unless you are deliberately repeating the logic.
Confusion: a green metric cancels a red metric
The error rate is within budget, but p95 is above the limit keeps both facts visible. A contrast does not mean that one metric is false. It tells the reader that the first positive fact is not sufficient for the decision.
Confusion: a conditional sentence is a guarantee
We can widen if the canary stays healthy states a permission rule. It does not guarantee healthy traffic, complete observability, or a working rollback. Add the signal and the failure path when the decision is consequential:
We can widen if error rate stays below 1% and p95 stays below 300 ms; otherwise, we will hold at 25% and investigate.
Confusion: adding connectors makes an update precise
This sentence has several connectors but weak reasoning:
Because the dashboard is green, therefore we can continue, although there may be issues, if everything is okay.
The connectors do not name the evidence or the boundary. Repair it by splitting the relations:
The dashboard shows no alert, but it does not include old-client failures. Therefore, we will hold at 25%. We can widen if the compatibility check is complete.
Synthesis Example: From Raw Notes to Decision
Raw notes from the release channel:
10%: errors 0.4%, p95 220 ms, old clients checked.
25%: errors 0.6%, p95 340 ms, rollback ready.
After warmup: p95 260 ms.
50% proposal: old-client check not complete.
Step 1: state the cause or evidence
At 25%, p95 latency reached 340 ms because the cache was still warming.
Use because only if the team has evidence for that cause. If warmup is a hypothesis, write possibly because the cache was still warming or keep the cause out of the decision note. A connector cannot turn a guess into evidence.
Step 2: state the consequence
Therefore, we paused at 25% until the warmup period finished.
The consequence follows the stated evidence. It is not an emotional reaction such as “the deploy looked bad.”
Step 3: preserve the contrast
The error rate remained below 1%, but latency still crossed the 300 ms boundary.
This prevents the green error metric from erasing the red latency metric.
Step 4: state the conditions for the next action
We can continue if p95 stays below 300 ms, provided that rollback remains ready. We will not widen the canary unless the old-client check is complete.
The final note is now auditable:
At 25%, p95 reached 340 ms because the cache was still warming. Therefore, we paused until warmup finished. The error rate stayed below 1%, but latency crossed the 300 ms boundary. We can continue if p95 stays below 300 ms, provided that rollback remains ready; we will not widen the canary unless the old-client check is complete.
This version is not a promise about the final rollout. It is a bounded record of what the team observed, decided, and will check next.
Retrieval Check
Check: Which sentence puts the cause after the action?
Because the queue was full, we paused the worker.We paused the worker because the queue was full.
Think first, then reveal.
Answer: Sentence 2. The action comes first and because supplies its reason. Both sentences express the same causal direction; the order changes the emphasis.
Check: The error rate is 0.4%, but p95 is 340 ms. Which update preserves both facts and the decision?
The canary is healthy, so we will widen it.The error rate is within budget, but p95 is above the limit, so we will pause.
Think first, then reveal.
Answer: Sentence 2. It uses contrast to keep the metrics together and consequence to connect them to the pause.
Check: Which sentence describes a prerequisite rather than a guarantee?
We will widen the canary provided that the old-client check is complete.The old-client check is complete, so the rollout cannot fail.
Think first, then reveal.
Answer: Sentence 1. Provided that states the condition for permission. Sentence 2 overclaims what one successful check can prove.
Transfer Challenge: Repair the Decision Note
A teammate posts this update:
The error rate is good because p95 is high, however we can continue, although the compatibility check is missing, if rollback is ready.
Repair it in three or four sentences. Keep these facts:
- the error rate is 0.5%, below the 1% budget;
- p95 is 320 ms, above the 300 ms boundary;
- the compatibility check is incomplete;
- rollback is ready.
Your version should:
- use one cause connector only if you have evidence for a cause;
- use
butorhoweverto preserve the metric contrast with correct punctuation; - use
thereforeorsofor the pause consequence; - use
unless,if, orprovided thatto show the condition for widening; - avoid saying that rollback readiness guarantees a successful rollout.
One possible answer:
The error rate is within budget, but p95 is 320 ms, above the pause boundary. Therefore, we will hold at 25%. Rollback is ready, but we will not widen the canary unless the compatibility check is complete.
Notice that the answer does not invent a cause for the latency. It records what is known and makes the missing prerequisite visible.
Daily Practice Lines
- The error rate is within budget, but p95 is above the limit.
- We paused because latency crossed the boundary, so we will continue if it returns below 300 ms.
- We will not widen the canary unless the old-client check is complete.
The second line deliberately reuses the cause-and-consequence path from lessons 001–002. Say the three lines once with the canary context, then replace one noun: worker, queue, or migration. Keep the relation unchanged while the technical object changes.
What Comes Next
This review closes the first decision cluster: why something happened, what followed, what remains true despite a competing fact, and when an action is allowed. The next lesson adds time and sequence connectors such as when, before, after, and once. Those words will add an ordering edge to the same logic graph. They should tell the reader when a check or action occurs, not replace the cause, consequence, contrast, or condition you can already state.
Trade-offs and Limits
The trade-off is between compression and auditability. A single sentence can be efficient when the evidence and action are simple. When several signals disagree, splitting the update into cause, consequence, contrast, and condition makes it easier to review and less likely that a green signal will hide a blocking one.
Connector choice also changes agency and confidence. We paused because... assigns a decision and its reason. The latency rose, so we paused foregrounds the event. We can continue if... states a policy, not a prediction. Use the shortest form that preserves the relation the reader needs.
These connectors do not supply missing monitoring, prove causation, or replace a rollback plan. If the evidence is incomplete, say so. If two claims are merely adjacent rather than related, use separate sentences. Precision comes from the facts and the boundary, not from adding more linking words.
Resources
- [ARTICLE] Cambridge Dictionary Grammar - Review coordinating conjunctions, subordinating conjunctions, linking adverbs, and conditional clauses.
- [ARTICLE] Microsoft Writing Style Guide - Review concise technical sentences, explicit actors, and transitions that keep the decision visible.
Key Takeaways
- Label the relation before choosing a connector: cause, consequence, contrast, or condition.
Becauseandsocan describe one causal path from opposite starting points; choose the order that helps the reader.- Contrast keeps competing facts visible; it does not cancel one metric or prove causation.
- A condition states when an action is allowed or blocked; it is not a guarantee of success.
- A strong engineering update lets another reader reconstruct the evidence, decision, remaining risk, and next guard.
← Back to Technical English: Connectors and Phrasal Verbs