DEV Community

Why I keep pestering everyone about long lines

Grégoire Paris on September 09, 2017

When I decided to switch from Eclipse to vim, I remember being apprehensive of the clumsiness I would have to experience while facing vim's suppose...
Collapse
 
alainvanhout profile image
Alain Van Hout

I do the same, but using Intellij I can have the best of both worlds: multiple pages either side by side within the same window, or across my two monitors. I have a preference for the second option, since it combines mutiple pages with lots of screen realestate for each page.

With regard to keeping pestering people about it, though I know the post and title might at partly be in jest, do be aware that software development is typically a team sport, and trying to foirst person idiosyncracies on other people is a sure-fire way to get you on TDWTF.

Collapse
 
greg0ire profile image
Grégoire Paris

What I'm saying, especially with the last paragraph, is that it's not an idiosyncrasy. It's the way human layout text, and programmers should not make an exception with code IMO. Code is still text other humans will need to read, don't make it hard for them.

Collapse
 
alainvanhout profile image
Alain Van Hout

True enough, but that applies equally so to having code statement arbitrarily cut into different lines based on a screen width far smaller than what you (i.e. any other developer than you) are using.

First rule to making a maintainable code-base: make it as easy as possible for the next developer. And that is far more likely to not be you.

Thread Thread
 
greg0ire profile image
Grégoire Paris

No it does not apply equally, see the video I linked to: the width of the text is not based on the width of the screen (I only work on widescreen by the way), it's also not based on the width of a split window, but it's based on the width humans are comfortable reading. I mean look at this blog post: does it spawn all the width of your screen? Why do you think the vast majority of websites does just that?

The point I'm trying to make in this article is that getting a widescreen is that the screen real estate you are getting should be put to good use by using split windows instead of just making your lines longer. Maybe you will see the point when you buy a 4K screen and your files get even wider.

Thread Thread
 
alainvanhout profile image
Alain Van Hout

I have two of those here, and code isn't (and should never be) fullpage text.

I do agree with you about split screens being useful. It's only the absolute and rather low 120 character limit I take issue with.

Thread Thread
 
greg0ire profile image
Grégoire Paris

That limit often depends on the language: I use php, and the recommended limits are 80 and 120 (yes, there are two). In python, it's more like 72, and apparently, in Java, that would be 80. Not sure what your favorite language is, but maybe it culturally has a higher limit? Anyway, I find 120 very comfortable, but when I cross that limit, I try to make the offending block under 80.

Thread Thread
 
alainvanhout profile image
Alain Van Hout

My language of choice is Java. The 80 character limit that you mention is most likely either part of an old Java style guide (the most recent Oracle Java guidelines are from 1999), or a result of inertia (Google apparently moved to 100 characters as a compromise to those still preferring 80).

Java has a well-deserved reputation for verbosity (which I don't see as a negative), which means that while most of the lines of code I come across tend to be 100-120 character wide, a fair share are 120-150.

Thread Thread
 
greg0ire profile image
Grégoire Paris

Might be ok indeed for Java, I did not practice a lot but I still remember "System.out.println" vs "echo", so it could indeed make sense in that language.

Thread Thread
 
alainvanhout profile image
Alain Van Hout

That's a very mild example. For some laughs and groans, try googling "java long class names" :-).

Thread Thread
 
greg0ire profile image
Grégoire Paris

lol even german does not produce such long words