I'm 16 and want to learn programming. I left school at 12 because of personal and mental health issues, so I'm not sure whether that will make learning Java more difficult. I chose Java because I'd eventually like to create Minecraft mods as a hobby, although I understand that goal is still a long way off. For now, I'm looking for a solid beginner-friendly way to learn Java and wondering whether a long video course, such as a 12-hour tutorial, is a good place to start.
3 Answers
Head First Java is a good beginner-oriented book, especially if you prefer learning from explanations and examples. You can also look for genuinely free coding exercises and small projects. Try building simple programs that solve a problem you care about, because writing and debugging your own code will teach you much more than passively consuming tutorials.
Java is a reasonable choice if your long-term goal is Minecraft modding. Python can also be a friendly first language, but having a specific project in mind gives you motivation to stick with Java. Don’t worry about modding immediately, though. Start with fundamentals such as variables, conditionals, loops, methods, classes, collections, and debugging, then gradually build small console programs before moving on to larger projects.
I chose Java mainly because I’d like to make Minecraft mods eventually. Python was another option, but I didn’t have a specific project in mind for it. I know modding is still quite a long way down the road.
There isn’t one single best resource, so the important thing is to start and keep practicing. Programming is an active skill, and watching videos can make you feel like you’re learning without actually writing much code. A written course or book with exercises is often more effective. Head First Java is a commonly recommended option, and the University of Helsinki also has a free Java programming course. Pick whichever format you’re more likely to use consistently, then complete the exercises instead of just reading or watching.
I’ll look into the Helsinki course. I’m also wondering whether it supports dark mode, since the page is hard on my eyes. It asks me to select an organization, and I’m not affiliated with one. I’m also unsure whether using Java 11 would be too outdated compared with current JDK versions.

Is the third edition of Head First Java still a good choice?