Zooming In and Out

The biggest way I can improve my coding is to step back from the code sometimes. I get lost in the details and forget what the bigger picture is. I need to be able to regularly move between the big picture and details of making the program work. 

Marcus Phillips advises us to gradually progress from an abstract plan to code, making the plan more detailed and code-like at each step. This framework has helped keep me from feeling overmatched by problems.

I am starting to learn that when my code isn't working, and I am just tweaking random things, hoping they'll fix it, without being able to explain to myself why they should fix it, I need to stop thinking in code. I need to draw a picture, or write a sentence, reminding myself what the bigger picture is. Then I can gradually zoom in on that picture until I return to the details of code, with a clearer understanding of what I need to do.

When I was trying to teach myself to program, I thought of programming as just typing stuff in a strange language. Now I see typing code as the step that comes once I have distilled a vague solution to an unclear problem into a series of detailed, very unambiguous steps. It's fun.