liveBook · Manning

Benchmarks and test results

As explained in Writing for Developers: Blogs that get read

A blog post pattern that reports comparative measurements and testing outcomes for products, systems, or implementations.

Benchmarks and test results blog posts use repeated experiments, measurements, numbers, and charts to help engineers compare systems or understand a technical effect. They attract attention because engineers care about numbers, but they also invite skeptical readers to challenge biased, synthetic, or irreproducible claims. section 14.0 section 14.4.1

Choose the purpose before designing the test:

  • Benchmarketing compares a company’s product with its competition, so claims face especially intense scrutiny. section 14.1 section 14.4.3
  • Subtle benchmarketing uses the company’s product to compare another technology, such as cloud infrastructure or hardware. section 14.0 section 14.1
  • Community service measures technologies unrelated to the company’s products and is often perceived as more objective. section 14.1.3 section 14.6

Treat the post as a readable experiment report. State the result upfront, explain why the test matters, specify the environment and method, present results visually, interpret them cautiously, and disclose limitations. Show comparable values side by side, calculate meaningful differences, label whether higher or lower is better, and explain why selected scenarios represent the larger test set. section 14.4.3 section 14.5.5

A reproducible comparison

An AWS Graviton2 comparison states its conclusion early, describes the database setup and cloud machines, lists six benchmark phases, and presents results in charts and tables. Its detailed test specification makes the comparison reproducible while also explaining practical hardware-selection implications. section 14.3.1

A result with a narrower claim

A Rust bounds-checking investigation compares an unchanged program with variants using fewer or disabled checks, counts checks with gdb, and finds results within the margin of error. The defensible conclusion concerns the tested Readyset programs, not bounds checking in every program. section 14.3.5

Make the evidence easy to trust and use:

  • Document hardware, software, workload, configuration, inputs, and test steps so readers can reproduce the result. section 14.3.1 section 14.6
  • Use charts and tables that tell one clear story, justify their visual space, and avoid overstating the underlying data. section 14.4.1
  • Keep improving the post as criticism reveals assumptions, limitations, or opportunities for further tests. section 14.6

How Writing for Developers: Blogs that get read covers it

How deep it goes
Explains experiment design, reproducibility, visualization, interpretation, and limitations, while stopping short of prescribing one universal benchmark method.
Examples
Uses Graviton2 versus Intel, C versus Rust, Redpanda versus Kafka, TCMalloc memory use, and Rust bounds-checking measurements.
What it assumes
Assumes access to a measurable technical system and enough testing knowledge to specify workloads, environments, metrics, and limitations.
What you can do after
Evaluate/understand it by designing reproducible tests, presenting clear comparisons, interpreting results cautiously, and revising claims under scrutiny.
How it connects
Connects to Bug Hunt, Non-markety Product Perspectives, How We Built It, Lessons Learned, benchmarking, profiling, and reproducibility.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Writing for Developers: Blogs that get read. The section links point to the parts of the book it draws on.