So I just finished my intro to C++ class and I also took a class in HTML/CSS and an intro JS class with a terrible teacher (didn't teach us how to code, just taught random gimmicks). I want to make some progress this summer besides starting to read up on data structures. Specifically, I am interested in learning more skills to eventually go into web development. Any thoughts on what I should do with the time I have between now and fall semester? I am feeling like I want to learn but having trouble figuring out how and what to do. Thanks!
First purchased Think Like A Programmer, it's a book that teaches you how to logically think in c++. Second enrolled in Udemy, and sign up for any course that you are interested in learning. Third review over the material you learn, they have a great tutorial section here. Fourth practice solving problems or just practice the syntax what ever you have trouble with the most practice is a key factor in learning. Fifth make a game using a the knowledge that you know or start a project of what ever you want. Sixth once you feel comfortable move on to learning more advance stuff. I did this in May, and it worked, but now I'm in summer school and I'm very busy that I do not have time to code as much as I used to.
Here are things that you need in real world programming that they don't teach enough of in classes:
Debugging: learn how to use the debugger. It will quickly become your best friend.
Comments and maintainability: comment your code so you (or someone else) will know what the heck you were thinking. Comments don't necessarily need to be lengthy or elaborate, but say what your functions/methods do and what the parameters are. Remember that the code says WHAT it does already, but not WHY it's doing it.
Error checking!!!!! This is the big one. In the real world you have to check for errors Every Single Time. Or if you're using exceptions to handle them, then you have to make certain that the errors actually ARE handled, and that you provide useful diagnostics. Popping a window that says "83443 - Permission denied" doesn't help. You need to say what operation failed, what the parameters were, and exactly what the error was. This is probably the hardest part of professional programming.
KISS. Keep it simple. Don't do something complicated when you can do something simple instead. And remember, the greatest optimization is when the code goes from "not working" to "working." In other words, no optimization is worth introducing a bug in the code.