My Programming Journey

in #python2 days ago (edited)

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.

At the time my brother got the ST, it was the equivalent of £1,000 today.

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!

Over to You!

What is your programming journey? Please share so we can all get to know each other better!

Sort:  

We had a Texas Instruments computer when I was a kid. I remember we had to type up all the programs from a magazine in BASIC. Then if we wanted to run them again we had to either type them all up again or save them to audio tape. That's what really got me into computers. I didn't do much programming after that until I got to university. C++, Assembly, SQL, COBOL, Visual Basic, HTML, and Visual C++ were all classes that I had to take. I was never that great at it, but didn't hate it. I kind of wish I had committed more to it now. A little bit ago I started playing around with Python and the HIVE libraries that are available.


Your reply is upvoted by @topcomment; a manual curation service that rewards meaningful and engaging comments.

More Info - Support us! - Reports - Discord Channel

image.png
Curated by stresskiller

Loading...

Hive and Python are a great paring to get yourself programming again because they give you a purpose and goal to aim for. The people I think who struggle most to get back into programming or get into it to begin with are trying to "do programming" rather than "achieve something through programming" if that makes sense?

No, that totally makes sense. I've always said if I get back into programming I want it to be because I want to accomplish something, but I was never able to figure out what that something was. Eventually I found myself looking for an easy way to see who had muted my account and I didn't realize there were already tools out there, so I wrote a Python program to pull that info.

Loading...
Loading...
Loading...
Loading...

My programming journey overlaps with yours. I started using BASIC on the local college computer via a Teletype. Then I had a Beeb that was a lot of fun. At various jobs I used other BASICs, Pascal, C++, DBase, Oracle, C#, Magic (!) and now it's mostly Python that I also use for my own projects. We've seen a lot of changes.

I was just writing about Pascal! I didn't really use it until my friend Colin really advocated for Delphi. He'd learned Pascal at university.

Now I am like you, mostly using Python for my own stuff, but I have been drawn back into PHP recently (Laravel and WordPress), and have to do some Node/JavaScript.

I'm looking at Zig after trying Go and Rust, but I think C and Python will dominate my personal projects for a long time yet :)

I was sure I must have done a post like this before, but can't find it. I have done some courses for other languages, but not really used them. Python is fine for my messing around with Hive stuff. I've just never got into doing web programming.

Maybe when I retire I'll find time to experiment more.

I got into the web in 1994 and never left, it has been the majority of my programming ever since :)

Even the COBOL and Oracle I did I think prepared me for it when you consider how "batch" oriented web interactions are in the backend.

I've worked on a lot of back office apps and now on stuff for testing hardware. Anything public facing may need to be more polished and then there's all the security issues. I just like hacking code.

So it's python for the backoffice and hardware testing stuff too?

A thing I love about programming is it means so many different things to different people. My buddy John coded software drivers for things like hard drives etc for a while, and another buddy Joe works on PLC for oil and gas machinery - it is amazing all the different niches that exist :)

The office stuff was various languages including C# on Oracle back end. The Python testing systems replace old apps written in Tcl. It's hard to find people who know that and Python can do the job. I know a lot of legacy systems never get replaced so people who know languages like Cobol can still find work. Not that I ever did Cobol.

Programming is about solving problems and I enjoy that.

Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

I started off with BASIC on my Commodore 64 circa 1987. A little later in high school I did BASIC on TRS-80 Model IIIs and IVs and then Pascal on IBM PC XTs. My first computer class in college involved a language called Scheme which is derivative of Lisp. I remember pretty much none of that. Most of the rest of my college experience involved programming in C++. Just out of high school I had an internship in which Ada was involved.

Professionally, early on I did C++ and Java (and a tiny bit of FORTRAN) for a while. More recently, mostly C and a little C#.

I've done little bits of other things here and there including PHP, JSP, ASP.NET, BASH scripting, etc. How much I remember is another question.

What are you coding with C? I did a whole bunch of C# early on, even contributed to a Wily book about it, but as soon as I moved over to Linux and Mac I let it dribble out of my brain and would barely be able to open the IDE now

Loading...