String author = "Lincoln W Daniel";
String bookTitle = "Java for Humans";
System.out.printf("Hello, World! My name is %s, author of %s", author, bookTitle);

Read the book free at
Support the author by reading on Amazon Kindle: Buy on Kindle

What is Java for Humans

Java for Humans is a series of books written by Lincoln W Daniel that attempt to teach Java programming concepts in human relatable ways. With a focus on beginners, Java for Humans aims to help anyone become a skilled Java programmer.


Every programming concept is explained thoroughly enough for a beginner to understand.


Coding concepts are related to life experiences that beginners can relate to.


Build small projects as you learn. At the end, we build a small fighting game with a graphical userf interface for the desktop.

The Author

Lincoln W Daniel, a software engineer, is the ModernNerd and has had the opportunity of working at companies like IBM, NASA, and

Learn More About the Author

Why Read this Book

I am writing this book to teach anybody with the slightest bit of interest in computer science, software engineering, and programming/coding how to begin by learning Java, the most widely used and deployed programming language today. However, Java for Humans won’t be like other coding books. My intention is to relate coding to human experiences to make it easier for beginners to learn and have a connection with Java.

Supporting Source Code

A great way to read this book is to also have the supporting source code for each chapter opened in your IDE. There will be increasingly large amounts of code in the remaining chapters of this book, but much of it will be omitted from the text to keep the chapters short. If a chapter appears long, it is likely that a considerable amount of it is code, not plain text, so hang in there. Each chapter’s supporting source code can be found in its own namesake package under the source (src) folder. From the root folder, navigate to “src” and then choose the chapter you want to view. Download the full project from GitHub but remember to type out all of the code yourself in order to effectively learn the Java language.

Copy and paste it into an IDE [NetBeans (easiest), Eclipse, or IntelliJ (best)] to format it for easier reading. For future code, you are expected to rewrite the code and try to understand it. See if your output matches mine. Integrated Development Environment (IDE)

You will learn many new concepts that will help you become a talented Java programmer. Before we begin, this chapter covers some things we should settle to ensure our journey is smooth, peaceful, and stress free.


What You Can do With Java If you need more motivation to learn Java, read the Conclusion chapter to learn more about what you can do with Java, how much you stand to gain from being a Java programmer, and how Java for Humans can get you started on the path to a promising career in Java software development.

What You Need Before Reading

This book will make use of Java 8, version 1.8.0_51, and you need a program to run the supporting code/programs. To learn Java, you will need to do a good deal of Googling, so let’s start now. Search Google or Youtube for how to install and use the NetBeans IDE along with Java 1.8 from Oracle. I would explain how to do it, but my explanation may not work for everyone because there are many different operating systems the readers of this book may be using.

A great starting point is to visit the official website for Java resources: you can download both NetBeans and the most recent Java version from this link ->

Integrated Development Environment (IDE)

Going forward, I will be using NetBeans to deploy code as this is the easiest integrated development environment (IDE) for beginners. Feel free to leave any comments of NetbBeans issues and I’ll do my best to get back to you.

Click here to learn how to install NetBeans on Windows ->

Click here to learn how to install NetBeans on Mac ->

Learning by Googling To learn Java, you will need to do a good deal of research through Google. I explain in depth how to learn by Googling and using other online resources in the Learning by Googling chapter. In this book, I have that chapter positioned after the chapters that cover the most basic Java concepts, but feel free to read it after this chapter.