bens_dad: (Default)
[personal profile] bens_dad
I've been developing some code for a new (to me) open source project (GDAL).
One of the requirements of the developer guidelines is
Try to keep lines to 79 characters or less.


That is an old idea; 80 column teletypes (glass and paper) go back a long way
(though my first experiences of computing, forty years ago, were 132-column
printouts and IIRC 13-column punched cards, perhaps show the demand for wider
lines even then) and Knuth is said to have recommended 72 column text,
as that was about as much as an eye could see at once.

Programmers like to have as much code visible as possible; I've heard monitors
with a large (c1200) vertical resolution described as "programmers' monitors",
and such monitors were highly prized in the software house I once worked.

My attempts at learning Python were blocked for several years because although
I knew that indentation and line breaks were part of the syntax, I hadn't heard
of the rules that allowed a code statement to continue onto the next line.
Thus I was unable to write anything that required a statement wider than a
comfortable editor window. With meaningful variable and function names that
became a significant limit on an 80 column screen.

I had been developing much of my the GDAL code on a wide-screen laptop with more
than enough room for two 80 column windows side by side but not a lot of height,
so when I discovered this rule I went back and found that my code had got much
wider. The sample code I was working from was also heavily commented;
so much so that on an 80x24 window (the default terminal size on many systems)
a single idea could not always be coded on a single page. By making my screen
wider I had got my ideas to fit the page, but the 79 character rule meant
rewriting much of it and it became to long for comfort on the wide-screen laptop
with its restricted vertical resolution (once I would have fixed that by making
the characters smaller, but my eyesight is no longer sharp enough for that).

This post has a hard line break at least every 80 characters.
Anonymous (will be screened)
OpenID (will be screened if not validated)
Identity URL: 
Account name:
If you don't have an account you can create one now.
HTML doesn't work in the subject.


Notice: This account is set to log the IP addresses of everyone who comments.
Links will be displayed as unclickable URLs to help prevent spam.


bens_dad: (Default)

September 2017

171819202122 23

Style Credit

Expand Cut Tags

No cut tags
Page generated Sunday, 22 October 2017 10:06 am
Powered by Dreamwidth Studios