How Code Search Drives Software Engineering

Date:

Code search describes the process of retrieving source code from a repository, where that source code matches a query. Whether a developer is looking for where an error was thrown, learning how to use a new-to-them API, learning a new programming language, or browsing their team’s directory to familiarize themselves with the codebase, search underpins all these activities. Beyond those human-driven software engineering processes, search is also a component in automated software engineering, such as automated program repair, code example recommendation, and clone detection. This talk explores my research group’s explorations into how code search shapes modern software development processes, and looks ahead to future challenges and opportunities (especially in the context of generative AI).