<   BLOG
What Is Kotlin? A Brief Introduction
01 JUN 2022

When it comes to choosing a programming language, there are a lot of factors to consider: compatibility, functionality, effectiveness, and time constraints of the project. Kotlin appeared only 11 years ago but has already generated a lot of buzzes in the startup world and earned the trust and respect of many developers. Even Google officially announced Android App Development to be increasingly Kotlin-first.


In this article, we will discuss what is Kotlin programming language, review its pros and cons, look at the real-world examples and discuss what projects will benefit from Kotlin app development services.

What is Kotlin programming language?

Kotlin is a modern cross-platform programming language designed by JetBrains, a Czech software company. Two things you need to know:
    • Kotlin is open-source, so code is publicly accessible and many developers from around the world contribute to the evolution of the language.
    • It is also statically typed, meaning it gives developers a stricter environment. Types are checked before the run-time by a compiler, therefore it helps to catch errors and bugs at the early stages.

What is Kotlin?

Just like Java refers to an Indonesian island, Kotlin’s name also has geographical origins. The name comes from Kotlin Island, located near Saint Petersburg in Russia. There is one of the offices of JetBrains in the city.

How Kotlin was created: a timeline

Before discussing why use Kotlin and what projects will benefit from developing in this language, let’s take a look at its history.

2011

JetBrains announced they are working on a new programming language “for industrial use” that will have all the features other languages lack. They also described what is Kotlin and teased about what it would look like: trouble-free, statically typed, and JVM-based.

2016

Kotlin 1.0, the first official version of the language, was released. That was the beginning of the Kotlin app development services era.

2017

During the annual developer’s conference, Google announced that Kotlin would get officially supported on Android. The same year, version 1.2 was released with a new cross-platform programming feature. More and more developers found out what Kotlin was and started working on it.

2019

May 7th became a big day for the language — Google officially pronounced Android to be Kotlin-first and said that they recommended Android app development using Kotlin. The community reaction was very positive and supportive — by that time Kotlin was ranked as the #4 most-loving languages among developers.

Also, JetBrains and Google collaboratively opened a Kotlin foundation to promote and advance the language.

2020-2021

Kotlin released 3 new versions, constantly improving its functions, safety, and interoperability.

What is Kotlin now?

JetBrains and Google support Kotlin development, and that is the reason why the language never stops evolving. The founders have several basic principles of development that help them stay afloat:
  • Always keep the language up-to-date.
  • Keep collecting and analyzing feedback from the users.
  • Release updates thinking about users and their comfort.

Pros and cons of Kotlin

After we talked about what is Kotlin programming language and how it was designed, let’s move to more practical chapters. To help you decide if you want to develop an Android app with Kotlin, we gathered together the key advantages and disadvantages of the language and asked our developers for a second opinion. Let’s dive in!

Pros

The answer to why use Kotlin for your app development lies in the area of its pros. Here are the main 4:

1. Interoperable with Java. This means that the two languages are compatible and you can use both for the project. For example, if you already have an Android app built on Java, you don’t have to pay for Kotlin app development services from scratch. Instead, when you add new features or release an update, you can add Kotlin units as much as you want, while the rest of the code will be in Java.

2. Higher productivity. Conciseness is what Kotlin is known for. The language allows developers to express a lot with just a few lines and offers a big variety of tools that are regularly updated and expanded.

3. Less trivial bugs. Kotlin is a statically typed language with determined variable types at compile time. As we mentioned before, it helps programmers catch errors early on.

4. Easy to learn. For anyone who has experience with other programming languages, learning Kotlin will be seamless. Its syntax and design are simple to grasp and comprehend, which leads to its growing popularity and an increasing number of developers on the market.

Our opinion

“Only 10 years ago, no one knew what Kotlin was, and now it has surpassed Java for Android apps. All credit to its expressiveness, productivity, as well as simple syntax, and logic. We use this powerful language for any kind of development for web and Android platforms. But not for iOS — Kotlin uses a JVM that Apple software doesn’t support. However, JetBrains and Google promise: it’s coming.”

Cons

To make a weighted decision about Android app development using Kotlin, we need to talk about its drawbacks. Despite the fact that it was hard, we came up with 2 main cons:

1. Fewer resources for learning. Compared to Java, Kotlin is much younger and has been around for much less time. Therefore, there are relatively fewer resources for beginners. If you want your in-house developer to learn what is Kotlin and how to code in it, it might take a couple of weeks before they start to practice. But if you prefer an outsourced team — this won’t be a problem. Moreover, the popularity of the language grows, and more and more courses, websites, and articles appear every single day.

2. Unstable speed of development. This is what Kotlin is skeptically known for. Tests for full builds showed that Java can be 13% faster than Kotlin. With partial builds, Kotlin can perform slower and faster than Java, and this fluctuation can influence total build time.

Our opinion

“Both drawbacks are valuable, however, they overlap with advantages. First of all, Kotlin has a big community of developers around the world, so soon limited resources won’t be a problem. Secondly, Kotlin speed won’t matter much if you work with professional developers. For example, our team knows how to develop an Android app with Kotlin and has a lot of experience with the language. That is why we can guarantee a stable speed of development. Moreover, the Kotlin team considers feedback from the users, and always improves its usability and performance.”

3 apps that use Kotlin

If you still wonder why use Kotlin for your Android app and how to do it well, real-world examples can help. We invite you to look at 3 different mobile applications that use this language and learn from their experience.

CashApp

what is kotlin app example - cash app - a peer-to-peer payment service

The logo of CashApp

CashApp is a peer-to-peer payment service that helps users send and receive money on Android and Apple devices. Originally, the app was developed using native code, tools, and libraries. Slowly, they started experimenting with shared code and eventually decided to test the Kotlin Multiplatform (KMM).

What is a Kotlin Multiplatform? It is a software development kit with a shared code between different mobile platforms. For example, two mobile applications can share the same presentation logic and core layers, which saves a lot of time writing and maintaining code.

Nevertheless, the Android version of CashApp still heavily relies on native code, usage of Kotlin helped to get rid of the troubling JavaScript parts, improve the safety of the payment information and open the floor for more close collaborations between iOS and Android teams.

N26

what is kotlin app example - n26 online banking app

The look of N26 mobile app

What is Kotlin programming language doing in the bank field? In 2018, the German online bank announced they would use Kotlin as the primary development language for the N26 mobile app. Answering “why use Kotlin”, they named several reasons: it is easier to learn, opinionated, has a big growing community, and can be adopted gradually, without replacing the whole code.

By the way, N26 is not the only bank using Kotlin. The ING, a Dutch financial and banking corporation, also adopted the language for their Android app. Both companies had a lot of safety concerns dealing with sensitive information of users. And they found the solution — they combined parts with Java code to use the Fortify code scanner, plus manually perform the review.

Atlassian | Trello

what is kotlin app example - trello app logo

The logo of Trello

Trello is an agile software for tracking and managing teamwork. It helps to plan, assign, move and report tasks on the dashboards. Their app is a good example of Kotlin’s interoperability — the old code is written in Java, but new parts of Trello Android are added in Kotlin. They called themselves “true Kotlin pioneers”, because for the first time they used the new language in October 2016, way before it was endorsed by Google and everyone knew what is Kotlin.

Trello is powered by a company called Atlassian. They expanded Kotlin to other projects, including Jira for cloud and server, Confluence for cloud and server, as well as OpsGenie.

Our opinion

“The examples and our personal experience show that Kotlin can be used in different fields, including banking, finances, management software, food delivery, taxi services, and others. If you have concerns regarding the safety of data, migration from Java, or other development opportunities, ask our programmers and they will find the best individual solution for your project and needs.”

Key points

What is the Kotlin programming language?

Kotlin is an open-source cross-platform programming language powered by JetBrains and Google.

Why do developers love Kotlin for Android?

It is fully compatible with Java, easy to learn, has high productivity, and helps catch errors early on, before the run-time — simple answers to why use Kotlin.

What are examples of apps using Kotlin?

CashApp, N26, Trello, Jira — the list can be continued with DoorDash, Uber, Pinterest, and other companies.

What project Kotlin is good for?

What is Kotlin‘s main advantage is its versatility. It can be used for both server-side and client-side development for web and Android apps. MacOS and iOS are a bit behind for now, but the updates are coming.

About us

Brivian offers Kotlin app development services for startups. We are dedicated to bringing value to our passionate customers by creating high-quality platforms and utilizing cutting-edge technologies and tools. We have extensive experience developing web & mobile applications using Kotlin, Java, React Native, Swift, Ionic, Flutter, and Xamarin.

To discuss your project with us, fill out the form below and our team will get back to you.

Related Articles