Hondsrug College Rooster
Never late, always in the right classroom
How I Hacked Together a Timetable App for My High School
Back when I was in high school, checking your timetable meant digging through a clunky website. There were no apps, no push notifications—just a browser and a lot of refreshing. It was slow, annoying, and totally out of step with how often schedules would change.
One day, some friends and I stumbled upon an internal API the school was using to fetch timetables. Jackpot. We realized we could use it to build our own app—something fast, simple, and made just for students.
We built for Android (with Java). All you had to do was enter your class name, and it would show you everything you needed for the day: what subjects you had, which teacher was teaching them, and where you needed to be. If a class was canceled, it would be marked in red, so you didn’t show up to an empty room. Super handy.
Everything was working smoothly... until the school found out.
They started putting IP rate limits on the internal API. Since our server was using a single IP address, it got throttled hard. But we weren’t ready to give up. So we got a little creative.
We built a proxy that routed traffic through the Tor network. That way, every request came from a different IP, and the school couldn’t block us. The downside? Requests got slower. Tor isn’t exactly blazing fast. So we added caching to the mix, making sure we weren’t hitting the API for the same data twice.
It was scrappy, slightly rebellious, and a lot of fun. But most importantly—it worked. Students finally had a timetable app that actually fit their needs, made by people who got those needs.
Looking back, that little project taught me a lot: reverse engineering, API design, caching strategies, and... how to stay just one step ahead of a rate limiter.