Research

Practice only counts when it transfers.

Typing Lens is built for people who already type a lot and keep hitting the same friction. It looks for small patterns that cost accuracy, rhythm, or corrections, then trains them in short sessions and checks held-out text before calling it progress.

  1. 1 Real typing reveals friction in patterns and repairs.
  2. 2 Local aggregates keep bounded evidence, not raw text.
  3. 3 Targeted practice trains one supported pattern.
  4. 4 Held-out checks decide whether progress is eligible.

The product is built around this loop because drill fluency is not enough. A claim needs cleaner typing in text that was not just practiced.

The Loop

The coach is strict on purpose.

A higher game score can be a mirage. Typing Lens separates practice fluency from learning by asking whether the same pattern gets cleaner in held-out text, with accuracy and correction cost still intact.

Train patterns, not prompts

Practice changes the target context so the user does not just memorize a line.

Accuracy gates speed

Fast typing is not counted as progress when character accuracy falls below the gate.

Corrections are signal

Backspaces and repair bursts are treated as part of typing skill, not hidden noise.

Transfer beats drill score

The useful question is whether the trained pattern survives new text.

What It Measures

The app starts with small, inspectable evidence.

Pattern family Profile signal Trainable v0
Bigrams Latency, error rate, corrections Yes
Trigrams Latency, error rate Yes
Correction bursts Backspace repair cost Limited
Rhythm Session-level variance Profile only
Symbols and case Transition friction Profile only
Backspace density Correction load Profile only

Claim Gate

A claim has to earn its way onto the screen.

The scorer does not let the interface invent progress. A session can finish and still say there is not enough evidence for an improvement claim.

  1. Baseline Measure the target before practice.
  2. Drill Train dense examples without using this as the transfer claim.
  3. Held-out Check text that was not practiced during the drill.
  4. Transfer probe Retest the pattern in fresh context.
96% accuracy floor n=30 drill n=8 held-out n=12 probe correction cost checked fact IDs

Why Local Matters

Input Monitoring is powerful, so the boundary has to be real.

Typing Lens uses local observation to build a profile, but the disk boundary accepts aggregate-safe evidence rather than raw typed passages or replayable key streams.

Stored locally

  • Aggregate pattern rows
  • Sample size and confidence
  • Grounded fact IDs
  • Bounded numeric history

Never stored

  • Raw typed passages
  • Prompt text or typed attempts
  • Clipboard, URLs, or window titles
  • Replayable keystroke streams

Selected Sources

The page is based on a narrow reading of the evidence.

These sources support the design direction. They do not prove that Typing Lens has already produced long-term real-world transfer for a beta cohort.

Everyday typing is organized behavior

Fast typists differ in preparation, motion, and consistency, not just formal method.

Feit, Weir, and Oulasvirta

Practice performance is not learning

Training can look fluent before the skill transfers or sticks.

Soderstrom and Bjork

Transfer is specific

Improvement is most plausible when practice and real use share concrete elements.

Thorndike and Woodworth

Corrections carry cost

Text-entry metrics need to count repairs, not only final correct text.

Soukoreff and MacKenzie

Typing Lens gates claims

Accuracy, correction cost, sample size, and held-out checks constrain the summary.

Measurement protocol

What This Page Does Not Claim

The useful promise is measured, not inflated.

The browser demo only knows this session. The Mac app personalizes from your local profile. Long-term beta transfer evidence is still a product gate.