Session
Schedule FOSDEM 2022
Kotlin

Kotlin, CLIs and StarWars!

An introduction to creating CLI applications with Kotlin using Picocli
D.kotlin
Julien Lengrand-Lambert
<p>picoCLI is a small library that can be used to create JVM based command line interface applications. Within 30 minutes, we'll look at how to setup a project, create a small application and package it for others to use.</p>
picoCLI is a small library that can be used to create JVM based command line interface applications. Within 30 minutes, we'll look at how to setup a project, create a small application and package it for others to use. picoCLI is nice for several reasons : CLIs are a great way to automate some commands we run every day. And because it supports Java and Kotlin, we can keep using our main language of choice rather than having to dive into bash or node. Finally, pico applications can be turned into native images using GraalVM, which allows for a nice end user experience. By the end of this talk, you'll have a basic knowledge of what picoCLI can do, how to set it up and hopefully ideas of use cases to run it with! This is a byte size presentation so it'll have to go fast! I'll introduce the project in 5 minutes. Then jump into a starter project and the basic features of the library around. We will compile and test it live. - 20 minutes Finally, we will look into some of the advanced features, and check at packaging options for end users - 5 minutes

Additional information

Type devroom

More sessions

2/6/22
Kotlin
D.kotlin
<p>Welcoming participants to the virtual edition of the Kotlin DevRoom @ FOSDEM</p>
2/6/22
Kotlin
Anton Arhipov
D.kotlin
<p>In 2021 Kotlin turned 10 and the team delivered 2 major releases (1.5.0 and 1.6.0) and a few minors. The main themes of those releases were Java interoperability and consistency of the language features. Meanwhile, Kotlin/JS has been promoted to Beta and KMM is on its path to reaching Beta status as well. However, one long-running project in Kotlin is the development of the new compiler, K2, which should set a solid foundation for the language and the ecosystem for the years ahead.</p> ...
2/6/22
Kotlin
Romain Boisselle
D.kotlin
<p>Dependency Injection is a complicated topic, and when used in a project that compiles to multiple targets through different compilers &amp; runtimes, it can lead to serious headaches. However, the Inversion of Control pattern brings a lot of architecture features and safety.</p>
2/6/22
Kotlin
Marcin Moskala
D.kotlin
<p>The Kotlin typing system is amazingly designed. It was designed and constantly improved for years, and it was built based on experiences from other typing systems. As a result it gives us very comfortable nullability support, type inference, universal guards, and much more. In this presentation, we’ll dive deep into Kotlin typing systems and how small design choices lead to a better programming experience.</p>
2/6/22
Kotlin
Holger Brandl
D.kotlin
<p>kalasim is a discrete event simulator written in pure Kotlin that enables complex, performant, dynamic process models. It provides a statically typed API, dependency injection, modern persistence, structured logging and automation capabilities.</p> <p>kalasim is designed for simulation practitioners, process analysts and industrial engineers, who need to go beyond the limitations of existing simulation tools to model and optimize their business-critical use-cases. In contrast to many other ...
2/6/22
Kotlin
Dinorah Tovar
D.kotlin
<p>Grab your notebook cause in this talk, we are gonna talk about Math and Kotlin! Especially in the power that Kotlin has to run long operations and the power to perform some calculations like computing min, max, an average of numbers stored in a list! - from sumOf {} to multi-dimensional arrays to charts!</p>
2/6/22
Kotlin
Anna Zharkova
D.kotlin
<p>KSP (Kotlin Symbol Processing) is an API from Google for writing Kotlin compiler plugins. Using KSP we can write annotation processors to reduce boilerplate and solve cross-cutting concerns. Also KSP is more effective than KAPT. Among the advantages of using it is the support of Kotlin Multiplatform. Another way to optimize common code is to use Kotlin plugins. In my talk I would to like to show some samples how to use own plugins and KSP processing in Kotlin Multiplatform app supporting both ...