Most programming languages can be self taught. Thinking like a programmer is more important than the syntax. You can always google the syntax, but unless you practice enough to think like a programmer, you won't be able to solve problems. The algorithm counts, the language is secondary. No matter how well you did in your class while solving programming problems and assignments, if you're out of touch for 6 months or more, your skills become rusty. The best way to learn is by doing a major project, where you understand in practical life where the use of the code, else one tends to forget.