Kotlin Learning Courses News Project-Based Learning

Kotlin Onboarding: Introduction

Read this post in other languages:

Kotlin is a powerful, cross-platform programming language that is quickly becoming one of the most popular choices for modern software development. It is a statically typed language developed by JetBrains and officially supported by Google for developing Android applications. With its concise syntax, easy interoperability with Java, and support for a wide range of platforms and technologies, Kotlin is an excellent choice for developers looking to take their skills to the next level.

To help you get started with this exciting language, we’re proud to announce Kotlin Onboarding: Introduction, the first installment in our new Kotlin Onboarding series on JetBrains Marketplace. This course is designed for anyone who wants to learn how to write simple console applications in Kotlin.


Prerequisites and topics covered

This course is perfect for learners who already have a basic understanding of programming in any language and want to familiarize themselves with the syntax and capabilities of Kotlin. It’s important to note that the course does not explain fundamental concepts such as variables, functions, or loops in detail, but rather offers simple reminders about their definitions and demonstrates how they can be used in Kotlin.

In Kotlin Onboarding: Introduction, you will:

  • Get a refresher on basic concepts such as variables, functions, and loops.
  • Construct multi-row strings and utilize Kotlin’s string builders.
  • Learn about the null safety mechanism and collections.
  • Become familiar with lambda expressions in Kotlin.
  • Write Kotlin programs and understand their entry points.

The projects you’ll build

Upon completion of this course, you will have implemented 6 console applications, giving you a solid foundation to build upon. Each lesson in the course is structured as a step-by-step guide through small tasks, leading to a completed project. After each lesson, you’ll also be offered an additional project that covers the same topics but without the accompanying theory.

The projects are designed to be fun and engaging, allowing you to put the concepts you’ve learned into action. Let’s take a look at a few of them:

💬 Chat application

In this project, you’ll build a simple chat program that engages the user in an interactive conversation to learn more about them. Through the use of input and output statements, you’ll create a chatbot that can ask and answer questions, respond appropriately to different inputs, and keep the conversation going.

By completing this project, you’ll develop your skills in writing and debugging code, implementing basic algorithms, and creating user interfaces for console applications.


🐮 Bulls and Cows (Mastermind) game

This project is a variation of the classic guessing game Bulls and Cows, also known as Mastermind, in which players try to guess a word chosen by their opponent. The first player to guess their opponent’s secret word wins. The project is divided into two parts:

First, you will create a prototype of the game that will allow the user to play but the hidden word will always be the same.

In the second part, you will make it possible for the app to randomly generate the hidden word, as well as enable the app to safely communicate with the user by handling user input. By the end of this lesson, you will have a functional game that can generate a random hidden word, ask the user to guess it, and provide feedback on each guess.

🖌 Console Photoshop

In this project, you will create a simple console app using Kotlin that applies various filters to character images, similar to a basic version of Photoshop.

Through this project, you will learn how to work with multi-row strings and when expressions, basic error handling, string builders, and null safety. By the end of the project, you will have a basic functional app that can manipulate character images and that you can use as a starting point for more complex projects.

What’s next

To help you utilize the language more fully, we will be publishing additional modules that cover object-oriented programming and collections, as well as functional programming. We encourage you to keep an eye out for them and give them a try.

These modules will have a similar structure, consisting of several web projects and featuring popular games. For example, you will be able to create your own version of Codenames.


With its concise syntax and interoperability with Java, Kotlin offers many career opportunities in the fields of mobile application, backend, full-stack, and cross-platform development. By learning Kotlin, you’ll be setting yourself up to work on cutting-edge projects for some of the biggest tech companies in the world.

Companies like Amazon, Uber, and Trello have already adopted Kotlin, and its use is expected to continue to grow.

We hope you’ll enjoy studying with us! If you have any questions or would like to share your feedback, feel free to leave a comment below or contact us at academy@jetbrains.com

Enjoy learning!
Your JetBrains Academy team

image description