The ability to add or change program functionality at runtime is not a new thing, but it is surprisingly missing from most software development tools. This is a shame because it’s way easier than most developers think and there are many low-hanging fruits to pick up in terms of tools integration and productivity gains. In this session you will learn how to extend IntelliJ IDEs functionality at runtime using Kotlin and LivePlugin. In particular, you will learn API basics for plugin development, how to create actions to modify text/code, DSL for simple UI elements and language inspections/intentions.