Speaker Details

Eugene Petrenko

JetBrains

Eugene is a developer at JetBrains, software developer, speaker, and blogger. His interests include software development, distributed systems design, cloud computing, and programming languages. Eugene holds a PhD in computer science; he writes code in Kotlin, Go, Java, C/C++, Kotlin/Native, and JavaScript. A Kotlin fan for years, he started using Kotlin before 1.0 and completed his first production Kotlin app back in 2013.

Coroutines for Java Developers

Conference
Programming languages

Did you know that coroutines were invented about 50 years ago? A coroutine is a function that can not only return but also suspend somewhere in the middle and resume later from that point. Coroutines are implemented in Kotlin, an open source, modern, pragmatic and statically typed, multiplatform and JVM programming language. We’ll use coroutines as the remedy for the callback hell problem of non-blocking server-side applications, graphical, mobile or client applications. We see how to write an equivalent code a linear looking code with suspend functions. You’ll learn how to apply Kotlin coroutines for your existing project independently of JVM version.

Scheduled on Wednesday from 15:10 to 16:00 in Room 4

Coroutines
Async
Kotlin
Non-blocking

Facts you may not know about Kotlin

Conference
Programming languages

Since Kotlin began, back in 2010, many features have appeared in the language, some of them are still going, others only show up in the deepest darkest depths of source repository history. We will start the talk with several fun facts from Kotlin's past. You will learn a little about the namesake-island, traits, generics, and type erasure. Writing compact, clear, and idiomatic code will also be one of our topics. Nowadays, Kotlin is not just the JVM language it was in the very beginning, today it supports JVM, JS, and native platforms, including iOS. Did you know of the possibility to share common code and libraries between these platforms? Join us for more.

Scheduled on Wednesday from 12:00 to 12:50 in Room 10

Generics
Bytecode
Type Erasure
Proxies
Kotlin

Talks by tracksTalks by session typesList of SpeakersSchedule