Frank La Vigne called me out on the Software Development Meme, so here goes:
How old were you when you first started programming?
I was 11 - almost 12. It was 1975, about this time of year. Has it been 33 years? Goodness...
How did you get started in programming?
I lived in the sticks (we had to pipe in sunshine but moonshine came in Mason jars...) when our neighbor retired from the Air Force. John was an engineer and built a Southwest Technical Products Motorola 6800-based computer trainer from a kit, followed by a computer.
What was your first language?
I learned M6800 machine language on the trainer. Set the toggle switch up for 1, down for 0, IncAddr, LDAA switches, etc. I learned BASIC later that year - we had no persistent storage so we had to key in hexadecimal from Byte magazine for a while before actually coding BASIC, if we got it right. Usually John would read and I would type. It was cool.
What was the first real program you wrote?
I wrote a program to track weather systems across the US. The grid was initialized with periods and storm system centers were represented with asterisks.
What languages have you used since you started programming?
Many variations of BASIC including GW and Commodore
Programmable Logic Controller (PLC) ladder logic (Allen-Bradley, Seimens, GE, Modicon, others...)
Human-Machine Interface (HMI) languages (RSView, Wonderware)
A handful of proprietary classified languages and protocols while in and working for the military
Several proprietary languages used in the banking industry to manage ATMs, teller currency dispensers, and alarm systems
Visual Basic, versions 2.0 - present
These days I work with T-SQL, SSIS, SSRS, and VB.Net scripting inside SSIS and SSRS.
What was your first professional programming gig?
Programming was a hobby for a good couple decades (it is still my hobby). I found myself programming at a lot of jobs before it was my "job." I programmed "stuff" while in the military during the 1980's, and banking systems for about five years in the late 80's/ early 90's. I programmed machine controllers (PLCs) and HMIs while an industrial electrician. Once I became an engineer, I programmed even more of these systems. But I suppose my first official programming gig was when I started my first business in the mid-90's. I was regularly able to attract and deliver software projects in between designing and building electrical control systems.
If you knew then what you know now, would you have started programming?
Without reservation! As I stated, programming remains my hobby!
If there is one thing you learned along the way that you would tell new developers, what would it be?
Continue learning and growing. Don't expect things to stay the same. If uncertainty bugs you and/or you need stability for your long-term peace-of-mind, you're in the wrong field. Keep learning. If you enjoy learning, you're in the right field.
What’s the most fun you’ve ever had … programming?
I have a good friend who works for NASA. Bruce showed me this application that allowed him to connect to some big network NASA could access in the early 90's. The application showed him pages with links which was cool in and of itself, but what really got me thinking was that it ran on his Sun workstation and his Mac. What's more, there was a version that would run on my 486. Whoa! Cross-platform, and it looked and acted the same! It was Netscape and I immediately bought a copy (I think I paid $56 USD). I learned HTML. About that time, Rockwell bought Allen-Bradley and produced a suite of drivers that allowed me to communicate between VB (or VBScript) and an industrial RS-485 network of PLCs running at (a screaming) 19.2 kbps. I was inspired. I wrote an app in VB3 that would read registers in the PLC and generate *.htm files every 10 seconds. Folks in the plant - anywhere in the plant, running almost any platform - could see the latest counts and temperatures and process data from these machines - all the time! They just had to hit the refresh key. I realized later I had written the beginnings of one of the first web-based Manufacturing Execution Systems (MES's) - called Decision Support Systems at the time.
Who are you calling out?
I would call others if they bothered to blog!