activity
20202026
most citedUsing AI-Based Coding Assistants in Practice: State of Affairs, Perceptions, and Ways Forward

88 citations · 136 across the 34 of their papers we have counts for

collaborators
Showing cs.SEShow all

35 papers · 1 filter

cs.SE2025

Challenge on Optimization of Context Collection for Code Completion

Dmitry Ustalov, Egor Bogomolov, Alexander Bezzubov +4

The rapid advancement of workflows and methods for software engineering using AI emphasizes the need for a systematic evaluation and analysis of their ability to leverage informati…

cs.SE2025★ 1 cited

Observing Fine-Grained Changes in Jupyter Notebooks During Development Time

Sergey Titov, Konstantin Grotov, Cristina Sarasua +5

In software engineering research, the analysis of fine-grained logs led to significant innovations in areas such as refactoring, security, and code completion. However, even though…

cs.SE2024★ 1 cited

Drawing Pandas: A Benchmark for LLMs in Generating Plotting Code

Timur Galimzyanov, Sergey Titov, Yaroslav Golubev +1

This paper introduces the human-curated PandasPlotBench dataset, designed to evaluate language models' effectiveness as assistants in visual data exploration. Our benchmark focuses…

cs.SE2024★ 16 cited

One Step at a Time: Combining LLMs and Static Analysis to Generate Next-Step Hints for Programming Tasks

Anastasiia Birillo, Elizaveta Artser, Anna Potriasaeva +6

Students often struggle with solving programming problems when learning to code, especially when they have to do it online, with one of the most common disadvantages of working onl…

cs.SE2024

Towards Realistic Evaluation of Commit Message Generation by Matching Online and Offline Settings

Petr Tsvetkov, Aleksandra Eliseeva, Danny Dig +4

When a Commit Message Generation (CMG) system is integrated into the IDEs and other products at JetBrains, we perform online evaluation based on user acceptance of the generated me…

cs.SE2024★ 88 cited

Using AI-Based Coding Assistants in Practice: State of Affairs, Perceptions, and Ways Forward

Agnia Sergeyuk, Yaroslav Golubev, Timofey Bryksin +1

Context. The last several years saw the emergence of AI assistants for code - multi-purpose AI-based helpers in software engineering. As they become omnipresent in all aspects of s…

cs.SE2024★ 2 cited

Full Line Code Completion: Bringing AI to Desktop

Anton Semenkin, Vitaliy Bibaev, Yaroslav Sokolov +14

In recent years, several industrial solutions for the problem of multi-token code completion appeared, each making a great advance in the area but mostly focusing on cloud-based ru…

cs.SE2024★ 3 cited

Clustering MOOC Programming Solutions to Diversify Their Presentation to Students

Elizaveta Artser, Anastasiia Birillo, Yaroslav Golubev +4

In many MOOCs, whenever a student completes a programming task, they can see previous solutions of other students to find potentially different ways of solving the problem and to l…

cs.SE2023★ 1 cited

From Commit Message Generation to History-Aware Commit Message Completion

Aleksandra Eliseeva, Yaroslav Sokolov, Egor Bogomolov +3

Commit messages are crucial to software development, allowing developers to track changes and collaborate effectively. Despite their utility, most commit messages lack important in…

cs.SE2023★ 1 cited

Overcoming the Mental Set Effect in Programming Problem Solving

Agnia Sergeyuk, Sergey Titov, Yaroslav Golubev +1

This paper adopts a cognitive psychology perspective to investigate the recurring mistakes in code resulting from the mental set (Einstellung) effect. The Einstellung effect is the…

cs.SE2023

Detecting Code Quality Issues in Pre-written Templates of Programming Tasks in Online Courses

Anastasiia Birillo, Elizaveta Artser, Yaroslav Golubev +4

In this work, we developed an algorithm for detecting code quality issues in the templates of online programming tasks, validated it, and conducted an empirical study on the datase…

cs.SE2023

Optimizing Duplicate Size Thresholds in IDEs

Konstantin Grotov, Sergey Titov, Alexandr Suhinin +2

In this paper, we present an approach for transferring an optimal lower size threshold for clone detection from one language to another by analyzing their clone distributions. We s…

cs.SE2023

Just-in-Time Code Duplicates Extraction

Eman Abdullah AlOmar, Anton Ivanov, Zarina Kurbatova +7

Refactoring is a critical task in software maintenance, and is usually performed to enforce better design and coding practices, while coping with design defects. The Extract Method…

cs.SE2023

Analyzing the Quality of Submissions in Online Programming Courses

Maria Tigina, Anastasiia Birillo, Yaroslav Golubev +3

Programming education should aim to provide students with a broad range of skills that they will later use while developing software. An important aspect in this is their ability t…

cs.SE2023★ 3 cited

Predicting Tags For Programming Tasks by Combining Textual And Source Code Data

Artyom Lobanov, Egor Bogomolov, Yaroslav Golubev +2

Competitive programming remains a very popular activity that combines both software engineering and education. In order to prepare and to practice, contestants use extensive archiv…

cs.SE2022★ 1 cited

So Much in So Little: Creating Lightweight Embeddings of Python Libraries

Yaroslav Golubev, Egor Bogomolov, Egor Bulychev +1

In software engineering, different approaches and machine learning models leverage different types of data: source code, textual information, historical data. An important part of…

cs.SE2022★ 1 cited

All You Need Is Logs: Improving Code Completion by Learning from Anonymous IDE Usage Logs

Vitaliy Bibaev, Alexey Kalina, Vadim Lomshakov +4

In this work, we propose an approach for collecting completion usage logs from the users in an IDE and using them to train a machine learning based model for ranking completion can…

cs.SE2022

Aggregation of Stack Trace Similarities for Crash Report Deduplication

Nikolay Karasov, Aleksandr Khvorov, Roman Vasiliev +2

The automatic collection of stack traces in bug tracking systems is an integral part of many software projects and their maintenance. However, such reports often contain a lot of d…

cs.SE2022★ 3 cited

A Large-Scale Comparison of Python Code in Jupyter Notebooks and Scripts

Konstantin Grotov, Sergey Titov, Vladimir Sotnikov +2

In recent years, Jupyter notebooks have grown in popularity in several domains of software engineering, such as data science, machine learning, and computer science education. Thei…

cs.SE2022

DapStep: Deep Assignee Prediction for Stack Trace Error rePresentation

Denis Sushentsev, Aleksandr Khvorov, Roman Vasiliev +2

The task of finding the best developer to fix a bug is called bug triage. Most of the existing approaches consider the bug triage task as a classification problem, however, classif…

cs.SE2021★ 1 cited

ReSplit: Improving the Structure of Jupyter Notebooks by Re-Splitting Their Cells

Sergey Titov, Yaroslav Golubev, Timofey Bryksin

Jupyter notebooks represent a unique format for programming - a combination of code and Markdown with rich formatting, separated into individual cells. We propose to perceive a Jup…

cs.SE2021★ 1 cited

AntiCopyPaster: Extracting Code Duplicates As Soon As They Are Introduced in the IDE

Eman Abdullah AlOmar, Anton Ivanov, Zarina Kurbatova +7

We developed a plugin for IntelliJ IDEA called AntiCopyPaster, which tracks the pasting of code fragments inside the IDE and suggests the appropriate Extract Method refactoring to…

cs.SE2021

The IntelliJ Platform: a Framework for Building Plugins and Mining Software Data

Zarina Kurbatova, Yaroslav Golubev, Vladimir Kovalenko +1

In software engineering, a great number of new approaches are being actively researched, and a lot of tools are being developed based on them. These tools require a framework for t…

cs.SE2021

Revizor: A Data-Driven Approach to Automate Frequent Code Changes Based on Graph Matching

Oleg Smirnov, Artyom Lobanov, Yaroslav Golubev +2

Many code changes that developers make in their projects are repeated and constitute recurrent change patterns. It is of interest to collect such patterns from the version history…