Type something to search...

Creating Learner Progress Monitoring Using Python, Pandas and Streamlit

Project Overview

During my work as an Academic Program Manager, I supported learning operations across multiple cohorts using Canvas LMS with Course Coordinator role in LMS Canvas. As the program scaled, monitoring learner progress became increasingly complex due to the volume and structure of assessment data.

To improve efficiency and consistency, I developed a web-based application that automates gradebook analysis and transforms raw LMS exports into actionable insights for program teams.

This application has been used across multiple AWS re/Start batches in Indonesia and India, supporting 50+ cohorts.

Context: Learning Operations at Scale

AWS re/Start is an intensive, skills-based training program where learner progress is measured through:

  • Knowledge Checks (quiz-style assessments)
  • Hands-on Labs
  • Attendance

Canvas LMS provides detailed gradebook exports for each cohort. While comprehensive, these gradebooks typically contain:

  • 170+ columns per file
  • Mixed assessment types (KC, Labs, scores, completion flags)
  • One file per cohort

With 10+ cohorts per batch, reviewing progress consistently across cohorts required careful data handling.

Operational Challenge

To support learner success, the program defines weekly progress targets for Knowledge Checks and Labs. These targets help ensure learners stay on track and allow early support when needed.

However, as cohort count increased, several challenges naturally emerged:

  • Gradebooks contained a large number of columns, making manual inspection time-consuming

  • KC and Lab data required aggregation before progress could be evaluated

  • Each cohort needed to be processed individually

  • Manual workflows reduced responsiveness and scalability

While the data was available, turning it into clear, timely insights required a more automated approach.

Solution: A Web-Based Progress Analysis Tool

To address this, I designed and deployed a web application that automates gradebook processing and simplifies progress monitoring.

Key Features

  • Upload multiple gradebook files at once (multi-cohort support)
  • Automatically parse and standardize:
    • Knowledge Check completion and scores
    • Labs completion
    • Overall progress
  • Generate a structured summary per learner
  • Provide downloadable outputs for further analysis or reporting

The workflow is intentionally simple: Upload → Process → Download results

This allows both technical and non-technical stakeholders to use the tool effectively.

Deployment & Technology Stack

The application is deployed as a web application, making it accessible without local setup.

Tech Stack

  • Python – core logic and data processing
  • Pandas – handling high-dimensional gradebook data
  • Streamlit – rapid development of a clean, interactive web interface
  • Cloud Deployment – hosted on PythonAnywhere

This stack was chosen to balance:

  • Rapid development
  • Reliability
  • Ease of maintenance
  • Accessibility for program teams
  • Cost

Impact

Improved Operational Efficiency

  • Reduced manual gradebook processing time significantly
  • Enabled faster identification of learners needing additional support
  • Improved consistency across cohorts and regions

Program Scale & Adoption

  • Used across 3 AWS re/Start batches
  • Adopted by teams in:
    • Indonesia (10+ cohorts)
    • India (40+ cohorts)

The application proved effective in both smaller and larger operational contexts.

Learner-Facing Extension: Progress Leaderboard

In addition to internal monitoring, I introduced a learner-facing progress leaderboard using Google Sheets:

  • Learners can view their own KC and Lab progress
  • Progress visibility encourages self-monitoring
  • A transparent leaderboard introduces healthy competition
  • Reduces reliance on manual reminders

This extension helped shift part of progress tracking from reactive to self-directed.

Design Considerations

This project was designed with a focus on:

Clarity over complexity: prioritize usable outputs over excessive metrics

Scalability: support growing cohort counts without increasing manual effort

Human-centered workflows: simplify decision-making for program teams

Rather than replacing existing systems, the application complements LMS data by making it more actionable.

Future Enhancements

The current solution provides a strong foundation and can be extended further:

  • Automated, scheduled gradebook retrieval
  • Built-in data visualizations and dashboards
  • Native leaderboard functionality within the application
  • Deeper analytics on learning patterns and engagement trends

Related Posts