PBP: 022 Automated Layout

The Best Practice is to get a tool to do the work for you; it’ll be regular, and not spend your time doing it.

My only concern is that Mr. Conway says, “You can take ugly code like this and turn it into something readable.” where the “readable” code isn’t, to my mind, that much better.  Spaces around the parens and an extra blank line do not readable code make.

In general, I agree with this.  It’s funny how rarely I do it, though.  This is because of many old habits which I find hard to change.

I am not much of a customizer.  I’d rather learn to use the tool as it exists than force it to work the way I want it to.  This is true of editors, languages, and environments.  It was a big deal when I changed the desktop picture on my new Mac.  It wasn’t stock; it was a change, and that was unusual.

I don’t do this because I don’t know how, or don’t want to, or don’t think you should do it.

I behave this way because I’m lazy.

Long ago and far away, I was a Windows software engineer.  This was back in the bad old days, when Windows ran on top of MS-DOS, and you had this giant teetering stack of software before you could do your work.

People customized the heck out of those machines!

And every two or three months, Windows would cough up a hairball, and you’d get to reinstall it all.

After a few reinstalls, you just quit caring about some of them.  A few more rebuilds, and you want to do as little as possible to get back to work.

Or, later, I was working in an environment where we rebuilt every machine in the lab via a test script.  Customizations had to be put in the script, which we all shared, and was hard.  It was lots easier just to use the vanilla.

So, my habit is not to customize things.

I don’t customize Visual Studio.

I don’t customize vi/vim.

I don’t get near Emacs with a ten foot pole.  People who love emacs customize it.  (I know enough Emacs to quit!)

I rarely customize the Unix shell – almost no aliases, etc.

That being said, I can use tools to tidy Perl code; makefile targets, scripts, etc.  And those are good things, and should be used.

But they have to be added, and they’re not by default.

I discovered I am using an editor lately with Perltidy built in – Komodo – and I’m using it a lot more.  It’s nice.  But it’s not always there, as I’m not always on a machine with Komodo.

So: Good idea I find hard to do.


Leave a Reply