think twice code once
gain context
understand the context of why we are optimising the feature. This will enable you to define the impact of these changes. retrieve all the requirements needed. ask yourself why five times.
assumptions
write down assumptions about what needs to be done and how. have at least two options. limit assumptions to avoid being distracted. you can now stack rank them. evaluate, compromising when needed. repeated this step at least once.
implement
select one option based on the last step.