Becoming Illiterate - Standard Stupidity
Saturday, December 6, 2008
There's a sure fire way to guarantee that you'll never be able to speak English correctly. Just become a computer programmer and follow the standards that are emerging in the industry. When you think about it, if we wrote in the style that programmers program then no one would be able to understand us. Let's take a look at some of the most ridiculous notions.

Cryptic Symbols

The languages of choice these days are those derived from the C Programming Language. This language was developed, presumably, by people who can't type (yes, I'm saying Brian Kernighan and Dennis Ritchie couldn't type). If you look at some more reasonable languages, like Pascal or Basic you see that when they want to say "this or that" or "this and that" then they use the words "and" and "or". But that's not good enough for our C programmers. They have to use && for "and" and || for "or". Clearly this is so they don't have to go looking all over the keyboard for a-n-d and o-r.

It gets worse. To begin a section a far more reasonable person would use the word "begin" or, in the case of Basic, simply the name of the routine or section (like "function", "if" or "loop"). So it makes absolute sense that in C you use { and } (&&huh?)

Parenthesis

Would you think me of sound mind if I used parentheses incorrectly( like this )? Putting a space after the beginning parenthesis and before the closing one with no spaces outside is becoming the norm in programming. Why? Because it helps make code unreadable which helps the programmer with job security (but, of course, job security is a myth because programming jobs go out the window in a recession faster than short-order waiters).

Abbreviations

Programmers love abbreviations. It made sense once upon a time when there was a limit to the amount of characters you could use for identifiers (Apple II basic limits identifiers to three characters) or file names (CP/M limited filenames to eight characters with a three character extension after the period). But there's no such limit anymore. So why do programmers insist on saying things like "vrylrgidntfr" when they mean "verylargeidentifier"? Quite simply, again, because they can't type (or are just very lazy). But, of course, they make it more sensible by using capitalization like VryLrgIdntfr - more on this semi-lobotomized behaviour, later.

On the subject of cryptic symbols and abbreviations, there's the common misconception that if you can type code out quickly then you can increase productivity. This is also a myth. The fact is that you end up with unreadable crap that takes longer to understand and debug. In addition, it also means that you need liberal commenting which also slows down productivity. If you create readable (English type) code then comments become almost redundant.

Mixed Case

This is my favorite. He's now RexTheStrange and this paradigm is creeping into the regular English language (look at the products in your local supermarket one day and you'll see people adopting this nonsense). This comes from the fact that you can't use spaces in your identifiers so, you want multiple words, when run together, to be readable (this is the first time programmers are attempting to make something readable and they just plain get it wrong).

There's a perfectly useful symbol on your keyboard which can allow you to space your words in your identifiers and keep them as one: it's called the underscore. These days people scream and hide under beds when you mention the underscore, but it is, without a doubt, the most useful way of creating multiple words to be one. MySquishyIdentifier isn't as obvious as my_squishy_identifier. But again, lunacy has taken the place of common sense.

Zero Indexing

Let count something. How about your fingers. Let's count them: zero, one, two...nine. So you have nine fingers, do you? Nope, you have ten (or most people do). You don't count one as zero when counting fingers, but programmers do when they count the slots in arrays. So, to find out how many spaces there are you have to add one. How stupid.

More Cramming

C Programmers, in particular, love to cram things together, like an equation will read as:

"result"( oops, sorry - try again is retard language ) "rslt=x+y"

Shouldn't it be:

"result = x + y"?

Seems a little more readable to me.

Sadly this crap is becoming the norm in the industry. Poor Niklaus Wirth is turning over in his grave (ok, he's not dead - I'm surprised that this defecating on the industry isn't killing him, though). I can give many more examples of why C has crapped on the industry. Wirth gave us a clear, crisp language in Pascal (which Basic follows, but the .NET implementation templates have crapped up with C-isms, as have the templates created in Delphi - the modern implementation of Pascal) and now just about every new language follows the C garbage standard.

In fact, it's getting so bad that if you have this debate with a new, young programmer he or she may well say "well, what else is there?" as though there are no other alternatives and this C crap is the way it's always been. There's also the argument that Pascal is dead - everyone programs C - even Visual Basic is losing favour in favour of C#. So, because we've all accepted a crappy language because we're all too stupid to know any better, we should all go with the flow?

Not this little black duck!

0 Comments
Post a Comment