Tech support often suggests “turning it off and back on again” as a solution, which may seem basic. But in reality, many software problems arise from managing complex states that programmers didn’t predict. Users can inadvertently cause errors by clicking or refreshing, leading to crashes and freezes. The simple act of restarting a program can reset it to the intended state, fixing issues. Sometimes, more extreme measures are needed, like deleting data folders or clearing storage, to reset a program completely. Admitting human limitations and providing a reset option can be a brilliant way to simplify complex software problems. Mozilla’s “Refresh Firefox” feature is an example of this, offering an easy way to start fresh when needed. Predicting and testing for all possible software states is impossible, making a reset option a practical solution for dealing with complex software issues.
https://nolanlawson.com/2020/12/29/programmers-are-bad-at-managing-state/