In 1983 I saw the show “bits and bytes” on PBS with my father and have been hooked ever since. In 1984 my father finally bought me a computer for my 15th birthday. I begged him for months and this was a huge deal for our family because of the expense. After many discussions with a friend of mine I told my father I wanted a Commodore 64.
I have no formal training outside of high school and have been able to learn all that I have needed on my own. I started out using Borland c, C++, OWL to build character based programs and Microsoft VB 3, C++, MFC to build GUI programs. These programs were used on touch screen devices, quite a feat circa 1996. These programs also involved real-time PLC (Programmable Logic Controller) integration, DDE (Dynamic Data Exchange) IPC (Inter Process Communication), and deep knowledge of win32 and win32s.
I continued on with Visual Basic through Microsoft VB 6, MVC, C++. I built MSMQ services, data access layers, Active-X documents, COM+ components, and visual layout user interfaces. I think I even dabbled in classic ASP at this time for an inhouse incident reporting system to track issues with the software we were building.
I eventually moved on to .net / C# and have been working in .net since version 1.1. I have built many, many incarnations of console apps, services, and web sites. I have written frameworks to encapsulate the complexities of multi-threading, sql server, message queing, windows services, unit testing.
I have been working with Microsoft SQL Server since version 6.5 and have written a multitude of stored procedures, functions, views, and scripts. I have been doing DBA work for longer than I can remember and have been responsible for backup / restore policies, deployment policies and procedures, and for schema source control.
Several years back I picked up the web technologies like javascript, typescript, angular, jquery, html, and css. I have written angularJs apps, Angular 2 / x apps, jquery apps. I have created deployment processes for web apps, continuous integration scripts, continuous deployment scripts, unit testing fixtures, etc.
The evolution of tools, languages, frameworks, and standards will never end. I take solace in this and know that I will be able to work as long as I want because there will always be the need for computer programming.