3 minutes read

Pilots and programmers both face similar challenges when it comes to dealing with critical issues mid-flight or mid-project. Both professions require quick thinking, problem solving, and the ability to manage stress in high-pressure situations.

When a critical system fails in flight, pilots have limited time to assess the situation and make decisions that could mean the difference between life and death. They must be able to quickly assess the problem, determine the potential impact, and prioritize actions to resolve the issue. This requires clear communication, effective decision-making, and the ability to remain calm and focused under pressure.

In programming, under most of the circumstances we don’t have life death situation when it comes to critical systems during a project, but stakes can be just as high. A bug that goes unaddressed could mean a delay in the project, a decrease in quality, or even a security vulnerability that could compromise the system. Like pilots, programmers must be able to assess the problem, determine its impact, and prioritize actions to resolve the issue.

The concept of “burst mode” can be applied to both professions. In burst mode, a person focuses all their energy and resources into solving a problem as quickly and effectively as possible. This mode is often used by pilots when they encounter an emergency and need to resolve the issue before it becomes a more serious problem.

Similarly, programmers can also use burst mode when they encounter a critical issue during a project. By focusing all their attention and resources on the problem, they can resolve the issue quickly and move on to the next task.

So how do we debug like a pilot? Let’s go ahead and do this activity:

Activity

Requirements: Any bug you’re working with.

Time Needed: 10-40 minutes

Repeat: With every bug you encounter

Steps:

  1. Timebox the problem analysis: Allocate 5 minutes to analyzing the root cause of the issue. If the root cause cannot be found in that time, record number of 5 minute bursts it took you to figure out the issue and move on to the next step.
  2. Timebox the solution planning: Allocate 5 minutes to planning a solution to the issue. If a solution cannot be planned in that time, record it the number of 5 minute bursts.
  3. Implement the solution: Once a solution has been planned, implement it in a controlled and careful manner, testing it thoroughly to ensure it resolves the issue again time-boxing it like first and second steps with 5 minute bursts.
  4. Review and reflect: After the issue has been resolved, take the time to review what worked well and what could have been improved in the process. You can create a simple matrix, as shown below:
AnalysisSolution PlanningImplementation
No. of bursts533


So overtime you can improve your bursts count, the lesser the better. It’s basically number of times you’ve crashed your plane before figuring out and resolving the bug.

By using this above technique, you can focus your energy and resources on resolving critical issues in an efficient and effective manner, ensuring the success of your projects. The timeboxing technique helps to keep the process structured and manageable, while the step of reviewing and reflecting allows for continuous improvement.

No responses yet

Leave a Reply

Your email address will not be published. Required fields are marked *