Page_views.csv
Each time a student accesses a page, basic information about that interaction is recorded in the file “page_views.csv”. The page view data come in a table of student-page-datetime cases. That is, there is a row for every time a student accessed a page in the course. Hence, this data is mostly used to explore students’ engagement with the interactive CourseKata textbook.
Below is a description of each variable in the responses table. You can also download the description of page_views.csv (CSV, 3KB)
.
Column | Description |
---|---|
institution_id | a unique identifier for the institution the class was taken at |
class_id | a unique identifier for this particular class |
student_id | a unique identifier for each student on CourseKata |
chapter | the chapter that the item appears in |
page | the page that the item appears on |
dt_accessed | A datetime object indicating when the page was accessed (timezone: GMT/UTC) |
was_complete | When the student accessed the page, were they coming back after already having completed it? |
engaged | The sum of the periods that the user was considered “engaged”, in miliseconds, in the material. To maintain engagement, the user must do something on the page (click, mouse movement, scroll, etc.) at least every 2 minutes. |
idle_brief | The sum of the periods that the user was considered “idle” for a “brief” period of time. A user is considered “idle” if they are on the page but are not “engaged”. The time period is considered “brief” if it is less than 15 minutes. Note that the “idle” periods are retroactively tagged such that the period will start at the last known engagement activity. For a concrete example: 1. user clicks something; 2. reads one minute; 3. clicks something; 4. leaves, comes back 10 minutes later; 5. clicks something. This user would be considered engaged for 1 minute, then idle for 10 minutes. The caveat to this approach is that if they user read the screen for 5 minutes, then left and came back, they would still be considered idle for all of them. This is likely a rare scenario, and in any event, one we can’t detect anyway. |
idle_long | The sum of the periods that the user was considered “idle” for a “long” period of time. A user is considered “idle” if they are on the page but are not “engaged”. The time period is considered “long” if it is more than 15 minutes. |
off_page_brief | The sum of the periods that the user was considered “off page” for a “brief” period of time. A user is considered “off page” if they have the page open but the page is not focused (e.g. it is open in another tab or the browser is not the active program). The time period is considered “brief” if it is less than 15 minutes. |
off_page_long | The sum of the periods that the user was considered “off page” for a “long” period of time. A user is considered “off page” if they have the page open but the page is not focused (e.g. it is open in another tab or the browser is not the active program). The time period is considered “long” if it is more than 15 minutes. |
trace | The JSON encoded trace of the engagement statuses the user went through while on the page. This is organized as a timestamped list of statuses that the user “switched to”. Every user starts as “engaged” when they open the page and a trace status is added every time that status changes (possible statuses: “engaged”, “idle”, “off_page” and “page_close”). This trace can be used to exactly calculate the other aggregates (e.g. idle_long), but is more useful for pairing with other activity data to get a higher fidelity picture of how the user interacted with the book. Example:[{“timestamp”: “2023-01-15T23:17:17.656Z”, “switched_to”: “engaged”}, “timestamp”: “2023-01-15T23:17:34.610Z”, “switched_to”: “off_page”}, {“timestamp”: “2023-01-15T23:17:36.354Z”, “switched_to”: “engaged”}, {“timestamp”: “2023-01-15T23:18:16.418Z”, “switched_to”: “page_close”}] This example indicates this student switched from engaged to off page and then engaged again until the student closed this page. They may or may not have finished the page (completed all questions on it) when they closed the page. |
tried_again_dt | A datetime object indicating when “try again” button was clicked (timezone: GMT/UTC) |
tried_again_clicks | Number of “try again” clicks (once students complete a page, they can reset the page to “try again”) regardless of whether that “try again” button was pushed on this access time |