Sunday, October 10, 2010

How the world changed due to computers!


A lot of people think that software engineers are boring. I think that would be true to a great extent. There are exceptions and I think most of the exceptions created new stuff (languages, frameworks, tools, etc.) which made normal conversation difficult.

My greatest gripe against the software industry is what they did to English as a language. Perhaps we should have picked Aramaic and coined all terms from that vocabulary. At least most of conversation would seem normal then. Consider walking up to a geek, pointing to the bed bug on his sleeve and saying, "Hey Bar! There is a bug there!" and he retorting "My watch runs the latest Android and is bug free!" I often insist on using words for what they were originally intended. Sadly, this leaves people confused or rolling their eyes (when the confusion is resolved). Most of the time it is just to pull a leg, but often it is to make a point that we can still talk like non-software engineers.

How annoying it is look at that loud, pushy software engineer who thinks every woman is his, and tell your colleague sipping diet coke, "Foo is such an alpha-male" only to have your buddy look at you and then at Foo and say, "If that is the alpha version I don't want to see the final release"!?

Consider the chubby boy's cries of anguish when he finds out that we hid his snack box. "Where are my cookies? Where are they!? Waaah!" and someone sneaks up to him and meaningfully says, "If you click on Tools then preferences, you can set the directory where the browser stores your cookies. That way you won't forget!"

Speaking of tools, no office conversation goes without a giggle when some frustrated engineer screams in the middle of his debugging "My tool is simply not showing up." Viagra, anyone!?

And with tools and cookies comes the really abused word "Menu". Wasn't it something we flipped through at the restaurant? The menus software engineers talk about is so boring.

I really wonder what stupid frustrated brainwave those engineers must have had when they named peripheral devices as mouse and bus. Mice ran, not clicked (or double clicked). Buses carried people in them and not tripped people who weren't familiar with the layout of your room. Keys!? You either forgot them and locked yourself out or gave your girlfriend a copy before you regretted it. Since when did people hit keys and have keystrokes!? And you connect everything to a port which was once the domain of sailors and pirates. In England port is also a kind of wine. Try going to a tavern in England and telling the barman that you think his ports have a problem.

If the outside is confusing, come on in. You get data in bytes (12 bites make a Mac, I mean McDonalds burger) and bytes in nibbles and nibbles in bits. Why is this not on the software engineer's menu? Perhaps his tool is in the wrong place? Caches were secure and concealed places of storage before they got attached to the CPU to increase your performance (does that make sense? To most software engineers it doesn't though you will always hear them say "Increase the cache"). Oh! by the way, when any software engineer says he doubts your performance, he isn't speaking for your wife but he probably is speaking about your application development. A true software engineer will get offended only when you suspect the performance of his application.

There is a lot of memory in there but it remembers things only when turned on (much unlike the male of the human specie, who remembers nothing when turned on, not even that he is already married). This kind of memory is called RAM. Hindus will bow down to that name, and invaders used it as the receiving end of their long log which they used to break down fort doors. And then the motherboard (no, not an abusive term) has many chips on them which contain registers. No one other than a computer geek will understand that motherboard is something legal to sell. And what on earth are chips doing in a computer? Johnny! come here at once and clean the poor motherboard. 

The kind of memory that remembers for a longer time is called a hard disk. I had a friend from Orissa who for some strange reason could never pronounce hard disks properly. He always interchanged the S and the K and we always would wonder whether his presentations had sexual underpinnings. Most other north Indian friends of mine find it difficult to say desktop. They too get the K and S exchanged but to boring effects. 

The disks are called devices (as if one name wasn't enough) and devices have drivers but you can't call them chauffeured devices. It doesn't make sense and offends the devices (which give out sad beeps or crash your data) much like in the Intel advt. You will hear some hardcore hardware engineer or storage expert say "The spindle slipped and the disk crashed" making you think that someone had a back problem. 

The world of Unix geeks will be familiar with a kernel though they aren't the ones you pop in the cinemas to get your bagful of popcorn. These terminal based systems required you to login (and no, it is not the same as throwing the log into the fireplace) and work in a shell. Later on, there was a shell called Bash and where you typed was called a bash prompt. If someone bashed me, I would be prompted to do more than type. Still these systems were solid and good in spite of all their terminologies. System designers avow that if only Windows had a kernel (not your OS kernel but the English kernel) of good design in them, there would fewer crashes. Army officers still shake their head and avoid places where software engineers frequent.

"Lad, meet Colonel Foo Bar."

"Gee! cool. So you were written in C or assembly?"

Speaking of crashes, jars crash to the floor, your favourite China would be crashed to the floor by your boss's kid, stock markets crash, cars crash, lovers have a crash (oh! sorry, that was a crush) but since when did my computer do anything that resembled a crash? No noise, no plummeting of indices but still you will hear, more often than not, that someone's system crashed and actually hear nothing on the floor. Some would describe it as a blue screen, but that's only if you are running Windows. 

Windows followed the trail of companies naming themselves and their products funnily. Bell Labs, Apple, Mac (or Macintosh, either way it is silly), BASIC, LISP (isn't that how the dork spoke and we teased her?), Oracle and many more made these words difficult to use without people wondering about the computer configuration.

This might all seem the domain of computer scientists (but go tell a software engineer that s/he isn't a computer scientist and he will hit you with all the bits and bytes s/he has). The true software engineer (the ones who talk Agile and laugh at Waterfall) finds me stupid when he tells me he is an Agile programmer and struggles to move his French fries aside and even get up from his chair! The software world is filled with proxies and servers (not the restaurant ones) and models (not your ramp ones) and frameworks (which don't work). They are the ones who believe that an extra layer of indirection can solve any problem and then go ahead to name those layers funnily. They speak of inheritance (not the one you didn't get because you were Uncle Bar's favourite nephew) and normalisation (not why you were sent to the asylum) and dirty writes (nope, not porn) and encapsulation (come again!?).

But then all this makes conversations funny in the office and outside and only a few of us laugh at them. Bookmark this one without using a bookmark! :-)

No comments:

Post a Comment