I’ve done a bit of programming before. I’m in a bachelors program for structural engineering, but they only get us to focus on Python.
Python material is so very wordy. I often try to restart from basics, and there’s a lot of ‘you have to reinstall it and use the pure python version, it’s the only way you’ll learn it properly’ - but I find this way more confusing than using an IDE. I struggle to implement new libraries as well, in my existing IDE (i use spyder). Feels so clunky.
I want to be able to make things i can actually use, practice programming regularly, but I’m really not good at self directed stuff. Or even setting things up, as i tried to explain with the second paragraph. Any pointers towards relevant resources?
I always shout out “Automate the boring stuff” because it is excellent and free: https://automatetheboringstuff.com/3e/chapter1.html
I find picking simple tasks that I want to accomplish can be a great way to learn things, and the book above is a fantastic resource for this. If you want to learn how to modify values in a CSV file or perform calculations or get data from the internet, this teaches you how. When you need to understand a function, go read the documentation for how it works but dont get bogged down. Small iterative cycles with a feedback loop are how we learn. Read how to do something, extend the idea and apply it yourself, see what works and what doesn’t. It becomes fun after a while.
Also seconding Automate the Boring Stuff. I skimmed the beginning and it seems very usable for beginners. Also very useful for folks NOT new to programming but looking for an easy intro to a new programming language (Python), which is what I used it for.
Addressing your verbosity complaint:
Spend time learning to read the lowest level documentation possible.
It’s dense and terse, which makes it difficult to read. But the knowledge per word is the value.
For example, you were mentioning relying on tools to build your environment and manage your installation. Don’t. Learn how venv and pip work. Learn at the lowest level. Build up. Stop learning from the top and building down. Save that for when a project demands it.
Understand “why”, not “how”, and then you can evaluate whether a guide is wasting your time.


