P99 0 ms* autocomplete for 240M domain names

(ruurtjan.com)

18 points | by dbalatero an hour ago ago

10 comments

  • pixelpoet 3 minutes ago ago

    Pretty sure we mean < 1ms rather than actually instantaneous.

    • lovich a minute ago ago

      Its like tic tacs saying they are 0 calories because they got the per serving size down low enough to round to 0.

  • bagels 3 minutes ago ago

    Looks more like 500ms?

  • ViscountPenguin 29 minutes ago ago

    Unfortunately this approach doesn't feel that great down here in Australia, definitely a function of latency.

    I think you could get a lot closer by framing this as an optimization problem, where you use the full alphabet dictionary, but add a residual prediction which aims to cover as much of the remaining domain name tree as possible weighted by popularity. This tree could then be pre-baked and stored with the same system. This would probably get you p99 0ms even in Australia.

  • ChannelFence 7 minutes ago ago

    its pretty clever but what happns when someone pastes a domain or uses IME or voice input? the api being that fast is still impressive.

  • pupppet 19 minutes ago ago

    Autocomplete aside, this is a pretty nifty tool.

  • cortesoft 14 minutes ago ago

    KeyDown events don’t work great for mobile, though.

  • camel_gopher 31 minutes ago ago

    Clever but that’s not how we measure latency.

    • dbalatero 29 minutes ago ago

      When it comes to UX, perceived latency is king.

      • wky 12 minutes ago ago

        The perceived latency starts from keydown, not keyup. Redefining latency to start at keyup reduces measured latency, not perceived latency, and delaying the visual display to keyup makes perceived latency strictly worse, not better. Even sticking with the keyup definition, just displaying the result as soon as it is available gives the possibility of negative (defined) latency.