-
Get as much of factual information surrounding the problem.
- Operating System
- Software Version
- Specific Program to Run
- Environment Setup
- Intention / Motivation of the action
-
Provide workaround.
If could not identify problem through the first step, focus on suggest the workarounds to solve the immediate pain,
then spend time in replicating the problem on own system (in order to start solving the problem).
The one and most important idea to not have in mind is
- It's working on my system.
- But I don't see it on my side / I have no problem on this.
- Why is this a problem?
- Why are you doing it that way?
There are multiple reasons why a program might not be working on other system but working on your system.
Do not simply brush off/demotivate audiences based on how it supposed to run / work by its nature.
Down to the fundamentals, people are asking questions because there's obviously something wrong with it.
Most important is to identify the root cause of the problem.
Below lays the process of how to quickly find the pain point
Get as much of information surrounding the problem
1. Operating System
- Window
- Ubuntu
- Centos
- Linux
Note: Different operating system might introduces different problems even running the same program.
It might be due to
- lacking of dependencies on this specific OS
- The program could not run on legacy OS
- Library introduce new bug on the OS which was not found on testing
2. Software Version
- Editor Version
- Repository Version
- Dependency Version
Note: Any dependencies supporting the program will affect the running of it. Some of the examples are:
- Older editor (Example: Intellij) with known bug for a problem
- Repository are not of latest build which the bug has been solved in the latest update.
- Dependency of different variants and versions which were not supported by the program
3. Environment Setup
- Intention / Motivation of the action.
Identify what's the intention of the action or which program's user wants to run.
This can narrow down the scope of searching.
On some occasions, we can also suggest a better way of execution after truly understands the intention behind the action of doing something.
If could not identify problem through the first step, focus on suggest the workarounds to solve the immediate pain,
then spend time in replicating the problem on own system (in order to start solving the problem).