Interview Q1: Motivation
Why create the "$1 Recognizer"?
UI prototypers rarely have pattern-matching toolkits. $1 uses pure geometry in ~100 lines of code, needs no training sets, and hits
97%+ accuracy with 1 template.
Comparison vs. Rubine & DTW
-
Rubine's Classifier: Needs many training examples, matrix inversions, and Mahalanobis distances (92.83% accuracy in study).
-
Dynamic Time Warping (DTW): Accurate (99.15%), but
matching took 128.26 mins per test set vs. 1.59 mins for $1 (99.02% accuracy).
Interview Q2: Rotation Invariance & GSS
Why does GSS guarantee 10 iterations?
Rotating indicative angle to gets within of
optimal. Bounded GSS then searches down to
a threshold in 10 fixed evaluations.
Mathematical Proof of 10 Evaluations
Hill-Climbing takes 53.5 rotations on dissimilar gestures. GSS narrows the bracket by
each step:
2 initial interior evaluations + 8 loop reductions (1 new evaluation per step) = 10 iterations,
saving 80.2% work.
Interview Q3: Limitations & Human Factors
What are the trade-offs & speed findings?
Because $1 rotates to and scales non-uniformly to a square, it cannot distinguish squares from rectangles, circles
from ovals, or orientation-specific arrows.
Articulation Speed & 1D Lines
-
Medium Speed Wins: Across 4,800 gestures, medium speed (~1.15s) had fewer errors (2.46%) than slow/tentative (2.84%) or
fast/sloppy (3.22%) strokes.
-
1D Lines: Non-uniform scaling distorts thin straight lines; check bounding-box aspect ratio to scale 1D gestures uniformly.