I learned my tech skills doing desktop support, not server administration. On the desktop side, the tried-and-true mantra is, “Turn it off and turn it on again.” Or, to put it another way, we do everything through trial and error. We think of a possible solution, we throw it at the wall, and we see if it sticks.
Over time, we gain enough experience that we can become better at guessing the solution the first time. This makes us look like we are wizards, because we appear to have very little information about the problem in front of us, and yet we will know exactly what to do. But none of us start out that way.
So I would try things, fail, and then try something else. There’s not too much risk in doing that with a simple desktop computer. There is a whole lot more risk to doing it with a production server, or a major project.
Pushing buttons at semi-random is not the best way to get things done. When you are trying to estimate some work, update a production server, figure out how much of a material you need to order, or coach someone through a challenging situation, trial and error can be disastrous.
One of the things I studied in college was poetry, and with poetry you need to learn the rules before you can break them. The same is true for most types of work. Subsequently, I think that trial and error can be a helpful approach when:
- We aren’t at risk of data loss.
- We’re working with a test system.
- We’re not going to impact an important system/service and its up time.
- It will take less time than research.
- Mistakes can be corrected gracefully and will have no impact on the business.
It is rare that all of those will be true, though, so research and careful planning are a better path forward. It all comes down to risk analysis: if we can reach the correct answer faster and with lower risk by guessing, trying something, and then trying something different if we’re wrong, then that’s fine. But we must always weigh the risks of being wrong and the impact of our failure.