Steve Bennett blogs

…about maps, open data, Git, and other tech.

Tag Archives: process engineering

Introducing: Cooking for engineers

Here’s what I hate about recipes:

  1. They’re delivered as unstructured narratives.
  2. They mix identifying information (“carrots”) with process information (“thinly sliced”)
  3. They’re overly specific (3/4 of a teaspoon, does it matter?)
  4. They have too many ingredients, and you don’t know which ones you can leave out
  5. They always have one or two ingredients you wouldn’t have lying around. Shrimp paste?

I can’t fix all of that. But here goes:

Cooking for engineers: spicy cauliflower and almonds

"Cooking for engineers" version of a sicy cauliflower dish

A cauliflower dish I made up the other night, seen by an engineer.

Recipe for non-engineers

Here’s what a conventional version of that dish might look like:


1/2 cauliflower, chopped

1 bok choi

1 tbsp coriander, chopped

1/2 cup slivered almonds

1 tbsp ground turmeric

1 tbsp mustard seeds

1-4 tsp chilli powder, to taste

Put 2cm of water in a saucepan and bring it to the boil. Simmer the cauliflower 2 minutes, then drain, discarding the water. Add half the sesame oil, and return the cauliflower to the saucepan.

Meanwhile, heat the rest of the sesame oil in a frying pan. When hot, add the slivered almonds and remove from the heat, stirring continuously. Once browned, add the almonds to the frying cauliflower, and add the spices. After a few minutes, add the bok choi. Stir frequently until the bok choi is soft, then serve with rice and roti bread.

Principles of cooking for engineers

Here are the rules:

  1. One column per preparation dish (saucepan, mixing bowl, tray…)
  2. Red arrows show cooking. Maybe thicker arrows for hotter.
  3. Ingredients start off to the sides. Name of thing in bold. Quantities as rough as appropriate, in parentheses.
  4. Thin blue arrows show transfer of stuff.
  5. Text between two black lines means “keep doing the thing above until this happens”
  6. Stuff you need to do (processes) in square boxes.
  7. Collapse stuff down wherever appropriate. It’s a communication tool, not an exhaustive process analysis.

Explaining step 7: the diagram above could have shown a colander as another column, with cauliflower transferred from the saucepan to the colander and back. But why would you do that?


Normal recipe format works pretty well for most people, but I find it takes multiple readings before I can start. Effectively, I’m constructing this kind of flow chart in my head, working out what gets transferred from where, to where. I hope that a refined version of this diagramming methodology would allow you to confidently dive straight in, with no nasty surprises.

On the downside, diagrams are hard to manage. I realise I forgot an ingredient (crushed garlic and ginger paste), but it’s time-consuming to modify the diagram and re-upload.

And lastly, yes, it’s a bit facile to call this “cooking for engineers”. Probably real engineers want precise measurements, correct use of flow control symbols and so forth.