When solving a technical problem, I rarely restart a process or my computer. But when I was less experienced, I did this often. What changed?
I learned something important that I'd like to share today. First, you should try to resist restarting processes, and second, when you feel like you must, be deliberate.
First, it takes time. How long does it take to restart a server? A couple of seconds. What about multiple processes? Another couple of seconds. What about restarting your computer? A minute or two. There is a cost.
Worse, that cost is zero-sum: you can't do anything else because you're finding, stopping, and starting processes, or your computer is offline. Any other problem-solving activity is halted. In a scenario like pair programming where multiple ideas might be on the table, this can be disruptive.
When it does work, what do you learn? It was a guess that inexplicably solved the problem. What's the lesson? What are you going to do next time? What happens in other environments, where restarting may not be an option?