Opt-in Usage Tracking in Gutenberg

Starting in last Friday’s version 0.7.0, the GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party contains a mechanism to count how often specific actions occur over time.  Before anything is tracked, each WordPress user on each sitesite (versus network, blog) must opt in to the tracking via an opt-in screen shown when loading the new version of the plugin.  Here is what that screen looks like:

Whether a user clicks “Yes” or “No”, this preference is remembered as a user option.

If the user has previously clicked “Yes” on this screen, and an event occurs that has an associated bumpStat call in the Gutenberg code, then this event is sent to WordPress.comWordPress.com An online implementation of WordPress code that lets you immediately access a new WordPress environment to publish your content. WordPress.com is a private company owned by Automattic that hosts the largest multisite in the world. This is arguably the best place to start blogging if you have never touched WordPress before. https://wordpress.com/ servers by loading a special “pixel” image.  The following data is stored for future analysis:

  • The “group” and “name” sent with the bumpStat call (short strings of text)
  • The time the event was recorded.

We’ll use this data to look at usage patterns and makemake A collection of P2 blogs at make.wordpress.org, which are the home to a number of contributor groups, including core development (make/core, formerly "wpdevel"), the UI working group (make/ui), translators (make/polyglots), the theme reviewers (make/themes), resources for plugin authors (make/plugins), and the accessibility working group (make/accessibility). the editor experience better over time.

As Gutenberg is an open-source community project, we view this data as belonging to the WordPress community, so we also plan to make this data available via a public dashboard.  In the meantime, here is a preview of the number and type of blocks added to posts in the editor over the few days since the 0.7.0 releaseRelease A release is the distribution of the final version of an application. A software release may be either public or private and generally constitutes the initial or new generation of a new or upgraded application. A release is preceded by the distribution of alpha and then beta versions of the software.:

Finally, for more details about the technical implementation of this feature, see the GitHubGitHub GitHub is a website that offers online implementation of git repositories that can can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ pull requests where it was developed:  2140, 2205, and 2217.