Sunday, July 09, 2006

Ah, to be a computer geek

For me, programming is like writing. You sit down with a nebulous idea and slowly create something from nothing. The program slowly evolves as you poke and prod at it, trying to shape it into the form you want. And all too often, it goes off in directions you don't expect.

Since late last year, I didn't do any real programming. Like writing, I had lost my drive. But over the past while, it has been coming back, partly because of necessity. And it feels good to be back in the saddle.

Last week, I was groaning about updating the Brutopia website, since it is now a little more complicated being in French and English. As I was putting the info in, double checking the dates, I thought 'fuck, there is an easier way to do this'. And there is.

So I fired up my main C++ platform and wrote a quick and dirty program. Now I have a calendar in front of me so I can click and enter the artist for that day. And with a click of a button, it generates the HTML code which I can put into the main entertainment page of the website. And it generates both the French & English versions, so I am set.

And this brought me back to some old packages I wrote last year. The above screen dump shows a program I was working on to take care of historical information for Tangled Threads. With this package I can work with key historical details and keep track of what happened when. Which makes my life easier because when you are dealing with over 900 years of history, pieces of paper can be confusing and get lost. On top of that, I can keep track of bloodlines, like the following screen dump shows.

Revisiting my old software, I see I have a package to maintain my glossary, organize my calendar so I know the phases of the moon and other goodies to help me handle the massive amount of information I am building for Tangled Threads.

It feels good being back into what I do well. I never was, and never will be a pure programmer. I am a prototyper. Someone to get something done quick and dirty. Anything that needs to be solid and marketable, let a grunt take care of it. That is why I never tried to 'sell' some of my software ideas.

The little nitpicking stuff like debugging, bullet-proofing and test cases bore me to tears. When I develop a program, the jazz I get is from seeing it come from nothing to something and basically does the job. It is the creating I get off on. The fine-tuning and debugging is just boring. Which is one reason I am not still in the computer field.

It is hard to describe, though, the excitment you can get when creating a program. You have a blank slate and start to develop code, organize objects. Bit by bit, the program starts to do what you are expecting. A graph appears, a word is recognized, HTML code is generated. Be one day or four weeks later, you have created something that is doing something you wanted it to do.

But the scary thing is that this is also a Dr. Frankenstein scenario. This, often, is what drives hackers to write viruses, Trojans, etc. There is that unexplainable thrill when you can create something that does what you want. I've been there, but never to the point of writing a virus.

Years ago, I was one of those that cracked into software, finding keys and even modifying code. I tried to figure out passwords just because I could. If I could get past a security feature, I was excited. From the beginning I was an anarchist when it came to computers and a major supporter (still am) of open source. And it was a thrill if I could break through a barrier put up by someone else.

But all too often, be it TV shows or movies, don't show computer geeks like me in the right light. Yeah, when I get into my program, I can spend hours in front of the computer screen debugging and coding. But unlike those out there playing video games, I am creating. I am deriving something new. I am not being passive, I am being active.

For me that is the crux of how computer geeks are presented. We work in a world of symbols many do not understand. We have acronyms which make no sense. All too often, we don't have the best of social skills because a computer is easier to deal with than a human being. A computer, usually, is more predicable than a person. But in the end, we are creating something. Some of us are Dr. Frankensteins, while others are little gods. Bluntly, we can do something that most people can't. In the darkness of our rooms, lit only by the light of our monitors, we are creating.

Be it this blog, the wordprocessor you use, the spreadsheet program for your budget, to the torrent client you use, little geeks like me made it possible. We took an idea and made it concrete. So when you look at a TV show or movie and see a malajusted computer geek, with tape holding his glasses together, weighing in around 250 pounds, think again. We come in all
shapes and sizes and mentalities.

Back in 1995, I was in New Orleans for a computer conference. Thousands of computer people descended on one of my favorite places in the world. You had the stereotypical geeks that never left the hotel. If they weren't at sessions or birds of a feather, they were in front of the banks of computers available to them. All too often to be kicked out at 2:00 AM. Then there were the geeks like me coming in, at 3:00 AM with a to-go cup, drunk heading up to my room. I remember the pub down on Decatur, where I played pool & had Guinness. I had great food and my liver divorced me that trip. And there were others in the between.

But be it the pale fat geek or the drunk thin geek, we all share on thing: creating. So next time you see on your screen a computer nerd, glued to his computer, just think that he is creating something. What may seem passive isn't. And remember one of the best computer geeks is the richest man in the world. Even though he ain't much of a computer geek, in my opinion. But that is another post.

0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

<< Home