Open Bug 1340663 Opened 7 years ago Updated 2 years ago

Figure out requirements to release top websites completion in the awesomebar

Categories

(Firefox :: Address Bar, defect, P3)

defect
Points:
8

Tracking

()

People

(Reporter: mak, Unassigned)

References

(Depends on 5 open bugs)

Details

(Whiteboard: [fxsearch])

User Story

As a user, I want Firefox to be immediately useful in navigating as soon as I download it

* Users (in top X markets) see the top N (30-50) Alexa domains pre-populated for autocomplete in the Awesome Bar
  ** Eg: When a user types “G” they start to see autocomplete for Google. F for Facebook, etc. etc. based on their country
* Pre-populated URLs either expire after a time duration or as they are replaced by actual user visits, in which case those URLs are now in history.
* Adult content is filtered (or never present) from the list we use. List policy dictates that either we used a top N list that  already has adult sites removed, or if we use an adult site blacklist to remove adult sites, that site is also provided by Alexa (i.e. Mozilla is not making choices on which sites to remove.  
* The list of top N results are specific for top markets, so that sites do not see websites that are not applicable in their country. 
* One approach here is that we launch with top 3-5 markets localized, and for the other markets we either
  ** Don’t launch until we can localize
  ** We launch an even smaller set of neutral top-domains (i.e. 10)
Bug 1211726 implemented a feature that suggests top websites to new profiles for 14 days. The list of pages is currently hardcoded here:
http://searchfox.org/mozilla-central/rev/59cd73fbfa14384a81a4e3eb17d3881b372702c4/toolkit/components/places/UnifiedComplete.js#574

The sites are suggested as autoFill and/or as normal history entries.
These results can be replaced by normal browsing history, and the feature automatically disabled when the profile is 14 days old.

This bug is about figuring out what we need to let this reach Release users:
1. Which questions do we need to answer for approving it?
2. which bugs are blocking a release-quality state of the feature?

Ni? javaun to figure the first part, we can handle the engineering part.
Flags: needinfo?(jmoradi)
Depends on: 1340108
Depends on: 1341591
Dolske, I assume that given legal OK'd 858829, we don't need a separate legal review. Do you know if that's right?
Flags: needinfo?(dolske)
Gijs: assuming that we use the same mechanism articulated in bug 858829 it's likely still valid. In general we should always run older approvals through legal to make sure they're still valid (sometimes external factors like changes to Terms of Services, laws, etc. can change our status). If we deviate from that approach we may need a new review.
Flags: needinfo?(jmoradi)
Didn't mean to clear the NI from Mak...
Flags: needinfo?(jmoradi)
Depends on: 1344276
Flags: needinfo?(dolske)
I added a user story. This is not exhaustive criteria, but I've had policy/legal and some UR/UX conversations. We do need to think about some aspect of either localization or constraining this to the point where it's less useful but also more neutral to country. I'm looking at Alexa top 50 for 3 markets now and see decent variation. 

I agree with Bill Selman, we should do some user testing to see how this is received, both for positives and for adverse side effects. 

Barring that, I think this is one to put on the trains. If we're not doing harm, we'll do more learning as we ride the trains.
User Story: (updated)
Flags: needinfo?(jmoradi)
As previously said, we should also filter out ads network, I doubt we can find an alexa service that provides us the proper filter for both ads and adult. The official Alexa API doesn't provide any kind of filtering by a quick look at their documentation.

If we'd ever decide to do our own filtering, how do we define acceptable content? On the italian list in one of the top30 position I see a russian social network, that by itself is pretty much legit, but it is also largely used in Italy for adult and copyrighted videos sharing (3 years ago its dns record was blocked in Italy by law).

Finally, note that, we also have a disabled feature that allows us to autofill to the search engines we ship. bug 958188. That is less problematic to filter since it's made of engines we already ship and we could start measuring impact of it. It could be worth to add to the legal/privacy discussion since it falls down into a similar bucket.
Depends on: 1347271
Depends on: 1349557
Depends on: 1354264
Depends on: 1404075
Depends on: 1438130
Depends on: 1438908
I was evaluating with Drew an alternative to this feature in Search Suggestions.
Basically, the search engines can often suggest top sites among other suggestions. Currently we remove anything that looks like a host/url from suggestions, because one side we are concerned about users guessing where those urls come from (but styling of these entries is now nicer in the urlbar) and because we'd open a page to the search engine pointing to the url, that is not great.

Now, if we'd allow pure hosts to be suggested by Search Suggestions, and we'd directly visit that host instead of going through the search engine, we'd pretty much have a top hosts feature. We should probably show a magnifier glass and a "-- Visit" suffix for these entries.
Chrome does something similar, if you type "www.f" it will suggest hosts like "www.facebook.com" (with a magnifier icon) and directly visit those.

Clearly this doesn't take into account eventual PM plans for the original feature that I'm not aware of.
(In reply to Marco Bonardo [::mak] from comment #7)
> Now, if we'd allow pure hosts to be suggested by Search Suggestions, and
> we'd directly visit that host instead of going through the search engine,
> we'd pretty much have a top hosts feature. We should probably show a
> magnifier glass and a "-- Visit" suffix for these entries.
> Chrome does something similar, if you type "www.f" it will suggest hosts
> like "www.facebook.com" (with a magnifier icon) and directly visit those.

I, for one, really like that idea, since it seems relatively cheap to implement. If we can additionally increase the weight if URLs that were clicked this way, we can have it appear at the top of the users' list each time, right?
We could move this to a separate bug to implement and leave this 'local' autocompletion feature.
I think the 2 implementations are exclusive, I'd not want 2 "top sites" code bases around.
At this point the decision is likely up to product management, and Gijs, who drove the initial implementation.
(In reply to Marco Bonardo [::mak] from comment #9)
> I think the 2 implementations are exclusive, I'd not want 2 "top sites" code
> bases around.
> At this point the decision is likely up to product management, and Gijs, who
> drove the initial implementation.

I don't think it's really my decision any more than yours, if that helps. Some feedback inline:

(In reply to Marco Bonardo [::mak] from comment #7)
> Basically, the search engines can often suggest top sites among other
> suggestions.

Which search engines do this?

> Currently we remove anything that looks like a host/url from
> suggestions, because one side we are concerned about users guessing where
> those urls come from (but styling of these entries is now nicer in the
> urlbar) and because we'd open a page to the search engine pointing to the
> url, that is not great.
> 
> Now, if we'd allow pure hosts to be suggested by Search Suggestions, and
> we'd directly visit that host instead of going through the search engine,

Who determines what is a 'pure host', and how? (Cf. bug 1080682 and friends)

> we'd pretty much have a top hosts feature. We should probably show a
> magnifier glass and a "-- Visit" suffix for these entries.

I mean, this would solve the same issue (how to distinguish these sites) for the implementation that this bug covered, right?

> Chrome does something similar, if you type "www.f" it will suggest hosts
> like "www.facebook.com" (with a magnifier icon) and directly visit those.

Some downsides:
- AFAICT, Chrome does this for "www.<something>" but not for "something". So typing "twitter" or "facebook" doesn't suggest the URL, just search terms, which still show the search page. If this also applies to the suggestions we get (which I assume is the case though I could obviously be wrong - can't easily tell from the UI) then this leaves out a significant part of where we could be helpful to the user.
- is dependent on the search engines doing / continuing to do this
- requires the network request to the search engine to be fast in order to give a good UX. This is probably the case for all of us, but definitely isn't for all of our users.
- won't necessarily use the canonical URL (with/without www, toplevel domain redirect (e.g. com to org or vice versa), etc.), which a fixed list would help with, which helps performance
- can't have any descriptions / favicons for the results
- won't work for people who disable search suggestions (or even disable search in the awesomebar entirely)

Some upsides:
- sounds somewhat easier to implement
- won't need to update a fixed list or worry about l10n

> Clearly this doesn't take into account eventual PM plans for the original
> feature that I'm not aware of.

I wouldn't expect there to be plans but I also haven't asked.

So I don't know, there's pros and cons for both solutions. I lean a bit towards the local solution because it offers us more control and has some performance advantages, but I also see the appeal of having something that is hopefully simpler to implement and will potentially/hopefully require less maintenance in future. If anything, I think you (ie Marco) 'own' autocomplete / the urlbar, so I think ultimately it's up to you and product. I definitely agree that the implementations are exclusive and if we decide to go the search engine route we should remove the local implementation. We might then also want to remove the one we do ship on Android in favour of a search-engine-based one.
I'll try to answer some of those.

(In reply to :Gijs from comment #10)
> Which search engines do this?

Good question, Google, Yahoo, Bing and DDG all seem to suggest domains if I type "www.word" or "word."

> Who determines what is a 'pure host', and how? (Cf. bug 1080682 and friends)

if the user types "www." it's trivial, otherwise we could potentially ask for suggestions of "www.whatusertyped" and pick the first couple ones.

> > we'd pretty much have a top hosts feature. We should probably show a
> > magnifier glass and a "-- Visit" suffix for these entries.
> 
> I mean, this would solve the same issue (how to distinguish these sites) for
> the implementation that this bug covered, right?

Yes, presentation problems are similar, even if the magnifier lens may solve part of that.

> - AFAICT, Chrome does this for "www.<something>" but not for "something". So
> typing "twitter" or "facebook" doesn't suggest the URL, just search terms,
> which still show the search page.

Right, but nobody prevents us to send a "www.usertyped" request and get results for it.

> - is dependent on the search engines doing / continuing to do this

I doubt they'll stop, Chrome and Edge use that feature.

> - requires the network request to the search engine to be fast in order to
> give a good UX. This is probably the case for all of us, but definitely
> isn't for all of our users.

Speed has never been a strict requirement for the feature we are discussing.
But yes, we may not be able to provide autofill in a timely manner, it would just be search suggestion entries. Autofill was a nice-to-have afair, maybe I'm wrong.

> - won't necessarily use the canonical URL (with/without www, toplevel domain
> redirect (e.g. com to org or vice versa), etc.), which a fixed list would
> help with, which helps performance

I doubt this, it's unlikely engines will suggest wrong domains

> - can't have any descriptions / favicons for the results

I don't think the description is critical, autofill doesn't have one and users have no problem with that.
Sure, favicons would be replaced by the magnifier icon.

> - won't work for people who disable search suggestions (or even disable
> search in the awesomebar entirely)

But people who disable search suggestions filed bugs asking why we suggested these domains even if search suggestions were disabled.
Depends on: 1527888
Priority: P2 → P3
Depends on: 1540242
Points: --- → 8
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.