# Summary
When users try to open DevTools for the very first time, we would like to
prompt
them for a confirmation first, displayed in an onboarding page.

The main goal is to inform new users about DevTools, and avoid accidental or
malicious usage.

A secondary goal is performance related. Some code paths can be optimized if
DevTools are disabled. For example, we can turn console.log calls into
“no-ops”,
see https://bugzilla.mozilla.org/show_bug.cgi?id=1382377 .

Onboarding is also a requirement of the project to move Devtools into an
addon,
which will reduce Firefox’s installer size and eventually will allow the
team to
use GoFaster as shipping mechanism.


# UI



The onboarding page will be opened in a tab after a user triggers any
DevTools
entry point (menu item, key shortcut, etc…). It will explain why it is being
displayed and what DevTools are, and it will have a button to "enable"
DevTools.
After the user clicks on the "enable" button, we will display a confirmation
message and more detailed information about DevTools. After that, the
onboarding
page will not be displayed anymore.


# Additional information

We will assess the impact with a shield study on the Beta channel, measuring
the click-through rate of the onboarding page and engagement metrics with
the
various panels. Our hypothesis is that this will not block developers from
using
the tools but cuts out accidental usage.

We need to define which profiles are exposed to the onboarding. Current
plan:
  - Nightly and DevEdition: Developer tools enabled by default, onboarding
flow
    disabled
  - Beta and Release: onboarding flow enabled for profiles that never used
    DevTools. We want to detect such profiles by looking at existing
preferences
    or recent telemetry (will be determined with a follow-up study).

The onboarding flow should also be disabled when users pass a DevTools
specific
command line argument to start Firefox (e.g. --devtools, --jsdebugger etc…).

The feature will be behind a preference: "devtools.onboarding.enabled".


# Bugs and documents

Meta bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1408969

Initial discussion and mockups at
https://docs.google.com/document/d/1ku6Jn12XdTFNno0phhLjlBD2
H43k5NYswALYnA_UVBA/edit#heading=h.czol3ydlw299

<https://docs.google.com/document/d/1ku6Jn12XdTFNno0phhLjlBD2H43k5NYswALYnA_UVBA/edit#heading=h.czol3ydlw299>

# Target release

We plan to perform a study in Beta 58, and will decide about a target
release
depending on the results.


# Other browsers

- Safari completely hides developer options unless explicitly turned on in
the
preferences.
- Edge hides the Inspect Element and View source context menu items if
F12 Developer Tools were never used. They also show an introductory message
when
Developer Tools start for the first time.
- Chrome doesn't implement anything similar.


Feedback welcome!
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to