Hacker News new | ask | show | jobs
by rand84545 2599 days ago
I agree that imperative programming is important to learn but java is in my opinion shouldn't be the language to do so. I think learning should be fun and java is the exact opposite of fun. It's wordy, full of boilerplate and enterprise code. Java, in contrast to other major languages, doesn't have an inspiring narative or a reason to be.
3 comments

I used to feel that java was a good teaching language, but after using it at work, I totally agree.

Java is excellent for enterprise distributed systems. It's got excellent tooling and an absurd quantity of libraries.

It's not good for simple programs to teach students compared to say...python or even C++. Especially things that don't really NEED the complex machinery built in to the JVM/Language spec.

For imperative programming, I think it makes sense to teach C and then also at least one object-oriented garbage collected language. Doesn't have to be Java.

I also think teaching some course in Java is somewhat reasonable, if only because Java is so pervasive and so important in the history of programming that it's good for properly trained software engineers to have seen it.

Having recently taken a few courses in Java, learning things like data structures can be fun, but it depends a lot on the instructor and the exercises provided.