Hacker News new | ask | show | jobs
by notacoward 4004 days ago
As typesetters have known literally for centuries and human-factors folks have confirmed since, there is a number of characters per line that is optimal for reading. Shorter than that, and you're going back to the beginning of the next line too often. Longer than that, and going back is too hard. Either one disrupts concentration, even if we're only talking about tiny fractions of a second.

Is 80 columns exactly right? Probably not. From what I've read, the ideal is probably a bit shorter. In any case, having a standard that's in the right ballpark is a good thing. There will always be some complainers, but 80 columns seems pretty good for most people. It's nothing to do with punch cards, except that their design was probably influenced by the same ergonomic principles.

1 comments

When talking about ease of reading, one important nuance is to not to confuse "characters per line" with "columns per line"--whitespace doesn't matter.

Applying a block indent doesn't increase the number of printed characters per line. And consider multi-column text as seen in newspapers--generally the principle is that it's the width of the text that matters, not where the column is located on the page.

Generally, the layout of characters within a block of text is directed to the task of reading within a passage. The layout of blocks on the page/screen is more about conveying larger structure and toward the task of seeking/navigating among passages.

It's true that indented code is different than text, but I don't think it's different enough (or in a way) to affect the conclusion. Indented blocks don't go on forever before the eye must seek back to the beginning. Width limitations help reduce "indentation creep" which is bad for its own reasons. Block comments (including those extracted for documentation) are often full width. For these reasons and more, a column limit yields more readable results.