Hey Artiom Lukianov,
Thanks for reading and responding. Here’s my response to your claims.
While it’s all a matter of preference, I must say I disagree with you on Java being awful for beginners for the following reasons and I’ll explain: recognition, community, application, and syntax.
If you have a computer, you’ve used Java and likely recognize what it is used for. A beginner can identify with Java and that is important.
When learning to code, the community may be one of the most influential aspects of the process on the progression of theJava is the most widely used language for mobile applications. For that reason, the community it has amassed is unmatched by any other. When a beginner gets stuck, they simply have to visit Google and search and they will never be at a lack of answers to their questions because of how large Java’s community is.
This one is simple. Android. Java is the official language for Android. Beginners need a vision to succeed in learning. They need to be able to tie what they are learning to real world applications, and what’s better than the largest mobile platform on the planet partnered with the largest mobile development language on the planet? Nothing. I have talented friends who have learned JVM languages, such as Scala, but struggle to translate that over to Android experience. The best way to keep a beginner interested is to give them a clear path to doing the cool things that see others doing and making the cool things that use everyday. Java with Android does that for them.
Java’s syntax is the most human readable of all JVM languages.
Given that JVM stands for Java Virtual Machine, the language most supported by it is, you guessed it, Java. That’s vanilla simple. Beginners already have a hard time picking up new skills. To add surprises on top of that would be criminal. Given the other JVM languages are relatively new and may not be completely tested on and suited for the JVM, beginners may run in trouble using those languages and quit because of the surprises thrown at them. Java is the most predictable of all JVM languages in respect to the Java Virtual Machine.
I hope this clears up any confusion for my readers who are beginners. If it confuses you more, please carry on to the Preface of Java for Humans to refresh yourself on why Java is a great language for beginners and, frankly, anybody looking to develop the tools we use everyday.