Open
Bug 1088212
Opened 10 years ago
Updated 4 years ago
Modify out-of-date Firefox redirect on /whatsnew & /firstrun
Categories
(www.mozilla.org :: Bedrock, defect)
Tracking
(Not tracked)
REOPENED
People
(Reporter: cmore, Unassigned)
References
(Blocks 1 open bug)
Details
(Whiteboard: [kb=1560825] )
Attachments
(1 file)
(deleted),
image/png
|
Details |
Currently on Bedrock, if an out-of-date Firefox visitor views /whatsnew or /firstrun, we redirect them to /firefox/new/ via this code: https://github.com/mozilla/bedrock/blob/master/bedrock/firefox/views.py#L369 While the intention is good, it is not an ideal user experience. Imagine this scenario: 1) User is running Firefox 33.0. 2) Firefox 33.0.1 is released 3) User Firefox browser starts downloading 33.0.1 4) In the meantime, 33.0.2 is released. 5) User restarts their 33.0.1 browser and the whatsnew page is popped. 6) 33.0.1 < 33.0.2, i.e. out-of-date, and they get redirected back to /firefox/new/ 7) They are told their browser is out of date. 8) They manually download Firefox to get 33.0.2. The same thing could happen with minor releases like with 33.1. Given that Firefox users have to update every incremental release, considering slightly out-of-date firefox users to be really out-of-date is probably not the best experience. What does everyone think about only redirecting Firefox users on /whatsnew or /firstrun when they are more than 3 major versions old? i.e. (if usersVersion < CurrentMajorVersion-3 then redirect firefox.new) Code that determines what is new: https://github.com/mozilla/bedrock/blob/master/bedrock/firefox/utils.py "user_int >= latest_int" The complexity here is that we still want to tell users on /firefox/new that there is a newer version available, but just not redirect them. Let's discuss what is the best way of handling them. Could be to just not pop the whatsnew page as often and that's a product change and not a bedrock change.
Reporter | ||
Comment 1•10 years ago
|
||
Let's discuss pros/cons of how to best handle these out-of-date redirects. They have been catching lots of users who are almost nearly up-to-date and asking them to re-download is not ideal. It does catch old version well, but asking Firefox 32 users to re-download manually just as they uploaded to 32.0.3 via a silent update is not the best.
Comment 2•10 years ago
|
||
We could match the behavior of the updated tabzilla upgrade bar. But I don't think it works the way you say. The site has no way to know if a user has 33.0.1 or 33.0.4. We only get major version. So a user should not be sent to firefox/new/ if they have any version of 33. If they are then we have bug and should find the cause.
Reporter | ||
Comment 3•10 years ago
|
||
(In reply to Paul McLanahan [:pmac] from comment #2) > We could match the behavior of the updated tabzilla upgrade bar. But I don't > think it works the way you say. The site has no way to know if a user has > 33.0.1 or 33.0.4. We only get major version. So a user should not be sent to > firefox/new/ if they have any version of 33. If they are then we have bug > and should find the cause. Good point on what we can see via the user agent and only major versions. I verified with the GA data that it is major versions and this scenario only got amplified because of the multiple chemspills. Here is a scenario that looks to be happening: 1) User is running Firefox 32.0.2 2) Silent update updates them to 32.0.3 3) User restarts 4) Whatsnew page opens 5) Since 32.0.3 < 33.0, user is redirected to /firefox/new/ 6) /firefox/new/ tells them they are out of date and to re-download to Firefox Do we think it is a good user experience to tell them to re-download once they applied an update when they are only 1 major version behind? Shouldn't they get the update soon via another silent update?
Comment 4•10 years ago
|
||
I agree that 2 major versions behind is reasonable and that we don't want them to needlessly download a whole fresh build if they really don't need it and are likely downloading the incremental update at the same time.
Comment 5•10 years ago
|
||
Another thing we could do for these 2 pages specifically is tell the user via a message that the version that they're looking at the info for is outdated. I don't think we currently use the version specified in the URL for anything, but could just say "This version of Firefox is not the latest, please update for the most secure software" or something (I'm clearly not the best at the wording).
Reporter | ||
Comment 6•10 years ago
|
||
This screenshot is the top URLs being hit on /firefox/new/ over the past week that coming from the /whatsnew/ redirect. The first column is the page with the ?oldversion parameter and value, the second column is the visitor's current version of Firefox.
Updated•10 years ago
|
Whiteboard: [kb=1560825]
Reporter | ||
Comment 7•10 years ago
|
||
Update! Now that 33.1 is out bedrock knows that 33.1 > 33.0. The issue is that minor versions are not included in the user agent string, thus when you are running 33.1, the website sees it as 33.0 and that appears to be out-of-date. Let's remove the redirect all together for now and re-evaluate it later on how to do this better.
Comment 8•10 years ago
|
||
Commit pushed to master at https://github.com/mozilla/bedrock https://github.com/mozilla/bedrock/commit/b1a8f2e2d6a68136cf96c6234fdca59bd8e3a19f Remove whatsnew redirect old fx: fix bug 1088212
Updated•10 years ago
|
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Reporter | ||
Comment 9•9 years ago
|
||
Let's revisit this as it is now explanation about why first runs have been so high since Nov 11th. Previously, users were redirected back to the download page and now they get a first run, which is why my counts have gone up so much.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Reporter | ||
Comment 10•9 years ago
|
||
What does everyone think about only redirecting Firefox users who are two major versions old or older back to the download page?
Comment 11•9 years ago
|
||
Sounds good to me. I thought we were already doing that, but it seems we're not.
Reporter | ||
Comment 12•9 years ago
|
||
(In reply to Paul McLanahan [:pmac] from comment #11) > Sounds good to me. I thought we were already doing that, but it seems we're > not. In comment 7 I mentioned about just removing the redirect all together until we came up with another idea. Though, I don't know what was wrong with the 2 major versions or older to redirect.
Reporter | ||
Comment 13•9 years ago
|
||
Another idea is that we could only redirect people on pre-fx 29 versions (Australis) and also use the uitour api to see the full version number.
Comment 14•9 years ago
|
||
(In reply to Chris More [:cmore] from comment #10) > What does everyone think about only redirecting Firefox users who are two > major versions old or older back to the download page? +1 I prefer this to your suggestion in comment 13.
Reporter | ||
Comment 15•9 years ago
|
||
William is checking out the /firstrun data now and he'll be able to give us the percentages of how many people during a period of time are hitting first run pages that are 2 or more versions old.
Flags: needinfo?(williamr)
Comment 16•9 years ago
|
||
(In reply to Chris More [:cmore] from comment #13) > Another idea is that we could only redirect people on pre-fx 29 versions > (Australis) and also use the uitour api to see the full version number. I think it's a good idea to redirect pre-29 versions server-side. The UITour function only works in very recent versions of Firefox. However I don't think it provides the user with a very good experience to redirect on the client side to a different URL (and is also a bit wasteful of their bandwidth). Just my 2 cents.
Reporter | ||
Comment 17•9 years ago
|
||
(In reply to Alex Gibson [:agibson] from comment #16) > (In reply to Chris More [:cmore] from comment #13) > > Another idea is that we could only redirect people on pre-fx 29 versions > > (Australis) and also use the uitour api to see the full version number. > > I think it's a good idea to redirect pre-29 versions server-side. The UITour > function only works in very recent versions of Firefox. However I don't > think it provides the user with a very good experience to redirect on the > client side to a different URL (and is also a bit wasteful of their > bandwidth). Just my 2 cents. Not a bad idea. Let's wait for the version breakdown from williamr.
Comment 18•9 years ago
|
||
I looked at visits to the firstrun during two time periods, the last 30 days and the last 180 days (GA errored out on longer periods). Last month, over 1/3 of visits were from a users who is on a version 2 major versions old or older (<35). To see if this happened across other time periods and versions, I looked at the last 180 days and found that 26% of firstrun visits were on a version older than 32 (32 was the current version 180 days ago). I haven't yet found any specific versions or locales where large groups of people stay on older versions, though that may be worth exploring more. Visits to firstrun, 30 days ending March 25, 2015 Current version (36) 24,924,380 (47%) Recent version (35) 8,485,195 (16%) Future version (>36) 741,362 (1%) Old version (<35) 19,499,186 (36%) Visits to firstrun, 180 days ending March 25, 2015 Current version (32+) 206,193,103 (74%) Old version (<32) 71,429,328 (26%) Spreadsheet with the analysis and source data from Google Analytics: https://docs.google.com/a/mozilla.com/spreadsheet/ccc?key=0AtUzdCTYzxewdHNITXBPU3lhMW1HdmdweWNhT0UxQ3c&usp=sharing Let me know if I can provide more information or answer other questions.
Flags: needinfo?(williamr)
Reporter | ||
Comment 19•9 years ago
|
||
Thanks, williamR! This helps a lot and supports the proposal to only direct users who are more than 2 versions old. That will be roughly a quarter to a third of all first run users. This is significant and something we should do. Alex/Jen: are you fine with proceeding with a redirect from firstrun to /firefox/new/ *only* when the visitor's version is more than 2 major versions old? Thanks!
Flags: needinfo?(jbertsch)
Flags: needinfo?(agibson)
Comment 20•9 years ago
|
||
(In reply to Chris More [:cmore] from comment #19) > Thanks, williamR! > > This helps a lot and supports the proposal to only direct users who are more > than 2 versions old. That will be roughly a quarter to a third of all first > run users. This is significant and something we should do. > > Alex/Jen: are you fine with proceeding with a redirect from firstrun to > /firefox/new/ *only* when the visitor's version is more than 2 major > versions old? > > Thanks! Yes. Let's do it.
Flags: needinfo?(jbertsch)
Comment 21•9 years ago
|
||
Sounds good to me, Chris! Just to be clear, so are we now talking about redirecting /firstrun users only, and not /whatsnew users? IIRC, the shared logic under discussion here also applies to users hitting the Hello FTE (i.e. non-Firefox users are redirected to /firefox/new/). From a long-term technical support perspective, I'd be happy for the redirect to apply to each of these areas of bedrock where UITours and on-boarding are involved. But only as long as people think it also makes sense from a user perspective.
Flags: needinfo?(agibson)
Reporter | ||
Comment 22•9 years ago
|
||
(In reply to Alex Gibson [:agibson] from comment #21) > Sounds good to me, Chris! > > Just to be clear, so are we now talking about redirecting /firstrun users > only, and not /whatsnew users? > > IIRC, the shared logic under discussion here also applies to users hitting > the Hello FTE (i.e. non-Firefox users are redirected to /firefox/new/). > > From a long-term technical support perspective, I'd be happy for the > redirect to apply to each of these areas of bedrock where UITours and > on-boarding are involved. But only as long as people think it also makes > sense from a user perspective. Alex: I am fine with this logic being applied to firstrun and whatsnew. It was only a month ago that we discovered the cause for firstruns being so high since Nov 11th (the redirect was removed). We are all on the same page that users greater than 2 versions old should get redirected to the download page since those browsers may have vulnerabilities. What do you think of this pseudo logic? If (fx.latestversion - user.fxversion > 2) && (user.version != fx.ESRversion) && (page =~ (firstrun|whatsnew)) then redirect(firefox.new) end if
Flags: needinfo?(agibson)
Comment 23•9 years ago
|
||
(In reply to Chris More [:cmore] from comment #22) > (In reply to Alex Gibson [:agibson] from comment #21) > > Sounds good to me, Chris! > > > > Just to be clear, so are we now talking about redirecting /firstrun users > > only, and not /whatsnew users? > > > > IIRC, the shared logic under discussion here also applies to users hitting > > the Hello FTE (i.e. non-Firefox users are redirected to /firefox/new/). > > > > From a long-term technical support perspective, I'd be happy for the > > redirect to apply to each of these areas of bedrock where UITours and > > on-boarding are involved. But only as long as people think it also makes > > sense from a user perspective. > > Alex: I am fine with this logic being applied to firstrun and whatsnew. It > was only a month ago that we discovered the cause for firstruns being so > high since Nov 11th (the redirect was removed). We are all on the same page > that users greater than 2 versions old should get redirected to the download > page since those browsers may have vulnerabilities. > > What do you think of this pseudo logic? > > If (fx.latestversion - user.fxversion > 2) && (user.version != > fx.ESRversion) && (page =~ (firstrun|whatsnew)) then > redirect(firefox.new) > end if I am fine with redirecting users greater than 2 versions old. As discussed we are currently applying whatsnew/firstrun redirect logic server-side, as redirecting on the client is not really ideal for the user. The only way we can detect ESR versions is in JS though, using the UITour API. So this presents a bit of an issue if you want to bundle this in the logic as well. Personally, I don't feel great about doing client side redirects - I would much rather show the user a message if this is going to be the case, rather than waste their bandwidth and time forcing them elsewhere.
Flags: needinfo?(agibson)
Reporter | ||
Comment 24•9 years ago
|
||
Good point on the ESR and in the client side JS. Thoughts everyone on if these redirects catch ESR versions?
Reporter | ||
Comment 25•9 years ago
|
||
:agibson: can you let me know a general time frame on when a PR can be up to be reviewed and we can test out on a demo server? Server-side is fine knowing that we can't detect ESR. thanks.
Flags: needinfo?(agibson)
Comment 26•9 years ago
|
||
If we are doing server side I'm guessing Paul might know what needs doing here better than myself.
Flags: needinfo?(agibson) → needinfo?(pmac)
Comment 27•9 years ago
|
||
Sure, if we're going to do server I can just take this.
Assignee: nobody → pmac
Flags: needinfo?(pmac)
Updated•9 years ago
|
Blocks: mozorg-redirects
Comment 28•8 years ago
|
||
Since we fixed bug 1321295 there are no User-Agent based redirects on firstrun or whatsnew. These should be added back via client-side JS so that we avoid the caching (or lack thereof) issues that resulted in the need for bug 1321295. Let's revive this bug and implement those redirects here, or if all of the above info is now irrelevant, we should "WONTFIX" this and open a new one.
Assignee: pmac → nobody
Reporter | ||
Comment 29•8 years ago
|
||
Thanks :pmac. We will do some analysis to see how many out-of-date Firefox users are hitting first are and see if it is worthy to do anything here.
Mass-removing myself from cc; search for 12b9dfe4-ece3-40dc-8d23-60e179f64ac1 or any reasonable part thereof, to mass-delete these notifications (and sorry!)
You need to log in
before you can comment on or make changes to this bug.
Description
•