One of the best places to find videos for intro CS topics. Whether web programming, android development or sorting algorithms, CS50 has tons of high quality playlists.
A complementary course that will help you understand and use various tools that are usually not discussed in CS courses: shell scripting, data wrangling, version control etc.
6.0002 is a continuation of 6.0001 and is a great introduction to topics in data science and ML with lectures on Monte Carlo simulations, clustering and classification. Compared to other intro ML courses, this course stays at a very high level and is better suited to make someone without prior CS experience comfortable with these concepts.
One of the best places to learning coding. FreeCodeCamp offers various self-paced programs for learning web dev, Python, AWS and more. Its YouTube channel and blog also house an enormous collection of resources on any topic that is CS related.
Hands-down the best introduction to algorithms and data structures for anyone who has never learned about Linked Lists, Hash Tables, Stacks/Queues and Trees.
One of the best programming YouTube channels, sentdex has a range of content on learning Python (and Machine Learning) videos that will answer all your questions regarding.
Another top YouTube channel for programming content. If you want to learn more about setting up your coding environment, Django and Flask, take a look at his channel.
This interactive book is a great resource for anyone who wants to learn more about data structures and algorithms in Python.
Another interactive book that lets you learn the basics of Python and gives you clear explanations of the technical concepts behind the programming language.