Here are some free beginner-friendly resources. There is so much out there, but this is just a taste. If you want more or have any other questions, please ask me.
This is a great introduction to computer science and general programming concepts. It has a high production value and is fun to watch.
There is a video and related material for each week. To get the most out of this, watch the video, then watch any shorts and sections available, then complete the problem set for the week.
The problem sets are the most important part of this course. They are where you will learn the most. They are also the most difficult part of the course. Don't be discouraged if you struggle with them. They are designed to be difficult. Also, you don't need to create an account to complete the problem sets, but you will need to create an account to submit them for grading.
TOP will teach you how to create web apps through the use of HTML, CSS, JavaScript, React, and more. They will use articles, videos, and interactive code examples as the primary drivers for learning. They will assign lots of reading, which is great for getting into the habit of reading official documentation. This will be something you spend a lot of time doing once working in the field.
I tend to learn faster through videos, however, I've completed a good portion of TOP, and I found that it was more thorough and filled in gaps in my knowledge.
Note: TOP wants you to use Linux and are adamant about it. I don't use Linux because I don't have to do it for work, however I think it is a good skill to learn (one I intend on learning at some point, whenever I have time between the things I have to learn for work). They walk you through how to do it, so don't worry if you haven't used it before.
Full Course Programming Tutorials
Dave Gray is a fantastic teacher. This playlist is in the order you should learn things.
If TOP is feeling like too much reading, this is a great place to go. Reading will always be more thorough (just like how books always have more detail than movies), but these are great. This playlist is VERY well thought out and will take you through so many things you need to know.
Even if you are doing TOP, I might also watch these videos on the side. They are a great supplement to your learning. This playlist includes other things that TOP doesn't get to, like Redux, Tailwind, TypeScript, Next.js, Python (a very popular language), and Nest.js. To be completely transparent, I don't know those yet, because my job is primarily back end. However, I fully intend on learning them.
The only thing I would add to this playlist is a section on Git. Git is a version control system that is used by almost all developers.
This is a good place to start with Git. It's a bit of a pain to learn, but it's very important. I would recommend learning it after you have a good understanding of HTML/CSS and JavaScript. There is much more to git, but this will get you rolling with it.
Good intro to C# and programming basics. This video (well, an earlier version of it) was my very first introduction to anything programming, so it holds a special place in my heart.
C# is the primary language I use for my job. It's a great language, but it's fully dependent on what jobs are available to you in the end. I think that JavaScript and Python are a bit more widely used, so they might be better to start with. Once you know JavaScript and/or Python, learning C# or any other language will be relatively easy. They are all very similar in concept; they just use different syntax to achieve/implement those concepts.
Dometrain has some great courses. This one is free if you sign up by the end of March. Once you're signed up and enrolled in it, you can do it whenever you want (you don't have to complete it right now).