Adding vertical white space is a good idea if you have a 300-line routine. A much better idea is to factor out the conceptual chunks into reasonably-sized routines.
I try very consciously to add whitespace between "paragraphs" in my programs,
and to order the code into reasonable "paragraphs" and "subsections", usually
flagged with additional comments as to the purpose of the following section.
You can see evidence of this in
my columns.
I also tend to minimalize the comments to just those things that carry context.
I try to let the Perl code speak for itself, and don't define anything that they
can get from a perusal of the first half dozen entries in perldoc perl.
But if I have an algorithm, or a dependency that wouldn't necessarily be obvious,
that becomes the comment.
-- Randal L. Schwartz, Perl hacker