<aside> ⌚ 3 mins
<aside> 🖊️ April 2022
<aside> 🔧 April 2022
These are the basic principles for all engineering. Kind of works for everything really.
Requirements are always dumb, especially if they’re written by an extremely smart, technical person. In these cases they’re often not interrogated enough and accepted verbatim. But really, if you can’t explain the requirements to a five-year-old, they’re not sharp enough.
All requirements and constraints must be linked to a person who takes accountability for them, not just a pie-in-the-sky figure. You must always be able to track down the author, who can defend it or change it as needed.
This applies to developing a fibre-optic sensor as much as it does to your daily life. Instead of saying I want to be 10% body fat by doing X/Y/Z (too prescriptive), just say “I want to be less fat, and here’s the systems I will employ to do it.” Flexibility and agility are key to good requirements.
Strip everything back to the bare basics. Delete everything that’s not absolutely essential. You should find yourself occasionally adding things back in, and if you’re not, you haven’t deleted enough in the first place.
When doing something difficult, you need to run tight margins of profitability and error. Failure to do so reduces your chance of achieving your goals. You can’t be hedging your bets against yourself.
There’s a strong human bias towards “let’s add this just in case we need it”, but these “just in case” arguments are ubiquitous. Kill that. Burn it with fire.
Launching a rocket to Mars? Figure out exactly what’s needed fuel wise for payload-to-Martian-orbit and only account for that. Need more fuel to get there? Then figure out how to refuel in Earth orbit before accelerating to Mars.
Trying to adjust your diet? Figure out your calorie/macro limit to achieve your goal, track everything that goes into your body, and eliminate anything over that - or add back in if not hitting the goal.
See the similarity?
Follows on and ties into Principle 2.
Always be asking “is this necessary to achieve the goal?” Make everything as simple to follow as possible, so that the aforementioned five-year-old can figure it out. If it’s too complicated, it will break - without fail.
Like above, ideally we would always be asking “should this thing even exist?” There is no greater waste of resources than trying to optimise something that belongs in the trash. It’s going in the bin anyway, just speed it up and put it there (see rule 4).
Consider your work - do you really need to be juggling 20 balls at the one time, or are you just doing a crap job at all of them? Rule 3 has been violated. Eliminate the banal tasks, prioritise the important ones, simplify the workflow.
Consider all your relationships - are you attempting to optimise (ie; expending time, energy) for a friendship that no longer serves you? Rule 3 has been violated. Eliminate.