First course in programming?

<p>My first CS course was in Racket (which is what Scheme is now called). Some people definitely did complain that we weren’t learning a “practical” language, but it did it really great job of learning the fundamentals in a fun way. Once you understand the logic, learning a new language is not the hard part of CS. So at the early stage, I think it’s most important to learn how to program well, not to immediately jump into a language with the most industry relevance. You’ll have plenty of time for that. It is a lot more encouraging as a programmer to be able to produce something by using a well-designed language like Racket vs. fighting with a less-than-ideal language like PHP.
Java can also be frustrating to begin with because the type system.</p>

<p>I think Python is a good place to start that’s a well-designed, easy to learn language that will teach you fundamentals as well as being somewhat practical and relevant.</p>