How Swipe Typing Works
fleksy.com
fleksy.com
My question is: why does swiping now feel so much more inaccurate? As this is HN I'd be very happy if someone from Google/Microsoft (or hopefully even Nuance) could shed some light. Was it "the big players forced the small and innovate folks out and then bureaucratized it like every commerical software because the competition was killed"? Or was it something else? I find it hard to believe that the predictive text accuracy has increased at all, if not gone down, when comparing Swype to GBoard/Swiftkey.
PS: Swype is/was the name of the keyboard app by Nuance, I'm not referring to swipe-typing in general in the 1st paragraph.
It still works fine, but hasn't had any updates in 2 years. I've also noticed that if I open the Play store link (below) in incognito mode, it says "not found", but if I'm logged into my Google account, it brings up the app's info.
https://play.google.com/store/apps/details?id=com.nuance.swy...
I've tried switching to Gboard a number of times, but its swipe typing is way less accurate. Swype also has a bunch of gestures that are very convenient, like one to toggle the current word between UPPER, lower, and Title case, if you swipe from apostrophe to s, it'll insert "'s", and it's trivially easy to add new words to its dictionary. Overall, I'm not looking forward to when I eventually have to give up using Swype.
I find GBoard to be incredibly good, more or less as good as I remember Swype being. (I initially switched because GBoard supported Hebrew and Swype didn't, not because of accuracy, but didn't find it worse at least.)
I find the native Apple swipe interface to be terrible. It doesn't even come close to being as good as GBoard. And I use it fairly often, because if the Apple keyboard comes up I'll usually try to use it for 2-3 words, before getting frustrated and switching.
I have no idea why.
Oddly, I find Apple's Keyboard almost completely superior to GBoard (the only exception being the number row option). However I use it on an iPad and not a phone so that may also be a factor.
But my hit rate with Gboard is staggeringly higher than apple keyboard. I wonder if we're using it differently, which is what is causing the difference in experience here.
Yep I think this is true. I use the Apple Keyboard only on my iPad (my phone is android), while if I had to guess you use an iPhone with a much smaller screen/keyboard. Everyone's real life mileage varies, as the saying goes.
I also have two languages installed now and it will sometimes type a completely nonsensical sentence in the wrong language. I can't say for sure if this is better or worse though, I only knew one language back when I used Swype.
Now it seems to cause me more time correcting it than it saves.
And for some damn reason, the MS version at least (I know of no better multilingual swipe keyboard for iOS than that, so any recommendations would be great) constantly chooses the word "toy" instead of "you". So much so that I put a manual autocorrect entry in to stop it, which is of course frustrating anytime I'm talking about what my dog is doing or that I have several projects of a non-serious nature in process.
I think GBoard supports multilingual typing on iOS as well, though I can't comment on how good it is.
I switched, after much anxiety, to GBoard. It feels much like SK used to feel. It isn't awesome that it's a Google keyboard, but at least it's accurate and consistent.
All mistakes there were genuinely made.
What about a GPT-3-based autocorrect/Swype predictor?
I tried some options but they weren't up to scratch especially with multi language
My experience with Google keyboard has been very good. The main difference I've noticed over the years is that phones got bigger. Swype was magical on a 3 inch screen but not nearly as good on a 5 inch. If I remember right the core would take the exact touch points less seriously on a small screen but on a big screen usage might go back and forth between very accurate and sloppy.
If I had to speculate somewhat, it's possible that newer keyboards take a very principled approach to the code for input recognition. I didn't work on the input matching part at Swype but it was often discussed with great fear, because it was a couple giant functions with tons of conditionals. It had been built up over I think a few years early on but without much documentation.
The other thing is that there was a race to the bottom on price, which later led to much smaller teams working on keyboards. There just isn't enough financial incentive to put many resources towards it, compared to something like speech recognition.
> If I remember right the core would take the exact touch points less seriously on a small screen but on a big screen usage might go back and forth between very accurate and sloppy.
Do you mean that the points taken would fluctuate between more and less accurately/precise only the screens, or was the point selection consistent but the results poor?
Re: your guess about principled approach, that's kinda funny and ironic how a poorly-written bunch of code can be better than something very precise.
> The other thing is that there was a race to the bottom on price
Slightly ignorant as a customer but iirc while Swype had a paid option it also had a free option like the competition then (and now). Would this imply that Keyboard companies need external funding/or be bought over by MS etc?
It's an interesting difference from other software: with almost anything else, there's a UI that helps evaluate whether the software degraded. Swype doesn't have any such contextual clue. I'd imagine this problem will pop up a lot in the future with various user-assist, AI-based tech.
Detecting when a user deletes a word and replaces it with a word that was previously in the options list seems like it would be a fairly strong signal.
Contrast that with, say, any Microsoft Office product where coming back a few years later is like returning to a city you used to know and finding all the old buildings you knew razed to the ground and an entirely new street layout.
I have had a similar experience, and just wrote it off as being a different device or something.
In that sentence, "typing", "now" and "then" all needed correcting from the first guess, and in this one also "sentence" and "correcting".
All this AI and they can't predict a word from a set of nearby keys?
Suggesting "tired" there is clearly probably nonsense ("I tired of something" is not a very common expression, even if grammatical), if it had a choice between "tired" and "typed" in that context, having just typed "keyboard", only one is likely to be intended.
Google keyboard is orders if magnitude better (and handles multilingual situations much better as well).
It got every word in that comment correct (although I had to change “to” to “too”).
iOS was extremely behind Android for years by refusing to allow different keyboards, Swype closed down as a company, and Swiftkey stopped trying after Microsoft bought and integrated them.
It's definitely the fastest way to type English on a phone but companies seem to have extracted all money they can get from it and don't really care about the tech anymore.
I had to correct ‘bite’ to ‘now’.
I don’t use swipe typing so I haven’t practised.
Notably, with Swype and OKeyboard I could drag my thumb just in the vicinity of the target letters, and they tended to guess the word right, basing the guess mostly on the turns in the swipe (at least it felt that way). ASK requires me to tap the first letter precisely, and is sensitive to me hitting the subsequent ones, while the corners of the swipe aren't so useful.
Using a closed-source keyboard app feels very icky. OKeyboard was fine and advertised that it's secure because it has no permission to access the network—until it suddenly added that permission in an update, without changing the app description.
It's okay, but definitely worse than proprietary alternatives right now. But at least it's under active development.
Btw, a consequence of Swype&company's algorithm is the bit of entertainment that you can get by dragging the thumb whatever which way over the keyboard: they still pop up some word guesses. ASK kinda tries to assemble a word from the letters you hit on the way instead (there's an explanation in the Github issues), so in the end it comes up with nothing.
A more useful aspect of the behaviour is that with a turn-respecting algo, it's easy to correct its mistakes by making a small peak in the swipe trajectory on the wanted letter.
It can take me 10 minutes to type a message the length of this comment because I have to go back and correct every other words several times.
I don't feel it used to be this bad, and my hands haven't gotten bigger. Really weird.
Obviously, a real keyboard is leagues better than both, but needs must.
However, I don't think it works everywhere (at least on macOS), like some electron apps.
But with swipe you almost want the opposite, so that you rarely run into a situation where you move to a part of the keyboard where 2 or 3 nearby keys might be what you "really meant".
But I've never seen any attempt at this, and that surprises me.
e.g. To type "apples" you swipe from a to p with one finger, then put your other finger on l, then move your first finger to e, then move your second finger to s. While it might sound confusing having two swipes going on at the same time, it's pretty easy once you get the hang of it.