I observed that discussing with your self about a problem is a fairly common practice. I find it is even better to write what you think. Not only it forces you to materialize your problem, but the written material can serve you as a log for future reference.
I have been trying different ways to log my self chatter, I created a gtalk account to whom I would talk to. But I found that this way I would ways have to set a lot of context before going to the problem. Made a small script where I would just append a text, properly dated, into the end of a journal file in the current working directory. By being in the project directory I would set part of the context I was in, and it would even leave some information to project contributors. I started to like this method, and I was about to improve over my script, but then I thought that maybe this is a solved problem.
Some people like to blog. I tried that, but post are generally a synthesis of the whole story, and most of the time I would forget pieces that were relevant. I could be more atomic. Tweeter would seem a better fit for it, but then it falls into the context argument I described above.