Learn Java the Hard Way (Second Edition)

Next Steps

You made it!

If you finished all the exercises and did the Study Drills and understood what you were doing, then congratulations! Java isn’t an easy language for beginners, so pat yourself on the back or something.

You now know the basics of programming, and more importantly, you have a lot of practice reading code, understanding it, and fixing bugs. These are important tools for programmers. With these skills, you should be able to pick up just about any book on programming and handle it just fine.

However, your journey isn’t over yet. Typing in someone else’s programs is hard but writing your own programs from scratch is a lot harder. Also, you know the basics of Java but nothing about “Object-Oriented Programming”, which is a pretty big deal.

Most of my real-life students practiced and learned for four or five more years after working through my assignments before they got jobs in the industry.

Currently, you are lacking in three main areas:

You don’t know the standard library.

Professional Java programmers spend a lot of time writing small amounts of code to “glue together” modules written by other people. Many of these are included with Java itself and are available to “import”.

Java’s standard library is provided as packages of objects, so you’ll need to know object-oriented programming before you can get much better at this.

You need a lot more practice.

The students I teach at my public school do use the exercises in this book to start learning, but that’s not all I make them do. They also have to write a lot of programs from scratch. You can see the list of assignments at

Programming by Doing

I highly recommend working through them. Once you’ve done that, here are some other resources for practice:

You don’t know OOP.

Java is an object-oriented language. No matter how good you get at assignments like mine, you can never truly call yourself a Java programmer until you know OOP well.

I am writing a sequel to this book that teaches object-oriented programming; I hope to have it finished by early September 2016. You don’t have to email me to ask if it’s done, though; I can promise you that I won’t keep it a secret. learnjavathehardway.org will definitely mention the new book once it’s done.

You can also see if it has been published at Leanpub yet at <leanpub.com/javahard2>. However, until it’s finished I’ll have to recommend other people’s books.

Thanks so much for using my book to start your journey coding. Please tweet @grahammitchell using the hashtag #LJtHW to let me know!

Happy coding!
– Graham Mitchell


“Learn Java the Hard Way” is ©2013–2016 Graham Mitchell