DEV Community

Discussion on: Java is NOT EASY to learn. But still worth :)

Collapse
 
oldprogrammer profile image
OldProgrammer • Edited

Coming from a C background, Java is relatively easy to pick up.

There is a load of other stuff such as the large number of libraries, how to use code comments, how to override methods such as equals / hashCode so that proper equality works in a collection.

However, subtleties - understanding and making proper use of features such as generics, enumerations, collections, why inheritance and interfaces should and should not be used take effort to understand. I suggest the book "Effective Java" by Joshua Bloch as it covers things from this angle instead of, say, going through the network programming library classes.

Collapse
 
oldprogrammer profile image
OldProgrammer

I'd suggest Python as a first language (maybe after a pictorial language such as Scratch for beginners) with something like inventwithpython.com/ or Raspberry Pi to work with.

Also, python has good support in areas such as numeric and scientific computing, machine learning and data science, and web development.