Figures Release Notes

About Figures

Figures is Appsembler’s lightweight analytics tool. It provides an easy way to look at the activity of your organization’s learning initiatives on a site-wide, course-wide, and individual learner levels. Figures seeks to bridge the gap between the highly detailed and heavy technical lift of Open edX Insights and the overly-opaque and manual-overhead-heavy process of pulling CSV files from each individual course’s Instructor Dashboard.

For more information on Figures, see Analytics with Appsembler Figures.

Tahoe Release Notes

We have split these release notes out from the Tahoe release notes, as Figures is available to both Tahoe and Standalone customers.

16 Oct 2020 - Release “0.3.17”

https://github.com/appsembler/figures/releases/tag/0.3.17

28 Sep 2020 - Release “0.3.16”

11 September 2020 - Release “0.3.15”

24 August 2020 - Release “0.3.14”

14 August 2020 - Release “0.3.13”

15 July 2020 - Release “0.3.12”

Release tag: https://github.com/appsembler/figures/releases/tag/0.3.12

Deploying this will show current month site MAU as “0” until the scheduled daily pipeline job is run. This is because the performance improvement now collects the current month’s active user data daily and saves to the site daily metrics store. Before Figures 0.3.12, the current month’s metrics were calculated live from the core edx-platform data. This became too slow for larger sites. An option discarded was to modify the core platform to improve query performance.

29 June 2020 - Release “0.3.11”

21 May 2020 - Release “0.3.10”

29 April 2020 - Release “0.3.9”

  • Frontend updates
    • On the dashboard there were two metrics with the same label, the second one was mislabeled and is now labeled correctly ("Registered learners" -> "New learners").
    • MAU history list was showing in order that is opposite from the logical one. Now it is reversed.
    • When a previous month didn't exist in MAU history list, it would count the increase as if the previous month had a value of 0 (zero). Now it says "N/A".
    • We improved the UI responsiveness, labels and filters.
  • Backend updates
    • Updated site monthly metrics pipeline: Fixed backfill, added celery tasks and set scheduling to run pipeline on first day of the month
  • Development environment

10 April 2020 - Release “0.3.8”

  • Improvement to Site Monthly Metrics active users endpoint to address scalability issues
    • This release has the update in this PR: https://github.com/appsembler/figures/pull/205
    • We now have a SiteMonthlyMetrics model to store historical metrics, starting with monthly active users (MAU) to both address performance issues because the endpoint was timing out for Redis data. Also it provides a permanent record for historical data
    • Current Month’s active user count was also updated, with hopefully much faster querying, while still using figures.sites methods to retrieve data

8 April 2020 - Release “0.3.7”

  • Major UI updates for performance and usability improvements
    • In background, major changes have been made to how the Figures UI gets the data to display. In addition to speed, which was our number one concern, we also added some better error handling.
    • The Figures Dashboard no longer contains the (seemingly infinite in some cases) list of courses in the site. We have listened to our users feedback, and set on creating two new views which replace and expand the functionality we deprecated:
      • Courses view - this view allows you to browse all of the courses on your site. It’s paginated, but even more importantly it allows you to search your courses by course name, course code or course ID!
      • Users view - as with courses, we now allow you to browse all of the users associated with your site, as well as search over them by users full name, username or email address. For instance, you can search by “@somedomain.com” to filter down the list.
      • Searches in both of these views update as you type, no browser navigation means a snappier experience!
    • The two quick access autocomplete inputs in Figures navigation (“Select a user” and “Jump to a course”) have also been improved. The load time when you start the app is significantly improved - that gives the app an even snappier feel.
    • The single course view has also been improved in terms of performance, with a new addition in metrics:
      • Active users - this metric shows you the number of Monthly Active Users in that course. A note - since a single user can be active in multiple courses, this means that adding together all the Course Active Users for a month will not correlate with your Site’s Monthly Active Users metric (the latter will always be less or equal than the sum).
    • We also did some optimisations in responsiveness. While Figures is still not meant to be seamlessly used on mobile device screens (for now), now the UI behaviour when you use Figures in a split screen layout on your laptop/computer, it will be easier on the eye and more usable.
  • New API endpoints, “Course Monthly Metrics”
    • This API endpoint set provides aggregate metrics for a course in a given month
    • This is part of restructuring Figures API for improved performance. There are two driving goals for the API restructuring
      • First, speed up response time for data needed for specific contexts, like “Site”, “Course”, and “Learner”
      • Second, to build consistent foundations into context and time series groups to make the API easier to understand and use. Core foundations are now the following:
        • Site Daily Metrics
        • Course Daily Metrics
        • Site Monthly Metrics
        • Course Monthly Metrics

14 March 2020 - Release “0.3.6”

https://github.com/appsembler/figures/releases/tag/0.3.6

Compiled assets in branch build-0.3.6

This release includes:

20 February 2020 - Release “0.3.5”

https://github.com/appsembler/figures/releases/tag/0.3.5

Compiled assets in branch build-0.3.5

This release includes:

29 January 2020 - Release “0.3.4”

This release adds Ginkgo backport support.

We changed the branch naming. We’re back to tagging releases with annotated tags. The tag for this version is 0.3.4. The branch to deploy that has the compiled front end assets is build-0.3.4 ( https://github.com/appsembler/figures/tree/build-0.3.4 )

12 January 2020 - Release “0.3.3”

Front end updates and fixes. Adds Download Reports UI as a hidden feature

20 December 2019 - Release “0.3.2”

  • Figures for general distribution (Enterprise and Tahoe)
  • Branch 0.3.2
  • Only change from 0.3.1-tahoeis that tests are updated for Enterprise
  • Add the following line to the server vars EDXAPP_EXTRA_REQUIREMENTSsetting:
    • - name: "git+https://github.com/appsembler/figures.git@0.3.2#egg=Figures"

5 December 2019 - Release “0.3.1-tahoe”

Figures 0.3.1-tahoe released to Tahoe Production. (See release notes for 28 November 2019)

Fixed / improved

  • MAU site metrics on the main page updated for accuracy.
    • For the site, calculation now collects unique learner ids from the StudentModule model’s modified field for a given calendar month. The modified field is originally set when the created field is set. It gets updated when a learner interacts with a course. SPECIFICALLY when the learner performs an action that triggers the StudentModule.modifiedfield to update, which according to documentation is when the learner’s interaction with an XBlock in a given course is tracked. See here: https://github.com/edx/edx-platform/blob/master/lms/djangoapps/courseware/models.py#L84
  • Site daily metrics (daily active users) improved accuracy. Now number reflects all unique active users for the site for the day
  • MAU site metrics and course metrics live REST API data endpoints
    • This is an experimental feature to provide improved MAU data and develop real time analytics
  • Course drop list now shows run to help differentiate courses with same name
  • Pagination quick fixes
    • “Select a user” list now collects up to 1000 users
    • Courses list on main page now shows up to 1000 courses

Broken

  • We need to repeatedly go through each metric in Figures and evaluate for accuracy and utility. Found so far:
    • Course page ‘Number of enrolled learners’ still shows higher than the list of learners in at least some courses.
    • Learner progress: The display has too much precision and we need to audit the code and make sure we have clearly defined “Learner Progress”
    • Course completions. A course currently can only be shown as completed if there is a certificate

28 November 2019

Created a release branch for Figures for Tahoe (0.3.1-tahoe): https://github.com/appsembler/figures/tree/0.3.1-tahoe

  • Fixed SiteDailyMetrics daily active users. With this release, the daily site metrics are collected for all unique users with StudentModule activity for the given day
  • Fixes getting previously collected days data when 'yesterday' was not collected.
    • Added methods to the SiteDailyMetrics and CourseDailyMetrics models to retrieve the most recent day in the past for which data was collected. Previously, the check was always ‘yesterday’
    • The metric impacted is the “cumulative site-wide active users”. This metric is STILL FLAWED because is accumulated the unique daily user counts. So that it will count users multiple times for each day’s activity. DO NOT USE FOR MAU.
    • https://github.com/appsembler/figures/pull/138
  • Test Infrastructure - Restructured mocks to support multiple edx-platform mocking
  • MAU pipeline, models, updated views
  • MAU Live API endpoints for site and courses

11 October 2019 - Release “0.3.0-tahoe”

Created a release branch for Figures for Tahoe (0.3.0-tahoe): https://github.com/appsembler/figures/tree/0.3.0-tahoe

  • Interfaces (Front end and API)
    • Figures Main page (Site context page) now should list up to 1000 courses
      • Fixed by changing course general and details API endpoints to return 1000 records per page
    • “Run” added to the course “quick select” drop list to differentiate courses with the same name
    • Responsive UI improvements: Updated styles (see commit here)
    • Fix fontawesome package issues
    • Removed compiled front end assets
    • Updated JavaScript package dependencies to address security issues
  • Pipeline
    • Figures should now work with Celery
      • Fixed broken Celery by adding CELERY_IMPORTSto figures.settings.lms_productionmodule (PR here)
    • Pipeline coerce course average progress to 2 decimal places before saving to CDM object (PR here)
  • Testing
    • Flake8 fixes
    • Devsite seed_data fix
    • Added more courses to test API pagination for retrieving course data