1.) Describing the Problem 
- Try understanding what is happening.
- Then compare it with the you actually want it to happen.
- Finding the difference will help you find the bug more easily.

- Try understanding what is happening.
- Then compare it with the you actually want it to happen.
- Finding the difference will help you find the bug more easily.
2.) Reproducing the Bug 
- Try to recreate the bug, because when you encounter it once but don't encounter it the next time. That becomes very difficult to identify the bug.

- Try to recreate the bug, because when you encounter it once but don't encounter it the next time. That becomes very difficult to identify the bug.
3.) Play Computer 
- Try to pretend to be the computer and imagine the execution of the code.
- Many a times it becomes easy that way.
- Try carrying out the execution on paper or white board.

- Try to pretend to be the computer and imagine the execution of the code.
- Many a times it becomes easy that way.
- Try carrying out the execution on paper or white board.
4.) Fixing the Errors 
- Before moving any further while coding, try to fix all the errors that your compiler or text editors shows.
- This can also reduce the possibility of producing any bugs.

- Before moving any further while coding, try to fix all the errors that your compiler or text editors shows.
- This can also reduce the possibility of producing any bugs.
5.) Print 
- Print statements are your friends, try using them to your advantage.
- Use multiple print statements in between code execution.

- Print statements are your friends, try using them to your advantage.
- Use multiple print statements in between code execution.
6.) Debugger 
- Time to bring out the big gun ;)
- Debugger is like you putting a print statement on all the variables of your code.
- And you can isolate a particular time point, to see what each of the values are.

- Time to bring out the big gun ;)
- Debugger is like you putting a print statement on all the variables of your code.
- And you can isolate a particular time point, to see what each of the values are.
7.) Take a Break 
- It's REALLY, REALLY important when you're just staring at the code and you keep looking at it, it's not going to tell you the solution.
- Just have a cup of tea or have a nap, or just go to sleep and try to tackle it tomorrow.

- It's REALLY, REALLY important when you're just staring at the code and you keep looking at it, it's not going to tell you the solution.
- Just have a cup of tea or have a nap, or just go to sleep and try to tackle it tomorrow.
- You will be surprised just how much easier things are when your brains had some downtime and then you come back to it.
- Everything seems so much more obvious.
- Everything seems so much more obvious.
8.) Ask a Friend 
- And if you really, really get stuck and you just can't see it, ask a friend, not your friend print, but your actual friend, a real human. Preferably a developer, but they don't have to be.

- And if you really, really get stuck and you just can't see it, ask a friend, not your friend print, but your actual friend, a real human. Preferably a developer, but they don't have to be.
- The really good thing about asking a friend to look through your code is they won't make the same assumptions that you've made. So they have some fresh eyes that they can look at the code with, and it might be incredibly obvious what's actually happening.
9.) Run Often 
- Don't wait until you've written loads and loads of code to hit run and then find out you've got loads of snags and loads of bugs.
- But run it after every little execution.
- Once you feel like you've changed the program ever so slightly, run it and check.

- Don't wait until you've written loads and loads of code to hit run and then find out you've got loads of snags and loads of bugs.
- But run it after every little execution.
- Once you feel like you've changed the program ever so slightly, run it and check.
10.) Stack Overflow 
- I've saved this for last because you really don't want to take every single small bug of yours to Stack overflow.
- It's really designed as a way of asking other developers when you think that you've come across a bug or an issue that should be unique.

- I've saved this for last because you really don't want to take every single small bug of yours to Stack overflow.
- It's really designed as a way of asking other developers when you think that you've come across a bug or an issue that should be unique.
- Now, if you think that your issue isn't unique and other people should have encountered this, then just search Stack Overflow.
- If you really think that nobody in the world has had this issue that you are having right now, then that's the moment to ask the question there.
- If you really think that nobody in the world has had this issue that you are having right now, then that's the moment to ask the question there.
Hope you find these tips helpful 
You can add a few more if you like

You can add a few more if you like
