My first introduction to programming was with Fortran. This was back in the days when the computer had it's own building, programs were on punched cards and invariably returned a piece of A3 tractor paper with 'error' written in the top left corner. That is unless the computer was having a bad day, when you got nothing at all until it stopped sulking. I decided to stick to slide rules.
Then I went to work in aerospace and had access to telcomp, a time sharing system which you actually rang up, then when it answered you put the handset in a special cradle and got on to the teleprinter using Basic (no monitor). In theory you could store a program on punched tape, but I never managed to achieve that. Despite these limitations it was a lot better than slide rule for some tasks.
I then moved on to a Beeb, using BBC basic (self taught). Transformation! Clever science people looked down on Basic, so I got a book about Pascal. It kept saying 'you can't do such and such in Basic', well you could in BBC Basic.
Eventually the extremely slow speed of the Beeb persuaded me to buy a Unix based machine (can't remember the name, began with a A, not Amstrad), but that spoke QBasic, so all my stuff had to be re-written.
Eventually I went for a PC, and taught myself C as it is supposedly portable, no more re-writing to suit the new OS.
Recently however SOD pointed me at Python, it is definitely easier than C, and so far is portable between Windows machines and Linux. I still have to speak C for the Arduino, but I don't tend to try anything clever on Arduino. There is so much stuff pre-written for Python a lot of my programs are almost cut and paste. It was even fairly straightforward to port C programs into Python by cut and paste text. I believe you can by using some mantra put chunks of C into Python, but that's outside my paygrade.
After all this rigmarole, if you're wanting to get into programming (not PICs or Arduinos) go for Python
Edited By duncan webster on 04/11/2020 01:19:37