A really nice read. I'd also suggest treating one's life as a debugging session once in a while… A few choice `printf` insertions and re-running can sometimes make a world of difference. :)
It's really nothing sophisticated. It's just stepping back once in a while and looking at what's not working, trying again while changing something small and noting what does work. Surely, you already do this at some level.