Biography


Index


School

My name is Mitchell J Laurren-Ring. On September 23, 1966 I was born in small-town Iowa where I spent most of life until I got out of college. What follows is a pretty good description of my life with computers and programming.

As a freshman in high school, I wandered into the computer lab one day and didn't come out for four years. Well, maybe that is a bit of an exaggeration, but it is mostly true. Often, my geek friends and I would turn out all the lights and hide from the janitor so we could get a little bit more code done. The folks in charge weren't very pleased, but it kept me off the streets.

Return to Index


Early Programming Jobs

During the summers, I worked at the Credit Bureau of Greater Charleston in Charleston, South Carolina. Most of this involved answering phones and "pulling" credit records, but I also did a fair amount of BASIC programming for their bad check recovery division. I was considered valuable enough that my transportation from Iowa to South Carolina was paid for by the Credit Bureau. I worked there for four years.

During my junior and senior year in high school, I did some freelance consulting work for a local telephone manufacturer. Their accounting system was written in BASIC on a TRS-80 Model III and came up short in a number of areas. It worked perfectly by the time I graduated from high school in the Spring of 1985.

Return to Index


College

The following fall, I began attending Wartburg College in Waverly, IA. After being self-taught in BASIC, I found it refreshing to learn about structured programming and data structures and thus excelled at all my computer science classes. By the time I finished my sophomore year, I had gotten to be good enough to land an internship with Tolemac, Inc., a small company that wrote shrink-wrapped and custom systems to fulfill the needs of small colleges. My summer internship went so well that I was asked to stay on as long as I liked. I did just that until I graduated with a Bachelor of Arts degree in Computer Science and Philosophy in May 1989.

Return to Index


San Diego

Within days of graduation, I packed everything I owned into my recently purchased Ford Escort Diesel Wagon and headed West to San Diego, CA. After a couple weeks of looking, I found a contracting job with IVID Communications, a multi-media computer-based training (CBT) developer. They had won a contract with Nissan Corp. to produce training software for their service technicians (mechanics). The resulting product was an impressive, cutting-edge combination of laser disc video, CD-ROM audio and VGA graphics with a touch screen interface. I was responsible for programming the engine diagnostics troubleshooting section of the course. This contract lasted until Fall 1989 and provided me with my first taste of event driven programming.

After a month and a half of unemployment, I started work as a permanent employee for Communications Technology Applications, Inc. CTA had successfully underbid to develop CBT software for the U.S. Navy's F14-D pilot training program. The initial stage of the contract called for the old software for the F14-A program be converted to a new system. During the next few months, this would be my primary focus - one that led me to don many hats including those of a graphic artist, a system operator, a photographer as well as that of a programmer. Dissatisfied with the quality of the finished product as well as CTA's cavalier attitude towards employees, I left the project in the Spring of 1990 to again pursue contract opportunities. Less than a month after I left, CTA declared bankruptcy. They still owe me money.

The next stop along the way was at Courseware, a subsidiary of Anderson Consulting. Courseware was developing a CBT system for Duty Free Systems to help train administrative personnel to use their inventory management software. Although it did use quite a few graphics and even some animations, it was mostly linear, "page-turning" CBT and was hardly a challenge to program. I amused myself by doing my own graphic modifications (when the art department didn't have time) and by finding the most efficient way to do the "cut and paste" programming that the system required. Luckily, the contract only lasted into early summer.

After an impressive showing the previous summer, I was contracted as technical lead with IVID Communications working on another installment of the Nissan training software. There was some overlap between the two contracts and I often found myself working very long hours, but neither client ever complained. The IVID contract continued into early fall and led me to yet another contract with Innovative Training Systems. Again, there was overlap but I soon found myself out of work in October 1990, so I packed up the Escort again and headed north for the great Northwest.

Return to Index


Tech 7 Systems

After a three month stint living on unemployment and credit cards, I was hired as a junior programmer by Tech 7 Systems, Inc. Tech 7 writes software to aid travel wholesalers in managing their businesses. (Travel wholesale is just like it sounds: a step in between agents and the end-providers like airlines, hotels, etc.) The Tech 7 system was written almost exclusively in BASIC and was originally hosted on an ancient platform called the Point 4. Eventually, their obsolescence inspired a couple of companies to make Point 4 BASIC (or Business BASIC) run on Unix platforms. Thus, my experience was a mixture of both.

Since Tech 7 specialized in customization, most of the programming was to accomodate customer requests and to fix bugs that this immense amount of customization caused. That was where I found myself in the beginning. Soon, though, the powers-that-be realized that I had greater potential and I soon found myself responsible for many development projects as well as the day-to-day drudgery of maintenance programming.

By my second year, I had almost completely rid myself of these heinous tasks and was concentrating mostly on development, large projects and on-site programming. This was not enough, though, as I soon realized that Tech 7 was a puppy mill for programmers and I was getting too big for my cage. Aside from the lack of technical challenge, there were no career incentives such as 401k, profit sharing, etc. It was pretty much salary, medical and dental.

To make a long story short, I realized that I needed to move on. I also realized that the haphazard path I had been following was not where I wanted my career going. I wanted to program the Mac. I wanted to program in C. I wanted to write my own software for the Mac someday. So, I began a six month search for a company that would be willing to hire me without any experience in the niche that I desired. The Indus Group proved to be just that company.

Return to Index


The Indus Group

Just prior to beginning my stint at Tech 7 I had gambled a couple of hundred dollars to max out the RAM on my Mac Plus (4 Mb!) and buy the tools I would need to be a Macintosh programmer: Think C, Kernighan & Ritchie, Learning to Program the Mac in C by Dave Mark and Inside Macintosh Volumes I-IV. I spent the next couple of years learning from Dave Mark in my spare time, but there was not as much spare time as I would have liked (ain't it the truth!).

It was with this "experience" that I answered a classified that started "Attention Macintosh Programmers!!!". I knew that I had a chance when I read "Energetic self starters & quick learners wanted." Thus, my tact during the interview was to emphasize my ability to learn quickly and de-emphasize my lack of experience. It turned out this was unnecessary since I was exactly what they were looking for and I had a new job by the end of 1992.

The Indus Group sells mainframe and distributed software solutions to industrial clients like power companies, steel manufacturers and the like. Although I don't know much about this end of their business, I do know that Passport was mostly a screen-based system which allowed data entry, queries and reports. A typical task would start at a menu screen, proceed to a query screen and go on to numerous data entry screens after that. Each screen had multiple data fields and several options for query, lookup and other branching.

Documentation for Passport had many parts, but the main section contained representations of each screen in the system. The content of each screen was available in a text file (called a MAP file) and could be easily imported into PageMaker, where a documentation specialists (i.e. secretary) would add headers and footers. An analyst would then add comments about the function of the screen and that page would be done. To streamline the process, the analysts had taken to entering the comments directly into the MAP file where they would be ignored by Passport but were easily accessible to the documentation specialist.

Just prior to hiring me, the other Mac programmer at Indus had noted what a tedious and repetitive task this was and, naturally, had light bulbs exploding in his head. So, he wrote a program that would read these text files, format them appropriately and spit them out as finished documentation. What once took days or weeks now took minutes. When the powers-that-be saw this, they were ecstatic and wanted to push the documentation envelope even further. Unfortunately, my soon-to-be-collegue was already drowning in work and could not devote the proper amount of time to turn his hack into a real product. Thus, they needed to hire someone who could. That turned out to be me.

My training turned out to be trial by fire as I was immediately tasked to convert this internal-use-only hack into a customer usable product by the next fall. In addition to printing the MAP files, there were a number of other documentation sections (such as data dictionary listings) that could and would be automated. Since the tool used to create data dictionaries and MAP files was called Analyst Workbench, my product was dubbed Document Workbench. My first six months of employment would be devoted to writing this product using Think C and a tool called FaceWare which simplified Toolbox calls and streamlined the interface design process.

Because the majority of Passport users were Windows users, there were constant disagreements about how to accomodate those users with a Macintosh-only product. At first, it was thought that an "Export to RTF" function would work, but that proved to be hugely complicated and Word was less than stellar when trying to print things like hairlines. Eventually the decision was made to abandon the Macintosh version unfinished and restart it as a Windows product. Unfortunately, user demand dictated that the release still be completed by that fall. So my next six months were devoted to learning to program on Windows 3.1 using the Borland environment while duplicating the previously developed functionality as well as adding further documentation sections and a better user interface. And we delivered it on time.

By the end 1993, it looked like I might be stuck in Windows programming until Indus landed a contract with a company with a large installation of Macintoshes. Their Macs were all networked via TCP/IP to the mainframe. Indus' Macintosh Passport client application, Portal, was only set up for APPC. Besides it had fallen behind the Windows version due to neglect and this new contract required that it both be updated and incorporate TCP/IP connectivity. And it had to be done quickly. Once again I became a Mac programmer.

My collegue and I designed a layered architecture using C++ classes that would allow us to more easily plug in support for additional network protocols in the future. We also simplified the connectivity user interface so that system administrators could streamline the configuration process and end users wouldn't have to sweat the nasty details of network access. We also heavily reworked the user interface of the application itself to support all of the additional functionality that had been added to the MAP files. It was great fun and we did it all in C++ using a framework that we wrote ourselves. Every (well maybe not every) line of code was written with the intent of reuse.

Unfortunately, things would not continue at such a merry pace. At the end of the second quarter, Indus announced to its employees that it had hit a "bump" in sales. This would result in a loss in the next quarter unless some action was taken. Rather than layoff people, they chose the easier route of just cutting everybody's salaries. Mine was cut by 15%. Others more, others less. They worked on a tier system that I don't recall now. It sucked. As the quarter wore on, everybody grew very discontented with the situation. I watched the employee database shrink by 10% during that time and decided that I should start looking around for alternatives.

Once again, a new job was not quickly forthcoming and Indus would reinstate full salaries before my job search was completed. However, by December I had landed an exciting job with a young company that looked to be very promising. So after exactly two years at Indus, I left for greener pastures at Colorbus, Inc. Little did I know then how much I would come to regret that move. Or how grateful I would be later.

Return to Index


Colorbus, Inc

Colorbus started out as the greatest job I had ever had.

Return to Index


More to come...