I personally write out any program that is not a throwaway script on plain paper. Mostly, this is so that I have something to do during the more boring classes, but I actually feel that it has done a lot for the quality of my programs. Generally, when I jump right in and code, a lot of hacks come into the code and it is generally of lower quality. Also, I tend to run into mental walls, and just seem to take more time to finish. Because I write things out, I can see how things are going to turn out, and can form a better structure, and the ability to write notes in the margins is nice. When I tell this to friends however, they just feel that it takes longer as you can actually test written paper, and you cannot move blocks of code around when they are in ink.
Does anyone else write out their programs, or am I pretty much alone in this?