Menu logo

Thoughts on Software Engineering

My Java Basics Full Course: Free 13 Hours Java Video Tutorial + 74 Hands-On Exercises

I am happy to publish my free Java coding basics course for absolute beginners in computer programming (13 hours video tutorial + 74 hands-on exercises). This is an excellent Java coding video tutorial, which gets deep into basic programming concepts, such as coding techniques, algorithmic thinking, problem solving and debugging.

Access the free Java coding video lessons, practical hands-on assignments, the course slides, and the automated code grading system for your exercise solutions here:

This free Java programming course is designed for beginners who want to start with Java coding and find out if they like it. It covers the first steps in programming with Java:

  1. Installing the Java development tools and development environment
  2. Writing and running Java commands and simple programs in Java
  3. Receiving input from the user and printing text and numbers to the user
  4. Using data, operators and expressions to perform calculations
  5. Using the if-else and switch-case conditional statements
  6. Repeating blocks of code using loops: for-loops, while-loops and do-while loops
  7. Writing more complex control-flow logic, which combines loops, conditional statements, nested loops and nested conditions

Video Tutorial: Java Basics

Watch my free 13-hours Java coding full video course in YouTube:

Full Java Basics Course (Part 1 of 2): Data, Calculations, Conditions, If-Else
Full Java Basics Course (Part 2 of 2): For Loops, While Loops, Nested Loops

Course Instructor: Svetlin Nakov, PhD

I am Svetlin Nakov from SoftUni (the Software University), your Java coding instructor (LinkedIn: I am an experienced tech trainer who helped in the last 20 years more than one hundred thousand young people to begin coding, learn software development and start a tech job. See the profiles of my graduates in LinkedIn:

Just Google my name and you’ll find more about me, my programming books, software academies, conference talks and other teaching activities:

More about me: Svetlin Nakov has 20+ years of technical background as software engineer, project manager, consultant, trainer, and digital entrepreneur with rich technical experience (back-end, Web development, information systems, databases, software engineering, cryptography, blockchain, C#, Java, JS, PHP, Python, front-end, HTML, CSS, JS frameworks). Svetlin Nakov is a regular speaker at hundreds of conferences, seminars, courses and other trainings and holds a PhD degree in computer science. He is author of 15 books about computer programming and software technologies, lives in Sofia, Bulgaria and works as an passionate trainer and inspirer at SoftUni.

Learn By Doing: Learn to Code by Coding Exercises and Projects

This free Java video course teaches skills, not just theory. Each course section comes with carefully prepared hand-on practical exercises, where you write code to solve practical problems, run and test your solutions, maybe make bugs, fix them, and test your code over and over until it finally works properly. The entire course provides more than 70 exercises, with automated grading in the SoftUni judge system.

Remember that coding is a skill, and it should be practiced, just like any other skill. Write code to learn the skill of coding!

Automated Grading System for Your Code

To check your solutions of the practical hands-on exercises from this course, I give you a free access to the SoftUni’s automated judge system, where you send your Java code, and you get automated grading: the judge tells you whether your solution is correct or wrong. This is quite useful. Try it and you will love it!

During the course lessons I will show you how to solve many coding problems. Follow my guidelines and sample solutions and write your own solutions. Try to solve the additional exercise problems as well. Write code, play with the code, experiment, make bugs and imperfections, fix them, write code, do it many times! This is how you acquire coding skills.

Spend Enough Time on the Exercises!

Don’t skip the coding exercises at the end of each course section! They are much more important than the video lessons. The exercises give you the practical skills, the skills needed for your next tech job.

If you are serious about programming, take this course with all its exercises. You should invest about 30 or maybe 40 hours. Yes, this is a lot of time, but learning programming takes time! Just like learning math. Did you remember how many hours you spent at school to learn the basics of math?

In case you have a question or difficulty solving some of the exercise problems, or you have a bug, and you don’t know how to fix it, we are here to help. Join the SoftUni community and ask our coding mentors for free anything about coding and particularly about this course and its practical exercises.

This Java Course is Just a Start

This course is just a start in Java programming. To become a software engineer and start a tech job, you should learn and practice programming 10-15 times more than what I give you in this course. It takes time and effort to build the skills for your first IT job, so be patient and keep coding for long time (1-2 years until your first developer job).

To become a junior Java developer, you should learn advanced coding, basic Java APIs, data structures and algorithms, object-oriented programming, databases and object-relational persistence frameworks, such as Hibernate and Spring Data, backend development, MVC frameworks and enterprise technologies, such as Spring Boot, Spring MVC and Java EE, as well as basic front-end skills, such as HTML, CSS, JavaScript, REST and AJAX. This is what the software companies expect from you as a junior Java developer. It takes time to get practical skills and experience with all these concepts and technologies, along with solid GitHub portfolio of Java projects.

If someone says that a beginner can learn programming and start a job in 3 or 5 months, don’t believe him. This is unlikely to happen. You better study slowly and thoroughly. The effort will pay off.

Free Help from Mentors

Join the SoftUni community at and ask for free help from our mentors. Yes, you can ask anything about this training, and you’ll get a free answer! At SoftUni we already helped hundreds of thousands of students to learn coding. See their profiles at the SoftUni alumni page in LinkedIn:

Java Basics: Course Topics

This practical free Java basics video course covers the following topics:

  1. Java Coding: First Steps. The Java Language, IDE, Writing Java Programs and Commands
  2. Expressions and Statements. Variables, Data Types, Operators and Expressions in Java. Console-Based Input and Output.
  3. Conditional Statements. Control-Flow Logic with the if-else Conditional Statements
  4. Advanced Conditional Statements. Nested and Complex if-else Statements
  5. For Loops in Java. Repeating Blocks of Code. Increasing a Variable from X to Y
  6. While Loops. Repeating Code Blocks While a Condition Is True. Nested Loops
  7. Nested Loops. Using Loops Inside Other Loops. Implementing More Complex Control-Flow Logic

The Judge System: Automatic Grading for Your Code

Before the start, I will show you the SoftUni judge system, where you can check your exercise solutions instantly, for free.

SoftUni Judge is an automated system for code evaluation. Just send your code solution for certain coding problem from this course and the system will tell you whether your solution is correct or not and what exactly is missing or wrong. I am sure you will love the judge system, once you start using it!

Java Coding: First Steps

This section is the beginning of our journey with Java coding. I will explain you what Java is, the Java programming language, the Java platform, JDK, the Java runtime environment, what a compiler is, what an IDE (integrated development environment) is, and how to write simple Java programs in IntelliJ IDEA, a modern Java IDE. I will demonstrate you how to write, compile and run Java programs with several code examples.

As a homework assignment, you will have a few hands-on exercises: writing a few simple Java programs, such as what I demonstrated to you, and submitting your solutions to the judge system.

Expressions and Statements in Java

In the next course section, I will talk about variables and data types (such as string, integer number, floating-point number, boolean and others), statements (which define the commands in the programs), the most used arithmetic operators (like plus, minus, multiply, divide and remainder) and the expressions in Java (or how to combine operators with values to implement a calculation).

I explain and demonstrate how to implement a console-based input and output in Java. I will show you how to read user input, format and print output to the console, and how to read and print text and numbers. I will teach you how to use the java.util.Scanner class to read text and numbers and how to work with integers and decimal numbers.

As a homework assignment you will have several hands-on exercises related to reading some data from the standard input, performing simple calculations with them and printing the results in a certain format.

Conditional Statements

In the next section I will explain and demonstrate how to write simple if-else statements in Java. Conditional statements (like the if-else statement, the switch-case statement and few other statements in Java) check some condition and if it is true, they execute certain block of code, otherwise they execute another block of code. We shall see how they work in practice and after that, as usually, you will have homework assignments.

You will have several hands-on exercises related to reading some data, performing a check and printing a result, depending on the input data and the checks.

Advanced Conditional Statements

In the next section of the free Java coding basics course, it’s time to start writing more complex program logic. I will show you how to use complex conditions in your if-statements: how to use the logical OR, logical AND, and logical NOT operators, as well as brackets, to design more complex checks. Additionally, I will demonstrate you through examples, how to write nested if-else statements, and longer sequences of if-else-else-if-else constructions. Together we shall solve several practical problems.

As usually, you will have a homework assignment: to solve a few hand-on exercises, that combine complex and nested conditions for processing some input data and calculating and printing certain results.

For Loops in Java

In the next course section I will teach you how to use the for-loop statement in Java, in its basic form.

In programming loops are used to repeat a block of code many times, typically for each value in given range. For example, we can write a for loop, which increases the value of a variable x from 1 to 50 and prints the value of x at each step. You will see how to do this in action, and then practice with the hand-on exercises, which I have prepared for homework.

While Loops

In the next section I will explain the concept of while loops. While loops in Java allow code blocks to be repeated, as long as certain condition is true. Let’s see how this works in more detail.

As usually, I will explain the concepts to you through examples, then you’ll have homework exercises to practice your new skills from this topic.

Nested Loops

In the next course section I will talk about nested loops. In programming, loops can be nested. This means putting another loop in the body of a loop. We can have several nested loops: we can have a loop in another loop, which holds a third loop.

And nesting is natural in the real world. For example, a building can have many floors and each floor can have many rooms. In this way we nest the floors inside the building and the rooms on each floor. If we want to walk around the building and print each of its rooms on each of the floors, we must use nested loops.

You will see how the nested loops work in action and then solve some practical exercises that I will give you as a homework.

Coding Exercises: The Most Important Part of This Course!

The most essential part of this practical Java training are the hands-on exercises: the homework assignments after each course section. The entire course provides more than 70 exercises, with automated grading in the SoftUni judge system. You should spend about 30 hours of coding to solve them. Yes, this is a serious effort, but it will pay off.

Remember that the only way you get practical skills is by practice: by writing code, by solving exercises. Watching video lessons can be pleasant and motivational, but you will never become a software developer by only watching videos. It is a good start, but it’s not enough.

Please, follow the exercises: solve the practical problems and send your solutions to the judge system for grading. You have more than 70 exercises to solve. Most of them were already solved in the video lessons, but the others were intentionally left for you.

Get Free Mentorship Help

In case you have a question or difficulty solving some of the exercise problems, or you have a bug, and you don’t know how to fix it, we are here to help.

Join the SoftUni community at and ask for free help from our mentors. You can ask anything about this training, and you’ll get a free answer! At SoftUni we already helped hundreds of thousands of students to learn coding. See their profiles at SoftUni alumni at LinkedIn.

Join the SoftUni global learn-to-code community at to get free access to the practical exercises and the automated judge system for this course. Get free help from mentors and meet other learners. It’s free!

My most successful teaching methodology is “learn by doing“. Write code, run the code, test the code, make mistakes, fix them, run and test again, finally submit your code in the judge. This is how you learn coding: by practice.

Subscribe to My YouTube Channel

Do you like this Java basics free programming course? Do you want more? Subscribe to my YouTube channel to stay in touch with my free coding courses, lessons and tutorials:

I will continue publishing more Java code lessons, tutorials and full courses on programming and software technologies. I plan to publish a free Java certification course to prepare you for the “Java Foundations” official Oracle certificate.

Comments (0)

RSS feed for comments on this post. TrackBack URL