You Don't Know Search: Helping Users Find Code by Automatically Evaluating Alternative Queries

12/07/2022
by   Rijnard van Tonder, et al.
0

Tens of thousands of engineers use Sourcegraph day-to-day to search for code and rely on it to make progress on software development tasks. We face a key challenge in designing a query language that accommodates the needs of a broad spectrum of users. Our experience shows that users express different and often contradictory preferences for how queries should be interpreted. These preferences stem from users with differing usage contexts, technical experience, and implicit expectations from using prior tools. At the same time, designing a code search query language poses unique challenges because it intersects traditional search engines and full-fledged programming languages. For example, code search queries adopt certain syntactic conventions in the interest of simplicity and terseness but invariably risk encoding implicit semantics that are ambiguous at face-value (a single space in a query could mean three or more semantically different things depending on surrounding terms). Users often need to disambiguate intent with additional syntax so that a query expresses what they actually want to search. This need to disambiguate is one of the primary frustrations we've seen users experience with writing search queries in the last three years. We share our observations that lead us to a fresh perspective where code search behavior can straddle seemingly ambiguous queries. We develop Automated Query Evaluation (AQE), a new technique that automatically generates and adaptively runs alternative query interpretations in frustration-prone conditions. We evaluate AQE with an A/B test across more than 10,000 unique users on our publicly-available code search instance. Our main result shows that relative to the control group, users are on average 22 when AQE is active.

READ FULL TEXT

page 1

page 7

page 10

research
12/28/2021

Query Suggestion for Click-Absent Queries in Enterprise Search

Creating alternative queries, also known as query suggestion, has been p...
research
12/29/2020

Example-Driven User Intent Discovery: Empowering Users to Cross the SQL Barrier Through Query by Example

Traditional data systems require specialized technical skills where user...
research
12/13/2018

Active Inductive Logic Programming for Code Search

Modern search techniques either cannot efficiently incorporate human fee...
research
12/20/2019

Shareable Representations for Search Query Understanding

Understanding search queries is critical for shopping search engines to ...
research
05/07/2023

Synthesizing Conjunctive Queries for Code Search

This paper presents Squid, a new conjunctive query synthesis algorithm f...
research
06/17/2020

Learning Colour Representations of Search Queries

Image search engines rely on appropriately designed ranking features tha...
research
06/20/2020

Improving Query Safety at Pinterest

Query recommendations in search engines is a double edged sword, with un...

Please sign up or login with your details

Forgot password? Click here to reset