  Building interactive tools to support data analysis is hard because it is not
always clear what to build and how to build it. To address this problem, we
present Precision Interfaces, a semi-automatic system to generate task-specific
data analytics interfaces. Precision Interface can turn a log of executed
programs into an interface, by identifying micro-variations between the
programs and mapping them to interface components. This paper focuses on SQL
query logs, but we can generalize the approach to other languages. Our system
operates in two steps: it first build an interaction graph, which describes how
the queries can be transformed into each other. Then, it finds a set of UI
components that covers a maximal number of transformations. To restrict the
domain of changes to be detected, our system uses a domain-specific language,
PILang. We give a full description of Precision Interface's components,
showcase an early prototype on real program logs and discuss future research
opportunities.
