There are things like frameworks, api and libraries and multi paradigm programming languages and a lot of terms that I don't understand. Should I start learning programming languages and do projects and learn as I go along?
I'm studying mis; just finished first year. we studied visual basic. I'm teaching myself web design - html, css and javascript. In the coming years we learn c#, php but not much front end with the focus on databades. My goal is to design and develop websites so I'd like to teach myself the things we won't be covering in college.
If your goal is to create a website (not a web application), then most likely you don't need to learn frameworks / api / programming paradigms. Html, css will be enough, and some javascript will make your life easier.
But if you're into developing a web application, then you need to understand the client-server architecture. A web application consists of a client part (front end) and a server part (back end). If your college already cover the back end (php, c#, java, etc), then you may want to focus on the front end for your self-study. Advance your html, css, and especially javascript first. Then, you may try a library that focus on manipulating the DOM such as jquery, and after that a library on data binding such as knockout, vue, react, etc.
Focus on separating the front end and the back end, and on how they communicate each other. Once you've done that, you may want to look at some front end frameworks (or not, if you find that libraries alredy fulfill your needs). You might want to check an introductory article I wrote on this client-server thing.