It lacks commentary 😉
Please don't take this rant as a personal attack; you're not the only guilty party. I've even written a lot of code that's not as well-documented as it should be. It was especially bad when I had less experience, and when I worked only for myself.
Seriously, though comments might help. I don't know if you plan first, or just sit down & hack, or what; since I've been doing more programming in my new job than my last one (and typically more complex issues involved), I'm back to old-school design documentation and flow-charts, transfer of logic to the script comment fields, then code, and then debug by sections. I don't get "stuck" much - well, not generally to the point where I have to come post on the forums, that is.
It certainly helps if you're going to have others try to read/interpret your code for themselves. Yes, we have to analyze code all the time; no, we don't necessarily want to come here and do it for free 😉 You'd probably save time for us, at least, by putting a tad more into it yourself.