The nice thing about self is the speed and the ignoring of useless stuff (having a calss about HTML for a term seems like a waste when 80 percent of what you'll need you can learn in a few days and then lots of practice) - this is why I never finished the degree. Eventually, you will learn database technologies like SQL and NoSQL, but don't worry too much because when learning to program, you will learn them out of necessity. Don't overthink the first language (it sounds like you've already chosen Python, which is a good choice) - the most important thing is that you choose something that you can actually learn a bit of on a day-to-day basis. It helps if you don't constantly beat yourself up for not being able to create your billion dollar startup idea after panting two whole months of learning to code.
Eventually, I learned widely accepted development patterns and industry standard js, but it was really hard. I work in data science and studied physics, which exposed me to programming before I did a masters in machine learning, but I honestly hate web development. I remember reading online before I went to university about a guy who spent a year and a half learning C (a programming language) to get to the point where he felt he could start applying for jobs. Once you pick your language and your starting point and start learning, some things will be obvious, but some things will be hard to understand.
I agree about not having to learn to program and rather understand the computing environment, but I think it's more about learning to think logically. As someone who is currently in his second year of software engineering I can tell you that you don't need to go to university to learn to code. As a current educator, I don't think there is anything inherent in programming that makes it impossible for anyone to learn. Stack overflow is great for getting a solution to a problem you have right now, but learning why that solution works sometimes isn't in the answer.
I learned a good bit of SQL on the job as a business analyst and started learning Python in my spare time. I started learning web design on my own, which taught me some valuable lessons in syntax and very basic coding ideologies through HTML and CSS. Don't believe the hype, any idiot can learn some coding and how to write functions which is what things like Code Academy teach you.