by MikeGale » Tue Oct 13, 2009 6:33 pm
Creating content has several constituencies that a developer ought to play to. The developer himself and the audience among them.
I try to avoid things that are hostile to any audiences.
In this case consider:
1) Space waste, clogs the worlds HTTP arteries, and is anti audience. I took the sample provided and made a measurement of the difference. The suggested approach makes the CSS fragment 54% bigger than my compact version of it. (It's easy to be even more compact too.) If you apply that attitude across all content you either need more bandwidth or you get a slower Internet. That's an unacceptable price, in my book, just for developer convenience.
(The real space waste is maybe bigger. A clean simple approach is to take the longest left hand item, say add two spaces to it, then pad to that. In my experience such approaches tend to put so much space between left item and right item that readability suffers.)
2) I'm sometimes forced to clean up source so that it meets minimum standards for publication. Things like changing spaces to tabs, getting rid of those horrible 80 character lines, or getting rid of that 90% burden of additional bad, unwanted and illegal markup that a certain well known editor slaps on any document (and that's in save space mode!). Any tool that stuffs spaces into text is a potential source of unnecessary work for any competent and thorough future developer. Fortunately the modern tools I use are a lot better at this than they were even 6 years ago. It's often not hard to fix while you note that the originator is a bit less professional than you first thought. But there is often still work to be done, like fixing up the output of tidy.
3) It doesn't really work. With a monospace font it looks good. I don't look at work in only one editor, and I'm sure that's pretty common. There might be half a dozen that I use regularly. Some are set up for high readability. That means a good choice of font. For a lot of people that is not a monospace. In such an editor setup the effect is laughable. Kind of half a job is worse than no job at all.
During editing I think alignment is great and I really like the idea. Burdening the audience with a lot of passenger characters and bandwidth hogs is bad.
(There is a much more erudite discussion, than I'm presenting, in the Python (computer language) archives. White space is significant in that language, as it can be in F#, so it's an important issue. In that case I come down on the side of the tabbists.)
Potential answers are tabs or an editor that has a smarter layout engine and gives a great display without embedding it in the source.
(I can picture some transformations that an editor would run invisibly behind the scenes...)
I hadn't originally intended to go into any detail on this.