After initial excitement and motivation, you gradually hit a brick wall (figuratively speaking) from time to time, which can be quite demotivating.
Once I started Multithreading, several times I caught myself thinking "Why am I doing this?!" But you get through it, gradually grinding it out.
I personally think motivation is not really the key for any beginner. You need discipline, more than anything, and as you get used to gradually getting through the hard topics, you gain more experience and when it finally clicks you feel on top of the world...and recharge your motivation in the process.
I strongly believe it is also very important to have the right tools and information.
So, let's took about the books.
My First one (not surprising) was "Head First Java".
This book is for fans of the informal presentation of material. When you read this book you get the impression that you are not learning, but just talking with friends.
The next one was "Java. Beginners guide" by H. Schildt.
This is the best book for newbies. I could not read Head Fist for a long time; This is not my book, I have reached half and realized that I can no longer.
In this book, everything is structured, all "on the shelves". The author managed to write a book "not dry" and "without water". This is the best book for newbies!
Legendary "Thinking in Java". B. Eckel.
I recommend this book after reading Head First or after reading Schildt’s book.
If you are starting to learn Java, but you have experience in other programming languages, such as C ++, then you can safely take up this book.
This is a book that can be read in a couple of nights and you will know the Java-core at a good level.
I also have a personal shortlist of online resources, which I hope helps beginners:
CodeGym.cc
+ : free, good design, a lot of practical tasks, game-like course geared for complete beginners, quick switch between light and dark themes.
- : Java only website.
Edabit.com
+ : free, interesting concept with a lot of “challenges” of various complexity, can add your own theory resources to each challenge.
- : not for beginners, no theory apart from links from users to outside sources.
Mooc.fi
+ : free, includes exercises/tasks, examples of code included in the theory, more advanced topics also included.
- : reads a bit like a very long manual with no ‘back to top button’, too much white on the page so hard on the eyes after a while, not much theory.
SoloLearn.com
+ : free, good design, step-by-step process, and test questions.
- : very little theory, no proper tasks to cement the knowledge.
Good like, guys! I hope it will be helpful.