This one is a bit different from the last two posts. Building an Apple TV app is a personal project. Rebuilding my precalc notes is something I'm doing for myself and my own classes. This project (the Regents Question Reviewer) was a department project. And it involved something AI can do quickly that would have taken a human a long time.

But it also ran into the wall that I think most teachers would hit if they tried to build something like this: hosting a website.


The Problem: Past Regents Questions Are a Mess to Organize

If you teach math in New York, you use past Regents exams. Every year there are three new Algebra, Geometry, and Algebra II exams posted as PDFs by the state (January, June, and August). Teachers pull questions from them to build review packets.

The problem is that the questions come in big unsorted dumps. If you want a packet of all the geometry questions about triangle similarity from the last five years, you're manually opening PDFs, finding the relevant questions, screenshotting them, and pasting them into a document. I've done it in the past and it took a long time. And it's exactly the kind of tedious work that AI should be doing, not teachers.

So I asked the agent to build a tool to fix this.


Scraping the Exams

First we needed the data. I pointed the agent at the NYSED website and said: download the last five years of Regents exams (Algebra, Geometry, and Algebra II), including the answer keys and scoring guides.

If I'd been doing this myself, I would have spent time writing a Python scraper, figuring out the file naming scheme, testing it. It wrote the Python script, ran it on my machine, handled all the file naming and sorting, and asked me a few clarifying questions along the way (Do you want the model responses? The rating guides?). In less than five minutes, I had years of sorted exam PDFs sitting in my local directory.


The Reviewer App and the Department Collaboration

Once we had the questions, the agent built a web app where teachers could view questions and mark corrections. I deployed it to my website and shared the Geometry version with the geometry teachers.

Here's where it got really useful. The geometry teachers had their own curriculum map: their actual units in the order they teach them, with the topics covered in each unit. I took that map and fed it to the agent, and asked it to sort the past Regents questions into those units.

It did an excellent job. About 19 of every 20 questions ended up in the right unit. The teachers are going through and verifying the placement of each question, and those corrections get saved to a central file. When they're done reviewing, I'll re-run the generation script and get clean topical review PDFs organized exactly around how they teach.

The Algebra II teachers got the same treatment. Both departments now have custom review tools organized around their actual curriculum, not around some generic state standard ordering that doesn't match how they teach the material.


The Wall: Hosting

Here's the thing that stopped this from being something any teacher could just spin up on their own.

Writing the code? Handled by the agent. The app, the scraper, the PDF generation scripts: all of it was built pretty quickly. But getting the app live on a web server so other teachers could actually log in and use it? That's where things got complicated.

I host things on cPanel (it's what comes with the shared hosting for my blog). Getting a Python Flask app running on cPanel involves:

  • Setting up a Python virtual environment on the server.
  • Writing a passenger_wsgi.py file to tell the server how to connect to the Flask app.
  • Installing all the right packages into that environment.
  • Making sure file permissions are set correctly.

The agent helped me work through all of this, but it's still a lot of steps, and some of them are pretty opaque if you've never dealt with server configurations before. It's the kind of thing where one wrong path and nothing works and the error messages don't tell you why.

The conclusion I came to: AI has basically made writing the code free. The bottleneck now is the operations side, such as deploying, hosting, and configuring server environments. That part hasn't been abstracted away yet. A teacher with a great idea for a collaborative tool could ask an agent to build it, and the agent would write perfectly good code. But getting it running somewhere that other people can use it still requires some knowledge that most teachers don't have (yet).

Which brings us to the big question for the next post: if AI writes the code, what does a CS teacher actually teach?

Previous Post