In order to interoperate with the underlying runtime, and to implement advanced features, the Kotlin Compiler needs to take some liberties on your behalf. It must translate Kotlin specific constructs into concepts the runtime can understand, which requires that it reinterpret your code in unexpected ways. This applies to both simple things like symbol names and complex abstractions like suspending and composable functions.
In this talk, we will lift the lid on some of the tricks the Kotlin compiler (with plug-ins) uses to keep your coding life simple, plus show how and when you can influence its output. Examples will be drawn from Ktor, Arrow, Jetpack Compose and other popular Kotlin libraries.
They should be proficient Kotlin programmers, familiar with coroutines and (ideally) JetPack Compose
About the speakers
Senior Trainer and Coach at Instil Software
Garth Gilmour is the Head of Learning at Instil, a software company in Belfast that specialises in Kotlin. Starting back in 1999 he first taught C++ to C coders, then Java to C++ coders, then C# to Java coders and now teaches everything to everybody, but prefers to work in Kotlin. He speaks frequently at meetups, presents at conferences and co-organises the Belfast BASH series of developer events. When not at the whiteboard he coaches Krav Maga, lifts heavy weights and fights nerf wars with his kids.
Software Trainer at Instil Software
Ryan Adams has over 16 years of industry experience. During that time he has worked as a developer, project manager, technical architect, and team lead but never strayed far from the code. Most of his career has involved working on software for learning, from products for BBC Schools, to LMS Systems including Moodle and Open edX. Most of his work has been in dynamic languages, particularly PHP, Node.js, Ruby and Python. Aside from training, Ryan is an amateur forester, owning and maintaining a field of woods with 1000 trees deep in the County Down countryside. He also has an addiction to candy crush.