How did you get into programming?
Which languages have you learned? Which do you still use?
Where would you like to go with your coding?
A conversation with @anomadsoul sparked this idea, perhaps it would be interesting for the developer community on Hive to share how they got into programming and their journey from starting out to what they do now?
Please share your own journey either in the comments or on your own blog because I think it would be a cool way to get to know each other and grow our community!
My programming journey starts around the age of 8 or 9 ...
Vic 20 / Commodore BASIC
My first experience of any computer programming was when my cousin, Ian, brought his computer around on a visit. It was probably Easter 1983. You can see us here, Jay, Ian and me on the right feeding my bacon sandwich to our dog, Patch.
Christmas 1983 or thereabouts, my parents somehow get us (my brother and I) our own Commodore Vic 20. Even then I knew they couldn't really afford such an expensive machine so it was shocking seeing that bad boy Christmas morning.
In the box was the computer and a tape recorder, with several starter tapes including an introduction to BASIC. I was hooked to the point where my parents would get mad at me for how much time I was spending on the thing.
This machine taught me so much, and even away from the computer I would be filling pages of graph paper with my user-defined character binary drawings and maps/levels.
Even though my cousin upgraded to the C64, and I was super jealous, the Vic 20 to this day has a special place in my heart. So much so that I own a couple of those guys in my collection!
BBC BASIC
My junior school acquired a BBC microcomputer as part of a national initiative run by the BBC called the Domesday Project. This was to involve thousands of kids throughout the country inputting data about their local area to be compiled into laser disks. While I didn't get to see the result at the time, I did get to see some of it years later. The main thing for me was the school got a BBC and I got to spend a little time on it.
BBC BASIC was frustratingly similar and different to what I had been learning on the Vic 20, but even then I could tell it was a more powerful machine and version of the language.
BBC BASIC is still going strong, with a beautifully implemented version that you can use today on your modern computer and even an amazing browser-based implementation or how about BBC BASIC in tweets.
LOGO on the Speccy
In addition to the BBC, our school had a Sinclair ZX Spectrum 48k. As well as games of Jetpac and Jet Set Willy, this computer had a role in teaching us a version of Turtle Graphics called LOGO.
If you are unfamiliar with this kind of programming, the idea is to use simple commands such as forward, right, left, etc to tell a "Turtle" where/how to move, and in the process draw pictures.
You can try it out in a more modern incarnation in your browser here and there are Python and Scratch versions of course.
Z80 Assembler
Between the Vic 20 and the Atari ST, we had a Spectrum +2. Of course I used BASIC, but I also tried to learn Z80 assembler on this machine and pretty much failed to produce anything useful.
Anyone who was around at the time will remember typing in games from computer magazines and books.
Some of these games got pretty sophisticated and included some "machine code" for elements that required speed. It inspired me to learn assembly programming so I bought a tape from the Micro Fun computer games store in town. When I got the tape home I discovered it was pretty sketchy - the software had been written over an existing tape with a new label applied, and the documentation was photocopied.
The assembler did work, and had some sprite building tools, etc, but had none of the quality of life stuff you would associate with a useful (not even particularly modern) macro assembler, and swapping tapes between assembly and testing just added to the frustration.
Of course, in the last few years, I returned to both the 6502 and Z80 assembly languages and found everything so much easier. Sometimes the tools do make a difference.
STOS / 68000 Assembler
My buddy John got massively into 68000 assembly but I couldn't deal with the way graphics worked so I languished. Fortunately, STOS, being based on BASIC, allowed me to make demos and games.
STOS and the Atari ST rejuvenated my interest in programming. As soon as my brother started earning a proper wage, he bought an Atari ST (for games but also the midi port opened up some potential music avenues for him) and I loved that computer.
What many people in North America don't realize is how out of reach the Amiga was to most of us. Financially, the ST was a reach, about one month's rent, and the Amiga was 25% or more higher, just too much until much later when the 16-bit wars had worn the prices much, much further down.
COBOL
When it came time to graduate from high school, I did the math and realized there was no way my family could afford for me to go to university, especially as my "career counselors" were telling me I was going to fail my exams miserably. I ended up doing work experience at the local hospital system and doing a night class for COBOL programming.
It was surprisingly useful in terms of programming concepts. I think about the things I learned in that course, such as Jackson Structures, every time I create batch-style reports.
MUMPS
I didn't do a lot of MUMPS programming but it tickles me that the main computer programming done at the hospitals was an operating system and language called MUMPS.
We ran our stuff using PDP/VAX/DEC mini servers and VT220 etc terminals, and it was wonderfully cyberpunk but woefully bad for my resume outside of healthcare.
DBase and DataEase
When I was only able to get short-term contracts, it was usually around tactical database stuff, so a lot of DBase and DataEase. Occasionally we compiled the DBase code with a tool called Clipper.
Today a lot of the stuff I did back then would be done by someone using (abusing) Excel.
Turbo/Borland C and Oracle SQL
After my COBOL night class I did a couple of years B-Tec diploma in Computing. We did a bunch of interesting stuff, such as C and Oracle. At the time it didn't help me career-wise, but looking back it was valuable stuff. I still use C, Oracle not so much!
DOS Batch Files and X86 Assembler
As soon as I started earning some income I had to get a PC if I was going to have any kind of career. I bought a 286 with 40mb hard drive but mono monitor over the smaller hard drive and colour. On this machine, I learned a whole lot, but probably the most immediately useful was DOS (of course) and X86 assembler.
SmallTalk
Having missed out on university, I tried to see if I could get a degree in my spare time. It worked out too much financial commitment but I did enjoy the one year I managed which, as well as general computer science concepts taught us the SmallTalk OG object-oriented language.
BASH
One of my roles at the community college I worked at was administering our Unix servers. This meant learning a lot of BASH scripting, which I very much nerded out on. I loved how so much of the Unix experience could be intermediated with shell scripts, from booting locked up terminal sessions to managing print queues.
Delphi / Pascal / Visual Basic
A friend and college colleague was a huge advocate of Delphi, having learned at University. I gave it a go but it didn't fully gel with me, so despite the intense mockery I suffered, I stuck with Visual Basic for DOS and Windows.
HTML + JavaScript, Active Server Pages
Knowing Visual Basic gave me an advantage when ASP came along. In fact I was early enough getting into it that I got published in magazines writing about it:
What I use today
My day job is for a company that is big in the WordPress space, so PHP/MySQL/React plays a big part. For anything automation or my side projects it tends to be Python.
Of course that doesn't include my retro game stuff, which lately has been mostly TRSE, C and Assembler, but you will also have seen my writing about QB64 and AOZ.Studio - it's really cool how much knowledge we can instantly access nowadays unlike the old days where I would have to buy huge telephone directory sized books that cost a weeks wages!