I’ve decided to start a series of articles on my blog dedicated to teaching you, the reader, the basics and fundamentals of Java. In my previous article, How to Learn Java, I pointed out some ways and resources you could learn Java. I hope that this tutorial series will serve as a resource for you to learn Java.

What will I be covering in this course?

In this Java tutorial series, I’ll be covering the basics of Java. This ranges from the basic syntax, data types, and control statements of Java, to the more advanced topics of Java. By the end of this series, you can expect to have a good grasp of how to write Java code. If you practice enough, you’ll find that this course will be a stepping stone for you to graduate onto more advanced topics of Java, like streams, concurrency, reflection, and more.

Throughout the course, I’ll include many code snippets and examples to deepen your understanding of the concept. I’ll also quiz you informally from time to time so that you can make sure you understand what’s happening.

How you can get the most out of this course

You should not read through this course and expect to learn everything it has to offer. Learning isn’t as easy as watching The Office on your couch, unfortunately, it takes more dedication than that.

If you haven’t already read my article on How to Learn Java, you should read that article right now. It covers a lot of tips and tricks for staying motivated, driving skills into long term memory, and furthering your knowledge constantly. By following the practices I outline in that article, programming in Java will become second-hand nature to you.

If you’re not motivated enough to read that lengthy article, here’s a tl;dr. (Although you’ll need more motivation than that if you’re going to get through this course).

You need to code. You need to practice. As I’ve said many times before, you can relate to learning how to code to learning how to ride a bike. You can study how to ride a bike and be an expert with the physics of riding a bike, but when you’re presented with a bike you’ll likely fall off. The only way to learn those small but important details in the underlying concepts of programming is to actually write code yourself.

Many of the articles on my blog are casual articles: they’re meant for you to read them through and be entertained or learn a quick interesting fact. However, you should not treat this series like those articles. Just reading the series through will not be enough. You need to try out the code snippets I provide, write your own code using the topic being presented, and ask for help.

How to stay motivated

To stay motivated, you should set a goal for yourself. Although it’ll probably be difficult to create a schedule if you’re reading this course as new articles are being published, this doesn’t mean you can’t set a goal. I publish an article a week: you could make it a goal to master the concepts in an article by the end of the week.

Remember that by taking the initiative to learn and put forth time into learning Java, you are making an investment towards yourself. Provided that you practice and put in the right efforts into learning, this investment will pay off well.

Again, I highly recommend you read my article on How to Learn Java if you haven’t already. I’m not doing this mainly to self promote. Studying up on how to be an efficient learner will only benefit you in the long run.


I’ll start publishing articles related to this course starting next Monday. Subscribe to my blog so you won’t miss those. The next article in this series will be about how to set up a development environment on your computer to start writing Java code. Until then, have a good week and stay safe!