← Work 9 min read Applied AI

Why 80% of AI projects fail before they start

It isn't a technology problem. By the time anyone writes a line of code, the outcome is usually already decided.

Opening paragraph. Standard body copy, set in Newsreader at a comfortable measure of about 38rem. The first paragraph carries no special styling — the standfirst above already does the job an intro paragraph would otherwise do, so start straight into the argument.

A second paragraph, to show leading and spacing between blocks. Inline links look like this, inline code looks like reconcile(invoice, agreement), and emphasis and strong emphasis both behave as expected.

A section heading

Section headings sit above a hairline rule, which gives the page a clear scanning rhythm on longer posts without needing numbered markers.

A subheading

Subheadings are set in the display face at medium weight, lighter than the section headings so the hierarchy reads at a glance.

  • An unordered list item, with a verdigris marker.
  • A second item, long enough to wrap onto a second line so you can see how the indent handles it.
  • A third.
  1. Ordered lists use numerals in the same accent.
  2. Useful for the five-mistakes structure this post actually has.
A blockquote, set in italic with a brass rule. Use it for quoting someone else — a client, a paper, a person in a meeting.

A pull quote is a different thing: it's your own sentence, promoted. Use it once per post, for the line you'd want someone to screenshot.

// Code blocks are dark, monospaced, and scroll horizontally
// rather than wrapping, so indentation survives.
const resolved = await agent.reconcile({
  invoice,
  agreement,
  onLowConfidence: escalateToHuman,
});
Describe the image here — this alt text is read aloud and indexed.
Captions are monospaced and quiet. Always write real alt text; it matters for accessibility and it's one of the few places a screen reader gets the diagram.

Closing section

End with something concrete. The last paragraph is where a reader decides whether to look at the rest of the site, so give them a reason.

Written by Jeff Bradshaw — CTO, board director, and someone who still ships code. More at about, or get in touch.

Work described here was carried out at Oxbury Earth. Views are my own.