The Birth of a programmer
In 1979 I came to the realization that I needed a hobby. I was highly creative and loved to experiment and figure things out. Electronics was the technology of the day and I have the blown fuses and electrocutions to show for it. Now it was time to save Mom some cash on electrical damage and focus on something a little different; computers.
Computers were entirely new. They offered new ways to create and a host of new things to create. With every new creation came new challenges, new problems to solve and things to learn and was a lot less painful than electronics. Computers were the perfect fit. So at 14 years of age I grabbed my little red folding chair, marched over to the local Radio Shack store, made a deal to write demo programs in exchange for computer time, plunked myself down and began figuring the rest out.
The computer was a TRS-80 Model 1 level II system with 16K of ram, a Z80 CPU and a cassette tape drive for storage. There was no software to speak of. If you had a lot of cash you could buy a copy of VisiCalc, the very early predecessor to Lotus 1-2-3 and eventually Excel, but there was precious little else. The machine came with version 1.0 of the BASIC programming language from a then 5 year old Microsoft, burned into the onboard ROMS. Anything else you wanted you had to build yourself. There was no other software, no books, no "Computers for dummies", no internet and no one else to ask because everyone was just as lost about these new machines as you were.
The machines were so dependent on you for software and on their BASIC programming language, the cursor sat at the "OK" prompt in the BASIC language the instant you turned the machine on. For the first few days I thought the only thing that machine knew how to say was, "Syntax Error". Aside from high school classes that taught you how to make the computer say, "Hello World" there were no other courses of any kind to learn about programming. Just to become a professional computer programmer, you had to take university courses in Electronic Engineering of which computer programming was a small part.
Although I never did get a chance to play on the early CPM operating system back then, I did get a chance to play with one of the bigger Model III's the store had. It required an 8 inch floppy to boot Xenix, a very early form of UNIX based largely on Berkley UNIX but modified by Xerox, one of the big boys in computing at the time. I continued building simple applications, exploring graphic programming and exploring Xenix for a few years until I got hold of my own machine.
By 1981 I had purchased my first computer and was heavily involved in the construction of massive bulletin board systems comprising everything from the low level machine code needed to communicate between computers over a then 300 baud modem, to the mass of file systems and support software required to support user login accounts, messaging systems and what would today be called, "Blogs". This was a huge time of experimentation and exploration for me when I really got the chance to push the languages and the systems to the edge. I even modified the ROM based operating system to improve performance.
By 1986 I had finished my course work at George Brown College and had immersed myself if DBase IV and Clipper 5.1, building huge customer management database systems. Aside from Sybase which required a large Unix based system, Dbase & Clipper was also one of the very early adopters of the new SQL database language that appeared on the scene in the early 90's which I also dove right into.
By 1994, Lotus Development Corp had hired me at their Canadian Office as one of the only people on staff in Canada who knew anything about "Programming". After weeks of training at the head office in Boston Massachusetts, I was the only person in Lotus Canada with any skills in programming and training in the Lotus Script language so I was made the Canadian Product Area Expert in Lotus Script, a version of VBA that was licensed from Microsoft for Lotus use in products such as Improve 2.1, Lotus Notes VIP and Lotus Notes 4.0.
By 1997, IBM had bought Lotus Development Corp so I moved on to manage a nationwide network installation for a Global insurance company. With my $100,000 hardware budget I managed to deploy 14 large IBM servers accross the country and integrate those into the 163 server global network. It was my first time hiring and training staff too and I was particularly proud of one young girl I rescued from the Finance Manager. He was going to let her go because she wasn't great with Word or Excel but she also had a significant facial deformity from an accident and he had a new cute blonde assistant! He had her on his budget for the next 3 months so I snapped her up for free and took her under my wing. I had already taught my wife assembler, I could certainly find something in tech this young girl could do. For a while she shoulder surfed me doing software isntalls for users, then I would shoulder surf her. By the end of a month she was the subject matter expert for the entire canadian operation in the installation of the client software on Windows, Linux and Solaris and had begun familier with different network protocols and specialized drivers needed at the time (WinUp9). I followed her career for a a few years later to marvel at what she acheived.
These days my personal focus is still on the more indepth and fringe technologies, Assembler, unmanaged C++, etc. Professionally my focus is on IT management and mentoring. My passion has always been and remains solution elegance. Now instead of doing that with code, I do it with my teams.
A passing thought
In the mid 90's I had need to visit that mall where the Radio Shack store was. The store had moved and when I found it I stopped in just to see what I could see. As I was looking around a sales person went into the back to get something. He swung open the storage room door and there stood my little red chair that I had left in the store in 1979. A little worse for wear but still kicking.