Journal

Notes from the bench.

Design choices, calculations and lessons from robotics, embedded systems, industrial automation and software. Follow a worked example, investigate a failure or look inside one of my projects.

30 posts

Slow down to speed up: the engineering case for an unhurried start

Rushing the first week of a project feels productive and usually costs the most time later. Why I spend longer on the problem before touching the solution, with NASA's cost data behind it.

Why a rover's position gets worse the further it drives

A 0.1% difference in wheel diameter puts a differential-drive robot 0.17 m off after 10 m and 0.67 m off after 20 m. The maths behind odometry drift and the calibration that fixes most of it.

Testing a document-grounded AI one stage at a time

When a retrieval-augmented system gives a wrong answer, the cause can sit in the index, the retriever, the model's reading or the final answer. How I test each stage separately so the failure points to a fix.

Test the robot when the data stops

A practical ROS 2 fault-injection plan for stale observations, delayed commands and controlled recovery, with an illustrative stopping-distance calculation.

The second life of a product

What a product reveals about its design when someone needs to open it, find a part and put it back into service.

In praise of the volume knob

A small control raises a larger design question: how much attention should an everyday adjustment demand?

A smooth sensor trace can hide real motion

How an 80 Hz signal becomes indistinguishable from 20 Hz when sampled at 100 samples per second, and what to check before trusting a trend.

99% accuracy can still miss every defect

A worked inspection example showing why defect recall, false rejects and review workload belong beside the headline accuracy score.

The experience trap: when hiring protects the past

Years in a role can tell us something. They cannot tell us everything. A case for assessing capability, supporting graduates and rewarding people who keep learning.

A noisy sensor needs a decision rule

How hysteresis, debounce and explicit states turn a fluctuating measurement into a useful event without hiding the timing cost.

A local app needs a way back

Why offline use, saved data, export and recovery need separate acceptance tests in a small personal or business app.

Contact

Let's make the next system work.

Discuss an engineering role, a project or a research collaboration. Tell me what you are building, where it gets difficult and what a useful result would look like.

  1. Send the formIt is sent from this page, without publishing my email address.
  2. I reply to youTo the address you give, with questions or a next step.
  3. Project work starts with DefineA short, fixed-fee phase that sets the scope and the tests.

0 of 4000 characters

Sent from this page, so my email address is never published.