Kotlin: a programming language as a product

A programming language is also a product. It helps developers express their ideas in a way that the computer can interpret. It may seem that developing a language means taking the latest achievements in the theory of programming languages, implementing them and rolling them out to developers from year to year. This is not true. Egor Tolstoy , Kotlin Product Manager, and Andrey Breslav, Kotlin project manager, told why JetBrains is a free programming language, how it works and where new users come from. This article is inspired by the release of the make sense podcast about Kotlin .

Language is primarily a working tool that millions of people use every day for many hours. All these people solve different problems and face different problems. For the Kotlin development team, knowledge of these scenarios and pains is the main source of ideas on how to improve user experience and empower programmers.

We started making Kotlin ten years ago, and the first release came out in the winter of 2016. It was originally conceived as a language that would improve the lives of Java programmers. Now even applications for browsers and iOS are written in Kotlin. Modern Kotlin is a universal programming language with a lot of nice features for developers, statically typed, tailored for large projects and support for large code bases.

In a series of articles, we will talk about how Kotlin is organized from a product point of view, how product management is organized for programmers for programmers, what is developer experience, how it can be measured and improved.

Why JetBrains makes a free programming language

We have been answering this question, it seems, since 2011 - when we announced that we were doing Kotlin. JetBrains does not earn directly on Kotlin, the company has other sources of income - paid products. It's a whole ecosystem of tools that developers use every day. 

By the way, Egor has a separate article in his blog about researching the market of tools for developers. If you are interested to know how many developers there are in the world, which languages ​​are the most popular now, or what front-end developers use in their work every day, be sure to read.

JetBrains .

. , - . β€” Kotlin.

Kotlin IDE JetBrains, - . , IntelliJ IDEA Kotlin β€” - Kotlin-. , , IntelliJ IDEA .

. JetBrains , IDE, β€” , Kotlin. β€” , , IDE. . - JetBrains Kotlin, β€” , JetBrains Kotlin.

Kotlin . JetBrains , . Kotlin , Java. Kotlin . , IntelliJ IDEA Kotlin 1,5 . Space β€” , Kotlin : Android, iOS, , , . , , , Kotlin .

. JetBrains β€” . β€” - , , .

β€” Kotlin . β€” , , , JetBrains Β« , Β». .

β€” , . : Word. β€” , Β«Word Β» . 

Kotlin β€” , - , , , . , .

Kotlin as a product: schema
Kotlin :

. , . . , . : 

  1. , .

  2. , .

(IDE). IDE, Β«Word Β». IDE:

  • ;

  • ;

  • ;

  • .

, IDE β€” , . , , , .

. β€” . , -, - JSON, Bluetooth β€” . , . , , .

, . , . β€” , .

. , Kotlin . Kotlin β€” JVM, JS Native. , Kotlin , : , , . 

β€” , . 

Kotlin Podlodka.

. , : , , . , β€” Kotlin, , - .

. , , β€” , Kotlin β€” . 6 Kotlin, 1,2 . 

: , Kotlin, , , , - , , , , . Kotlin, .

. : «» , β€” «» . β€” . 

, :

. , COBOL , ,   ++ β€” UI .

. Java JavaScript. , , , . , , , .

, , β€” . : .

. , . , Kotlin Atlassian, Adobe Netflix, , Android-, , Kotlin. , , β€” Android-, .

. , JetBrains β€” Kotlin, - . : .

β€” . : , , , . .

.

. . β€” , . , Kotlin . β€” - , - . , Android- Kotlin. , Google Kotlin . β€” - .

. 8,5% , , , . , , .

. , - β€” , Android- .

β€” , . , -, , . , β€” .

, , , , Kotlin , , , β€” . , .

Product growth stage classification

Β«Crossing the ChasmΒ». . Kotlin Data Science, , IoT β€” . , - β€” , Android Late Majority Laggards.

. , β€” , . - . , β€” .

, . Kotlin , - . , Kotlin - - , . , , Β« Β» β€” , . . , , , , .

:

. , . , , , . Kotlin .

An example of a typical Kotlin operation
Kotlin

. Kotlin . , , , , β€” .

. Kotlin , . , , , 20βˆ’25 . , Kotlin . β€” .

, value proposition ( ) . , SDK KMM, :

  • - .

  • , , .

  • .

Kotlin

JetBrains β€” . , IDEA : , , , . , , ( . JetBrains).

Kotlin . , , . β€” , . .

, , , , -. , β€” . , . , . 

, β€” , . β€”

β€” , . β€” . , : , , developer experience .

make sense Kotlin . make sense , ProductSense, , . :

β€” ;

β€” -, -;

β€” , .




All Articles