0
$\begingroup$

The iOS emoji keyboard has a Frequently Used section. Notably, this is different from a Recently Used implementation - the data structure behind it is not an array of emoji where once you use an emoji it is inserted in the array (after first removing it if it already exists). But neither does it appear to be implemented as if it were titled Most Often Used - it doesn't appear to simply be sorting by the symbols you've used the highest number of times. There are more smarts to it. It seems the algorithm is taking into consideration how many times you've used each symbol, but also when it was used, and sorting it on some combination. For example I recently used an emoji just one time and yet it appears in my Frequently Used list towards the end but before other emojis that I know I've used multiple times in the past but haven't used very recently.

If one wished to recreate the iOS Frequently Used algorithm, how would one do so, what exactly does this algorithm do?

asked Nov 26, 2016 at 19:01
$\endgroup$
1
  • $\begingroup$ Maybe it still sorts on the times used, but if it's an old one, let's say older than some threshold, then it prioritizes newer ones. Still if you want to know exactly, you should either ask Apple developers (assuming they are allowed to tell you) or run bunch of experiments to understand all the cases. $\endgroup$ Commented Nov 26, 2016 at 19:17

1 Answer 1

1
$\begingroup$

You are running into a situation where the task is not "here is a specification of what constitutes a good value, find the best one", but "find a result that is as useful as possible to the user, with no clear specification what 'useful' means".

It's a difficult problem. You can't even ask the users what they think is most useful - because they don't know, and even if they have an opinion what they think is most useful, that doesn't necessarily agree with reality.

You might also consider that changing the set of emojis is of slight negative value because it's harder to find one if the set is changing. On the other hand, emojis that are easy to find anyway (for example smileys that come first in the ordinary list) are less useful. And you might consider context, a user might use different emojis depending who is going to receive the message. Imagine the software knows the receiver, and knows it is their birthday, and suddenly the set of "most useful" emojis totally changes.

I'm not sure if I would count this under "algorithm", because the real problem is not the algorithm, but producing heuristics what makes a good set of useful items.

answered Nov 26, 2016 at 19:59
$\endgroup$

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.