Orthogonality considered pretentious
Ian Bicking says that orthogonality is pretentious. If I understand correctly, he means that well designed languages/systems (i.e. ones that are orthogonal) are less desireable for beginning programmers and “mediocre experienced programmers.” Therefore, presumably, less people are apt to use them.
So, that’s why PHP is so popular. And it’s entirely deserved. And Basic before it — another language that seems so painful because of the lack of orthogonality, but that is both its curse and greatest feature.
Thus, while it’s “bad design” for PHP to have a million functions that possibly overlap, it’s “good” in the sense that you can skim the whole list and see what you need. Makes it easy for beginners, because that’s how they think. He then goes on to compare this to Django templates.
Read the whole thing. It’s really a thoughtful piece.
February 23rd, 2006 at 11:40 pm
Hmm…
I would summarize the issue this way: with highly othogonal languages, a programmer writes less code, but has to think a bit harder; with non-orthognal languages, a progammer thinks less and writes more code.
I’d rather think than type.
February 23rd, 2006 at 11:49 pm
Heh. Well said.
Although it is awfully tempting to just think less and bang out some ugly (but working!) code sometimes.
PHP is a hard habit to kick. ;)