The Most Recent Egalitarian Entrepreneur Posts

Sunday, September 19, 2004

Bourne Again

Matt Damon has done a few cool movies that I like alot, action packed with twists and turns. Nice distraction from the daily grind, and good entertainment. My wife and I saw "The Bourne Identity" when it first came out, and even rented the DVD, so when "The Bourne Supremacy" came out, we headed to the theater and saw that one, too. I actually like this one even better than the first one, if that's possible. It gives new meaning to the saying "Revenge is a dish best served cold.".....

But when I hear the word "Bourne", I don't think of Matt Damon and movies. When I hear the word "Bourne", I think about a third generation programming language known by the cognoscenti as the Bourne shell. Its not a compiled language, its interpreted, so its a lot quicker to prototype and debug your applications using Bourne shell. There were three flavors of shell in use in those days - Bourne shell, Korn shell, and cshell. The Bourne variant came standard with the distribution kit of the Unix operating system from AT&T Bell Labs. Korn was an add-on you could easily obtain from other researchers and software developers within the former Bell companies, and cshell came standard with the distribution kit of the Unix operating system from BSD (Berkeley Software Distribution).

While I started learning my way around the operating system with Bourne, I really got into the Korn shell in a big way. I started coding my prototypes and short projects using Korn shell. I even seriously considered naming our second child "Korny", but in retrospect I'm thankful my long-suffering wife talked some sense into me.

My professors in college use to say that we studied too many computer programming languages for the Computer Science degree. By the time I graduated, I had COBOL, Basic, RPG-II, Ada, Pascal, and C under my belt. Never used any of them in the real world except for C. But I guess all those languages helped me form an analytical approach to problem solving, heuristics, and algorithm development. By the time I learned C++ and more recently C#, fortunately or unfortunately I was no longer an individual contributor coding modules of a larger project, I led groups of project teams doing that. But I still remember developing this massive migration application for the computer center.....

I was into elegent simplicity at the time, and was starting to get bored, so I decided to code everything in Korn shell just to see if it could be done. We were running three different network topologies in the computer center - the superfast NSC hyperchannel, a reasonably fast AT&T version of ethernet called 3Bnet, and that good old standby serial interface, RS232. I wanted to make use of all available resources to migrate user data files between computer systems using any available media, either the three disparate networks or even the two different types of magnetic tape reels - 1600 or 6250 bpi (bytes per inch). My case and switch statements were tight, my error checking routines were flawless, and my conditionals never ended up getting linked to /dev/null. All using Korn shell syntax. After a couple of weeks of debugging and troubleshooting, I had taken a project that could have been done by a small team and easily dragged out to a few months and turned it into a one-man project completely prototyped soup-to-nuts, well-documented and defect-free. Korn shell ruled! How exhilirating. What fun. I accomplished what I set out to do. My immediate supervision was pleased. Some attaboys and pats on the back were received. To paraphrase a popular cartoon chihuahua from Ren & Stimpy, I felt like "We don't need no steeenkin' compilers!", even but for a brief moment. By using an interpreted language like Korn shell instead of a compiled language like C, I was able to prototype my project in record time with the desired results. It was a good feeling.....

So when I hear the word "Bourne", I don't immediately think of Matt Damon action-hero movies. I think of computer programming, and fondly remember the three different shells in use, and the time I used the Korn shell to prototype a massive migration application. But I bet there will be another sequel for Matt Damon. And it's sure to be a blockbuster like the first two, and Matt will surely look forward to being Bourne again.....

Beginning in June 2004 with TransformTec, Inc. (my product development and technology broker company) , I develop software, hardware, and systems for the consumer, multimedia, and telecommunications sectors. I have a passion for software and systems development. No time like the present - if you have a software idea and need help with software design, engineering development, and distribution, contact TranformTec, Inc. for a free preliminary consultation.

No comments: