Monday, November 9, 2009

Mental napalm and five new lessons I learnt

I've been working in the IT industry for 20 years: By age 13, I could write programs.

Back then Google did not exist and due to the idiocy of Apartheid, South Africa was isolated. We could not buy books, software, tools or training material from overseas, so we had to learn the hard way: - by hacking 16 hours a day while guzzling enough paint stripper (aka coffee) to wake up a Telkom employee.

We loved every single second of it.

As far as software development goes, we fancied ourselves as hot shots. Keyboard jocks. (You have to love yourself first - right?)

We believed that since software is the brain of the hardware colossus - the proverbial soul of the IT body, we, the creators of software, are the gods of IT. The ware manne.

It is from this background that I still consider myself as a (self assessed) programming boff, and part of a (self assessed) elite - placing me in the top percentile when it relates to IT knowledge and understanding.

I thought so.

I was sadly mistaken.

If you thought you were reading my CV thus far, you'd be forgiven. You see, I need to regain my pride - so I have to brag about my IT prowess. Even if no-one believes me. Just writing about it makes me feel a little better.

Because I've been traumatized.

Brutalized.

Violated.

I noticed the cracks a few weeks ago while installing Cent OS - a version of Linux. I needed the operating system installed so that I could run Asterisk on it - a very sophisticated telephone management system.

Sophisticated, almost infinitely customizable, open source and free as rain. To a nerd, that proposition is as un-resistible as that hot blond English teacher was St 8.

I downloaded it eagerly. I tried to install it.

My ego deflated explosively.

To say I had "no clue" is like saying Napoleon had a "setback" at Waterloo.

Days and hundreds of Google searches later the system booted only to confront me with a hostile green prompt: some dialect of alien computer speak. Utterly beyond human understanding. Like a kick in the...well...you know.

The manual was gobbledygook to me. Written by a chimpanzee.

On LSD.

So I started Google-ing again. Hundreds of searches and many muttered profanities later, I learned how to edit text files with a command called "joe".

Not "edit" or anything as sensible as that. Hu-uh. "joe".

For Pete's sake.

I discovered that "filename" is not the same as "Filename" - because to Linux "F" is not the same as "f".

(Yes. I said the word. )

But it was a step in the right direction. Now that I knew about "joe" I could set up the network address...by editing /etc/sysconfig/network-scripts/ifcfg-eth0. Obvious? To aliens maybe.

Want to install an add-on? Well, download the source code and compile it. Only sissies need setup programs.

And a mouse? No way. You can type can't you? Menu's? Hu-uh. That's for little girls. No user interface of any kind...except of course the prompt from hell.

"Incomprehensible" in the most vile way.

Mental napalm.

My brain almost exploded. My dead deflated.

I was clueless. An operating system I did not know, a software application I did not understand.
I had a headache between the eyes, and was on the verge of going postal on that computer's ass when I eventually got the application and operating system configured.

My 20 years in IT amounted to nothing. After all this trauma, all I had was a morose computer starring at me with a mute, blank screen oozing the malice of an open grave.

No wonder Shuttleworth calls Ubuntu "Linux for humans". Ubuntu is a graceful, friendly lady. Naked Linux is the wicked witch you scare rottveilers with.

It might be a brilliant operating system (it is), but naked...to the uninitiated...boy...that bitch be FUGLY.

So, the Cent OS experience shook my confidence a bit.

Fortunately the tale ends well: about two weeks later I had a brand new state of the art VOIP phone system, plus a "corrected" (ie smaller) ego. I must admit, I'm rather fond of my ugly wicked witch now.

Then, a week or two after that, my WiFi (wireless network) router became so slow it was unusable. I could write the data down, walk to the other machine, type it in and still be faster than a network file transfer.

I connected to the WiFi router's management interface via the wire LAN to review it's settings - thinking that perhaps some sort of misconfiguration is causing it to be slow. I checked all the settings, and made a few minor changes and saved it - which required the device to reboot. A minute later it was not back online.

A normal reboot takes about 20 seconds.

Five minutes later it was still as dead as Elvis.

Not good.

Previously, to improve my WiFi router's coverage, I moved the router into the ceiling. Where it was now.

Dead.

Very bad.

The ceiling is about 140 cm high at it's highest point and hot as Hyades.

I have more than 10 computers in the house, an alarm system, a custom built home automation system and 3 separate networks - all of which are wired in the ceiling...ie tens of meters of wire hidden under insulation blankets. If I damage one, it may take the rest of my adult life to find it. Also, due to the thermal insulation, it is very difficult to see the rafters spaced at one meter intervals. The rafters are the only structures strong enough to hold my weight.

Miss a rafter, step on the ceiling board, or slip and I'll fall straight through and maybe break something. Worse: I'll hear the story about me falling through the ceiling told, re-told and exaggerated at every braai till I'm 80 years old or until I shoot myself.

I fell through a ceiling once before.

Lesson learnt.

Considering these (formidable) obstacles I considered leaving the router there. Until it rots.

But it was already bugging me. A dead router in my ceiling will haunt my every waking second. So I had to fix it. Bite the bullet, tally ho and all that.

So, clever me configured my backup router, and took it into the ceiling with me. Once in the ceiling, sweat streaming down my face, I performed feats of contortion that would break a 16 year old gymnast's back in multiple places to reach the dead router.

Once at the router I balanced precariously on one foot, connected the backup router to the antenna and power source and disconnected the old one. I made my way back to the service hatch, sweat streaming into my eyes and almost broke my back in two places. Again.

Once back at my desk rubbing my dislocated back, wiping sweat, dirt and cobwebs from my face, I attempted to connect to the new WiFi router.

Nothing.

Dead as a Roswell alien.

I distinctly remember saying "Drat!" rather loudly at that point.

I checked the old router - the one I just recovered from the ceiling.

It worked flawlessly.

At this point I had to get up from my desk and go sit outside a bit.

When I eventually calmed down, I stoically took the old (no longer broken) router back up into the ceiling, dislocated another disk in my spine, got my foot stuck behind my head, and eventually replaced the new (now broken) with the old (now magically fixed) one.

Now there'd be little reason to share with you the technicalities I learned about Linux and Asterisk as few of you will ever walk into that dark night alone.

Very few of you will (want to) do the ceiling thing either.

However, in the spirit of sharing, allow me to document the universal lessons I learnt.

The five lessons:

1. Difficult to use technology is stupid. You are not. You are the boss. The technology is the slave. You right. It wrong. End of argument.

2. Technology is not perfect. Not on earth. Just because it stops working does not mean you broke it. Refer lesson 1.

3. No-one has an innate ability to understand technology. Skill is acquired through effort.

4. Learn how to learn: The most important skill you can acquire in the 21st century is to learn how to search the Internet.

5. Never head butt a computer.