Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

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.

I thoughts?

tweet

share|improve this question
    
Get a dog and talk to him. They're usually very good listeners. –  user8685 May 29 '11 at 14:36
    
@Developer Art: Why not a cat? Cats are calmer ;) –  user2567 May 29 '11 at 15:46
4  
@Pierre 303: Cats don't take you seriously. A dog will. –  user8685 May 29 '11 at 17:03

2 Answers 2

Get a rubber duck. But seriously, don't overthink that, or you will lose the benefits of this technique. Also take into account that such journal probably won't be useful to anybody except you, so don't treat it as a substitute for comments, commit messages, and documentation.

share|improve this answer
1  
+1 rubber duck - the original "pair programming"; except the duck bathes more often –  Steven A. Lowe May 29 '11 at 17:11

I don't know about specialized tools, or that they are necessary.

I keep a development log file as part of the project, to track what i did and why and what i was thinking and open issues and what to do next. It makes it easier to switch between projects. I start a new file for each project revision.

I also keep a separate Issues document for each revision, and put open issues in it - things to investigate, alternatives not considered, problems that might come up later, compromises that were made that might have to be unmade, et al.

(I tried talking to the office cats, but they really don't care.)

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.