Developed by JetBrains, a Czech-based software development company, Kotlin is a static programming language for modern multi-platform applications.
Sponsored by JetBrains and Google, through the Kotlin Foundation, JetBrains is officially supported by Google for mobile development on Android. Kotlin is included as an alternative to the standard Java compiler for Android Studio.
The first version of Kotlin was released by JetBrains in 2011, after about a year of development. Designed as a new language for the Java Virtual Machine, its chief competitor was Scala. The lead designer of Kotlin cited the slow compilation time of Scala as a deficiency and promised that Kotlin would compile as quickly as Java. In 2012, Kotlin was open-sourced under the Apache License. In 2017, Google announced its support of the language, declaring it the preferred language for Android application developers in 2019.
Kotlin can be compiled into either Java bytecode or JavaScript to run on a device without a JVM. Advantages cited included that Kotlin is more secure than Java, and is able to statically detect common pitfalls. It is also said to be more concise than Java, achieved through the variable type inference.
Kotlin is also said to be an intuitive language, easy to learn, with most of its programming similar to that of Java. It can be mixed with the Java language, using codes and libraries written by Java because the two languages are interoperable. It fully integrates with the Java IDE without configuration. The IDE is able to understand and to run Kotlin code flawlessly. In fact, it can be built from any Java IDE or from the command line. It can take advantage of existing libraries in the JVM, Android, and in browsers.
Kotlin's functions may be extended, which means that users can extend more features of the class, and the code in the class. It is functional, object-oriented, and uses many of the concepts of functional programming.
Installation requires the installation of Oracle's Java Development Kit first, as the JDK contains all Java class libraries, all tool building and running Java programs. The JDK can create a Java development environment.
Topics related to the Kotlin programming language are the focus of resources listed in this category.
 
 
Recommended Resources
Available for free, with an Apache 2.0 License, Arrow is a library for typed functional programming in the Kotlin programming language. Intended to provide a lingua franca of interfaces and abstractions across Kotlin libraries, it includes the most popular data types, type classes, and abstractions to empower users to write pure functional programming applications and libraries. Its libraries, blogs, presentations, projects, and examples are featured, along with documentation and notes.
https://arrow-kt.io/
Promoting a book by Milos Vasic about Kotlin, a relatively new programming language running on Java Virtual Machine, Android, or on a web browser. Kotlin is concise, safe, versatile, and interoperable. Available in the Amazon Kindle, EPUB, and Mobi formats, the book may be purchased from the site or on several other online stores. Sample chapters may be viewed online, along with the table of contents, and all of the code examples from the book may be downloaded from the site.
http://www.fundamental-kotlin.com/
Koin is a lightweight dependency injection framework for Kotlin developers. Written in Kotling language, it uses function resolution only, with no proxy, no code generation, and no reflection. An introduction, reference documentation, developer guides, and quick references are put forth, including setup instructions, development notes, and news. Available without charge, using an Apache 2.0 license, the last stable version, as well as an open beta version can be downloaded.
https://insert-koin.io/
Hosted by Makery, early adapters and long-term advocates of Kotlin, the company offers Kotlin development services, consulting services, support services for the Kotlin programming language, and a variety of training services, workshops, and on-site pairing, details of which are provided on its site. Other resources include several articles on topics relating to the language, such as conference information and schedules, tips for writing a library in Kotlin, and Android development.
https://www.kotlindevelopment.com/
Licensed under the Apache 2 license, this is the official site of the Kotlin Foundation. Sponsored and developed by JetBrains, the site defines the programming language as being concise, safe, interoperable, and tool-friendly, and discusses its use in the Java Virtual Machine (JVM), Android applications, web browsers, and native programming. The latest releases are announced, upcoming conferences and workshops are scheduled, and a sandbox allows users to explore the language online.
https://kotlinlang.org/
Offering links to a wide array of online resources for Kotlin programming, the site posts links to official sites relating to the language, books and courses, Kotlin libraries and frameworks, that include using the language on (or for) the web, tests, dependency injection, coroutines, functional programming, JSON, database, tools, desktop, HTTP clients, editors, syntax highlighters, game development, Raspberry Pi, multi-platform program development, extensions, and configurations.
https://kotlin.link/
Sponsored by JetBrains each year, the conference features speakers and workshops focused on the Kotlin programming language. Although topics may change from year to year, typical subjects include asynchronous programming with Kotlin, refactoring to Kotlin, the use of Kotlin in Android, and the features and advantages of the language over other alternatives. Scheduled speakers for the upcoming conference are introduced, along with a schedule of workshops, venue data, and online registration.
https://kotlinconf.com/
Sponsored and developed by JetBrains, and licensed under the Apache 2 License, Ktor is a framework for building asynchronous servers and clients in connected systems using the Kotlin programming language. Its application structure and programming interface are outlined, along with a quick start for setting up the environment and starting up, creating web applications and services, connecting to services and applications, libraries, sample code and open-source projects, and API references.
https://ktor.io/
Created by Strumenta, a language engineering company, with the goal of making it easier for developers and organizations to benefit from the Kotlin programming language, the business offers informational articles, tutorials, and guides on various aspects relating to the language. The advantages of the language are highlighted, and on-site training is offered within Europe, while online training opportunities are also included, for Java developers, non-Java developers, and non-developers.
https://superkotlin.com/