Breaking down the problem in stages is an essential process to describe the problem in words. Once you understand and are able to describe the problem, you can find the solution to fix it. When you run the program, you can look at the console and see how the values are changing to getting set too null. Sometimes it is helpful to print a fixed string before printing variables.
When you are in doubt, always start with the code that works. Beginners are more of a hacker than a software engineer. It’s best to start with an existing structure and tweak it to meet your needs. You need to make sure that you run the code before making any changes to it.
Everytime you encounter an error, Google should be the first resort. There are a great chances that you will find answers for your error on StackOverFlow or similar forum. You need to ensure that you read the question on StackOverFlow and check if it is similar to yours.
Every language offers a way to comment the code. You can take advantage of this and temporarily comment out the code that you don’t want to lose track of. This works by putting the comment character for your language at the start. If your script is long, you can commend parts of the code that are unrelated to the specific changes you are working on. You need to make sure to remove the comment character so that it turns back into instructions when you are testing other sections.
The more code you have, there are more places you need to check for error. As your project grows past a few dozen lines of code, it gets difficult to find out where errors are happening. It is helpful to perform binary search on the section that is not executing as expected. On a high level, a binary search involves splitting something in half and searching each of the halves for the error.