Over the course of the last few years, I transitioned career roles from an IT implementation project manager to software developer. I wanted to share some of the free and inexpensive resources that helped me get started in my education.
Note If a Udemy course is listed about $20, just wait a day. The site is constantly running sales that slash their course prices from $199 to $10-$15.
This list is sort of in order of my studies, as best as I can remember.
This is the first course I went through, and is the one that kickstarted my educational journey. It is a book and a Udemy course, though the entirety of the text and examples are on the website for free. This book assumes you have no coding background. It goes through the absolute basics, from loops to if statements to functions, and has you reading and writing files by the end of the course. This course is intended to teach you the basics and instill confidence in your furthering your coding education.
I was dealing with large amounts of data at work, and decided it was in my best interest to learn SQL(often pronounced "sequel"). SQL allows you to persist data in database tables, and query the data. Advanced SQL can get pretty crazy, but introductory SQL is actually quite easy. Colt Steele is one of the best coding educators on the web - to the point with a great sense of humor - and by the end of this course I was reading and writing to SQL tables. Python has built in extensions to work well great with sqlite, allowing me to integrate read/write operations into my python programs.
This isn't a course, but it is the next area I explored. Flask is a microframework for website serving, written in Python. With Flask, I could serve html pages.
Django is a powerful and scaleable web framework. It does the same stuff Flask does - but it's more robust and opinionated. Nick Walter does a great job bringing you from zero to hero in the Django framework.
Instagram was built in Django. I ended up writing the website for the project with friends in Django - not that I'm comparing it to Instagram. I still have a Django server floating out there in a Digital Ocean droplet to host the random stuff I want on the internet. Shout out to this document specifically for helping me set up Django on my linux server. I returned to it time and time again.
And by this point - I was a software developer
I spent a lot of time outside of these courses writing code and building based on what I learned. I learned python and sql quickly, since I was dealing with a lot of data at work, and had questions I needed answers to. I learned html/css/js to build websites for friends. I was able to supplement my education by actually building things with what I was learning. If I could do it all again, I'd do it the exact same way.