On November 14, 2019, at a meeting of the Moscow community of Java developers
jug.msk.ru, Ivan Osipov and Yuri Artamonov presented reports on migrating applications from
Java to
Kotlin and writing plugins for
IntelliJ IDEA .

About speakers
Until recently, Ivan and Yuri were colleagues working for
Haulmont . Currently, Ivan is part of the
Arrival Robotics team, Yuri is involved in the development of
IntelliJ IDEA at
JetBrains . Both of them make presentations at conferences. Yuri also has experience in participating in the program committee of conferences.
Ivan's reports:
Other links:
Twitter ,
GitHub ,
Habr ,
technical blog .
Yuri reports:
- “I want a strange - web UI in Java for desktop applications” ( JPoint 2018 : presentation , video )
- “Jlink and Custom Runtime Image - Frankenstein's Workshop” ( Joker 2018 : presentation , video )
- “APIs at the crossing do not change - how to build a stable API?” (With Alexei Stukalov) ( JUG.EKB-2018 : video )
- “APIs don't change at the crossing” ( Panda Meetup 2018 : video )
- Anatomy and Physiology of Vaadin Flow ( JPoint 2019 : presentation , video )
- IntelliJ IDEA Plugin DevKit Crash Course ( Joker 2019 Presentation )
Other links:
Twitter ,
GitHub ,
Habr .
About reports
Andrey Kogun opens the meeting, recalling the upcoming conferences (
SnowOne February 29, 2020 in Novosibirsk,
DevOops April 29-30, 2020 and
JPoint May 15-16, 2020 in Moscow) and introducing the speakers.

In the first part of the meeting, Ivan spoke about the motives for migrating code from
Java to
Kotlin , about the sequence of steps for doing this, about the pitfalls of using the built-in
IntelliJ IDEA converter, about his recommendations based on the experience gained, mentioning the advantages and disadvantages of migrating to
Kotlin .

After the break, Yuri presented a report on writing plugins for
IntelliJ IDEA . The report was an extended version of his presentation at the recent
Joker 2019 conference. Since on the first day of the conference
I was not able to get to Yuri's report, on the weekend before the meeting
jug.msk.ru watched a video of the speech. I recommend that you pay close attention to the last four slides of
the newer version of the report :
- added link to chat in Slack regarding plug-in development;
- announced the installation of plugins in IntelliJ IDEA without restarting (cheers!);
- future actions regarding the deprecated API are listed;
- New features in the upcoming IntelliJ IDEA 2019.3 Ultimate release.

In a relaxed and friendly atmosphere, there was the opportunity to talk during the break and after meeting both with the speakers and with the participants of the
JetBrains development team who were present in the hall.

Code of examples:
Ivan ,
Yuri ; Presentations:
Ivan ,
Yuri . The video will appear soon (see links below).
Links for
jug.msk.ru :
- TimePad - announcements of meetings and registration for them, subscription to a notification by mail about meetings
- YouTube - Video Reports
- Speaker Deck - Presentations
- VK - meeting announcements, photo reports, links to materials of past meetings
- Twitter : account (announcements of meetings, photo reports, videos) and hashtag (tweets with comments about meetings)
- Habr - reviews of meetings, you can find all the reviews by tag