Talks and keynotes

Machine Learning and IDE: A JetBrains Case

September 29, 2021

Talk, ICSME'21, Virtual

Machine learning is a hot topic almost in every domain right now, including software engineering. More and more research papers are being published, introducing new approaches and improving existing ones, solving dozens of different tasks in this domain. Many of these papers report very high quality of their models, so sometimes reading them leaves you wondering, why don't we see features like this in our development tools? Well, in most cases, it is not that straightforward. In this talk, I discuss the way research ideas and academic prototypes find their way into software products at JetBrains. I will show several cases of how machine learning approaches are integrated into a modern IDE used by millions of developers every day. I will also highlight the challenges we usually face while doing it and discuss the promising research areas in this field.

Code anomalies in Kotlin programs

February 03, 2019

Talk, FOSDEM'19, Brussels, Belgium

This talk discusses code anomalies — code fragments that are written in some way that is not typical for the programming language community. Such code fragments are useful for language creators as performance tests, or they could provide insights on how to improve the language. With Kotlin as the target language, we discuss how the task of detecting code anomalies for a very large codebase could be solved using well-known anomaly detection techniques. We outline and discuss approaches to obtain code vector representation and to perform anomaly detection on such vectorized data. The talk highlights examples of such anomalies found in open source GitHub repositories.