I still don't agree with the 80 characters per line rule. That's an old relic rule from the 70s and 80s. In the time of wide screen displays, 1080x1600 resolution, there is no really need to cut off your code at 80 chars per line.
I'd rather have code that goes a 100-110 chars per line, then having a line cut off, just to have only few characters in the second line; as it makes it harder to follow thru code.
Sure, at over 110-120 chars, it is time to cut that line in two, but at 80, no need.
Just because my display is 1440 pixels wide doesn't mean that I want my IDE to take up all of it! The average line of code is much less than 80 characters wide, so if you want to increase the width to 120 characters, you have to increase the width of your IDE, and that means that you have even more wasted display space (all those lines that are only 20-40 characters wide).
Personally, I keep an 80-character terminal, wrap the majority of my code after column 72, and that frees up the rest of my display for a web browser, where I can read documentation, search for algorithms, check my prototypes, etc. I also like to have other terminals open where I read manpages, SSH to other boxes for various reasons, run small code snippets in an ipython shell, perform operations on my filesystem, interact with git, etc. That's not to mention having an IRC/IM client open, a music player, and more.
Sorry if this reply seems to be dragging on, but I really want to point out that when I'm programming, I'm doing a lot more than living in my IDE, so using my full display because some people want to have 120-character-wide lines is really annoying.
The 80 chars per line rule goes back way beyond the 70s and 80s. It comes from typesetting. If lines are too long, you lose your place when your eye moves on to the beginning of the next line. Many years of experience showed that about 70 chars per line was optimal for text. It might be slightly different for code.
I don't read code like I read prose. A line of code tends to be a logical unit. For example, breaking up arguments passed to a function across multiple lines, just because you break the 80 char rule, doesn't make sense.
Correct me if I'm wrong but I think the origin of the 80-character width in computers is actually from the width of the first punch cards. AFAIK it was just an arbitrary decision not related to typesetting. The optimal width generally quoted by typesetters is 66.
Yes, that's true. I was referring to the custom of cutting lines at about that length, not where the specific number 80 came from. Though in fact the 80 char convention probably wouldn't have made it past about 1950 it hadn't been a reasonable upper bound for lines of prose.
I'd rather have code that goes a 100-110 chars per line, then having a line cut off, just to have only few characters in the second line; as it makes it harder to follow thru code. Sure, at over 110-120 chars, it is time to cut that line in two, but at 80, no need.