Canvas knows which students are struggling. It just doesn’t tell you.

On a Monday morning, you open Canvas and see a grid filled with dozens of students across the top, a dozen or more assignments down the side, and several hundred cells overall. Most of these cells are perfectly fine, but among them are the students who have quietly stopped submitting their assignments.

The data isn’t hidden. Canvas has all of it. But a gradebook answers what did everyone get?, and the question I actually have on a Monday is who do I need to write to? Those are different questions. Getting from one to the other means scrolling, sorting, and keeping a running tally in your head per course, every week, for as many sections as you teach.

So I built EarlyARC. It’s a free, native Mac app that reads your Canvas courses and gives you the list: who needs attention, worst first, with a reason on every line.

Every flag says why

The rule I set at the start: EarlyARC never shows you a number without a reason. Not a risk score, not a colored dot, not “82% confidence.”

Each flagged student gets plain English: “3 of 15 assignments missing — 23% of the grade,” “current score 61%, below 70%,” and ” how long since they were last active in the course. You can see, in one line, whether this is someone who’s drifting or someone who had one bad week.

That’s partly so you can act on it. It’s also because you may end up explaining the flag to the student, and “the algorithm said so” is not an explanation either of you deserves.That’s partly so you can act on it. It’s also because you may end up explaining the flag to the student, and “the algorithm said so” is not an explanation either of you deserves.

Read-only, and it keeps almost nothing

EarlyARC only reads from Canvas. It cannot change a grade, post an announcement, or alter your course. There’s no path in the code that writes to Canvas at all.

Rosters live in memory while the app is running and are gone when you quit. No cache, no database, no file of student work sitting on your laptop. Your access token goes in the macOS Keychain, protected like a saved password.

This is student data. The safest place to put it is nowhere.

The part that was genuinely hard

The way out was to store the app’s opinion instead of the student’s work. EarlyARC keeps a course ID, a Canvas student ID, a date, the risk level it assigned, and how many pieces of work were missing. No name, no grade, no score, no assignment titles, no message text.

I want to be precise about what that is and isn’t, because “no name” is not the same as “anonymous.” A Canvas student ID is an identifier — under FERPA’s definition, it is personally identifiable information, just as a name would be. Anyone at your institution who can already see your course could resolve one to a student.

What the design buys is smaller and more honest than anonymity: the file holds the least that will answer the question, nothing in it is a grade or a piece of student work, and it never leaves your Mac. It’s a much thinner record than the gradebook export most of us have sitting in a Downloads folder right now. One entry per student per day, forgotten after a year, switched off or deleted from Settings in one click.

Storing grades would have been easier and would have bought nothing except a file I’d have to defend.

What it won’t do

It won’t tell you why a student stopped. That part is still your job, and it always should be. EarlyARC doesn’t predict, doesn’t reduce anyone to a percentage, and doesn’t contact anyone on your behalf. When you’re ready to reach out, it fills in your own message template and hands it to you to send.

It surfaces. You decide.

Try it out! It’s free


EarlyARC is free, runs on macOS 14 or later, and has a sample-data mode so you can see exactly how it works before you connect it to anything real.

I built it alone, with Claude Code. One instructor, no dev team, no budget.

Author: Bruce Elgort

You’ll find this technology professor – an award-winning instructor at Clark College – working hard to inspire and challenge his students with meaningful web development and programming experiences. With a skinny vanilla latte (no foam) in hand, Bruce loves to tinker and test the boundaries of existing and emerging technologies, to then guide hungry minds through memorable, educational journeys to showcase with passion the ever-evolving innovations of society. An industry leader, Bruce is known for co-developing Elguji’s IdeaJam software, and is recognized by IBM as an ‘IBM Champion’ for being an innovative thought leader in cloud technologies.

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.