Some of the most important tools for programmers are pen and paper..

Start designing your app from there, and don’t just jump directly into coding.. no need to draw fancy diagrams or detailed flowcharts.. it can be as simple as drawing some stickmen, arrows and rectangles that are connected together to provide at least a general overview on how your system is connected.. and once you have the big picture.. coding should be easier and less buggy.

And of course I am talking about relatively small apps/side projects, much bigger projects may need a more formal approach, and you can use specialized apps as well. But my point is even a single paper that contains a basic hand drawn sketch can have a dramatic effect on the whole programming experience. So don’t underestimate this part.