I’ve always had a bit of a love-hate relationship with coding/learning to code, to be honest. I always thought it was really cool and was very envious of those who seemed to be able to pick it up intuitively.
However, crippling impostor syndrome and a lack of self-confidence starting out led me to write myself off as “not that technical” and I always thought that I was just….too dumb to learn how to code.
The best part of a decade down the line though, I now know that my old way of thinking was wrong. I wasn’t too dumb to code, I just wasn’t consistent enough. I’d go through these yo-yo boom and bust cycles of spending every day for a month learning and then burn out and forget it all.
Then, something would get in the way and it’d be months before I had the “batteries” recharged and I’d give it another go. But by then, I’d have to start all over again and learn the basics…..AGAIN (ugh…arithmetic operators).
In truth, learning programming languages of any kind is a skill like any other, and despite what people selling you courses might like you to believe - consistency is king. You check in multiple times a week, do your reps and do the damn work. Even when you don’t really want to. ESPECIALLY if you don’t want to. That’s where the growth happens.
So that’s exactly what I’ve done and for full transparency, I’ve picked up the Introduction to Python Development course on A Cloud Guru, using a Personal Plus membership.

Alternatively, the Learn Python 3 course on Codecademy Pro is fantastic as well. I highly recommend paying for a paid subscription to both services!

One last resource I’d highly recommend getting hold of if you can is Automate The Boring Stuff with Python by Al Sweigart. This book is fantastic and leads you from setting up your IDE and gets you coding along almost immediately - grab it from Al’s site here. He also has a companion YouTube channel you can find here.

I also normally get asked this, so in terms of devices, code editors and IDES, I use:
A MacBook Pro M1 as my daily driver laptop,
vim in the terminal (:wq will save your life one day, write it down)
Visual Studio Code (VSCode) as my main IDE for all languages. Sure, there might be something out there that does X or Y thing better, but for me it just works - and that’s good enough for me.
I’ve been hard at work getting back on the metaphorical horse for a hot minute or so now, and I’ll be tracking my progress anytime I learn how to do something cool, whether it works or not!