Style Rules Are Enforced by Scripts, Not Statements

Alexander Chua
7 min
Style Rules Are Enforced by Scripts, Not Statements

The short version

  • We had a written house rule against em-dashes. An audit of 200 published posts found 2,801 of them.
  • The rule had been stated, repeated and agreed. None of that enforced it.
  • Style rules survive as scripts, publish gates and linters. Anything relying on memory decays as soon as volume rises.
  • Write the checker the same day you write the rule, or accept that the rule is a preference.

We have a house rule against em-dashes. It is written down. It has been restated in feedback more times than I can count, and everyone who writes for us knows it.

An audit of 200 published posts found 2,801 of them.

What that number actually says

Not that people ignored the rule. Most of those posts were written by people who could have recited it.

It says the rule had no mechanism. It existed as a statement, and a statement competes against deadline pressure, against the writer’s own habits, and against the fact that an em-dash is genuinely convenient. Under that competition, memory loses. Every time.

Enforcement mechanismWhat happens over 200 posts
Written in a style guideViolated thousands of times
Repeated in feedbackCorrected in the piece being reviewed, nowhere else
Checked in reviewCatches maybe the ones the reviewer notices
Script in the publish pathZero violations, permanently

What we do now

The rule and its checker get written the same day. If a rule cannot be expressed as a pattern, it is not a rule, it is a preference, and it goes in the taste document rather than the gate.

Objective rules block: banned characters, missing required frontmatter, absent sources. Judgment calls warn: word count, link count, heading depth. A gate that blocks on subjective rules gets switched off within a month, and then nothing is enforced at all.

If a rule cannot be expressed as a pattern, it is not a rule. It is a preference.

Fixing the existing violations

This part is worth being careful about, because the obvious approach makes the writing worse.

A global find and replace of an em-dash with a comma produces comma splices throughout, because roughly a third of those dashes were joining two independent clauses. What the sweep actually did was classify each one: independent clauses became separate sentences, appositives became paired commas, and dashes introducing a quotation became colons.

That took a contextual script and a spot-check of the diffs. A blanket replacement would have been faster and would have degraded 200 posts at once.

Why does this generalise?

The em-dash is trivial. The pattern is not.

Every standard we care about had the same problem when we looked. The same audit found zero structured data, zero internal links between essays, and one table across the entire library, all against a documented content standard that everybody had read. Volume exposes the gap between a rule and a mechanism, and it does it silently, which is covered in volume without structure is invisible.

There is a second-order effect worth naming. Once a rule is mechanical, it stops consuming attention in review. Nobody scans for em-dashes any more, which means the review can spend its whole budget on the things a script cannot judge: whether the argument holds, whether the evidence is real, whether the piece says anything. Automating the objective rules is what buys room for the subjective ones.

The lesson we took: write the checker the same day you write the rule, and run it in the publish path rather than the review. Otherwise you are not enforcing a standard. You are hoping for one, and hoping does not scale past about twenty pieces.

Frequently asked questions

How do you enforce writing style rules across a large content library?

With a script that runs at publish time, not with a style guide. We had a documented rule against em-dashes and found 2,801 violations across 200 published posts. Stating a rule does not enforce it. A checker in the publish path does.

What should a content style checker look for?

Whatever your house rules actually are, expressed as patterns: banned punctuation, banned phrases, heading depth, minimum word count, presence of required frontmatter such as sources or FAQs, and internal link count. Start with the rules you have repeated most often, because those are the ones being broken.

Should style enforcement block publishing or just warn?

Block for objective rules such as banned characters or missing required fields. Warn for judgment calls such as word count. A gate that blocks on subjective rules gets disabled within a month.

How do you fix existing violations at scale?

Contextually, not with a blanket find and replace. When we swept 2,801 em-dashes, independent clauses became separate sentences, appositives became commas and quote introductions became colons. A single global replacement would have produced comma splices throughout.

Why do documented style rules get ignored?

Because they live in a document nobody opens during the work. The rule competes with deadline pressure and with whatever the writer's own habits are, and habits win unless something mechanical intervenes.

Is automated style checking worth it for a small content operation?

Yes, and it is cheaper at small scale. A checker written when you have twenty posts costs an hour. Retrofitting one across two hundred posts means also fixing two hundred posts.

Sources

  • Chua Network delivery data across 8 client accounts (internal fact bank)
  • Chua Network engagement records, anonymized (internal experience bank)
Alexander Chua

Alexander Chua

Co-Founder, PipelineRoad. Building companies and observing the world across 40+ countries. Writing about company building, go-to-market, capital formation, and the lessons in between.

More about Alexander

Newsletter

Chua Network Letter

Occasional essays on company building, global observations, and clear thinking. No spam. No SEO bait.