CS Major Andrew Cupps Builds Jupiterp to Streamline Course Planning
When the COVID-19 pandemic shuttered schools and confined many indoors, University of Maryland computer science major Andrew Cupps found an opportunity to deepen a childhood interest: programming. Years later, that interest culminated in the launch of Jupiterp, a course planning tool tailored specifically for UMD students. Since its debut in March 2024, the platform has attracted over 9,000 users and established Cupps as a recognizable name among his peers.
Even as a teenager, Cupps said the drive to create useful tools was already taking shape.
"Even though what I wanted to do back in high school was make games, the common thread has always been creating things that I find useful," Cupps said. "Jupiterp was something I wanted not just for myself but for other students."
A Foundation Built Early
Cupps traces his introduction to programming back to elementary school, when his father bought him a book on creating simple games. He recalls copying code from the book and experimenting with basic game development platforms, such as Scratch.
"My first exposure was just copying whatever was in that book," Cupps said. "Then I moved onto Scratch, making basic games, but nothing very intense."
That casual experimentation deepened during the pandemic. With the shift to online learning, Cupps devoted more time to independent study, watching videos and teaching himself programming skills that went beyond what was offered in his high school curriculum.
"I think that's when I started to get into computers and take it more seriously," he said.
While he originally dreamed of designing video games, his evolving skill set eventually led him to broader applications—focusing not just on entertainment, but on solving everyday problems.
Idea Rooted in Frustration
The idea for Jupiterp did not emerge from a classroom assignment or hackathon challenge. Instead, it grew out of Cupps’ frustration with existing course planning platforms like Coursicle. Minor inconveniences, such as rigid formatting for course codes, disrupted what should have been a simple scheduling process.
"It’s a little funny, but having to put a space in course codes like 'CMSC 132' really bothered me," Cupps said. "I would always forget, and then the site wouldn’t recognize the course until I fixed it."
These seemingly small obstacles highlighted a larger issue: generalized tools often missed the specific needs of UMD students. Cupps realized that by focusing on the quirks and expectations of his university’s scheduling system, he could create something more user-friendly and efficient for his peers.
"I realized that while tools like Corsicle are good for a lot of different colleges, UMD students would benefit from something specifically tailored to them," he said.
Building and Learning
Constructing Jupiterp marked Cupps’ first venture into creating a fully dynamic web application. Until that point, his experience was limited to building simpler, static websites. Tackling tasks like web scraping, database management and user authentication forced him to learn new skills quickly.
Rather than rushing through development, he approached the project with an eye toward scalability, setting a foundation for future updates. He said it was important to anticipate growth from the beginning, even if the initial version only served a handful of users.
"Everything I was doing was new to me," Cupps shared. "It was my first time thinking about how to write software that could be iterated on, not just something for a class project."
Cupps also discovered that real-world users often had different priorities than he initially assumed. Early versions of Jupiterp reflected his workflow, but user feedback soon pushed him to redesign features, change layouts and reconsider assumptions.
"There were multiple times I had to change things after getting feedback," Cupps said. "It's essential to put the priorities and needs of the users first."
Community Response
After launching Jupiterp, Cupps was surprised by the volume of positive feedback he received from students across campus. Formal events, such as Terp Expo, gave him the opportunity to showcase his project to a broader audience, but much of the excitement spread through word of mouth.
He recalled a moment at Bitcamp, UMD’s annual hackathon, when someone recognized him simply for building the platform.
"Even at Bitcamp two weeks ago, someone came up to me and said, ‘Hey, are you the guy who made Jupiterp?’ That was a cool moment," Cupps said.
Such interactions reinforced the idea that his work was having a tangible impact on the daily lives of students.
University Ecosystem
Cupps credited UMD’s environment as instrumental in enabling him to create Jupiterp. Open access to course data enabled him to build the platform, and he noted that not all universities are as supportive of student-led innovations.
"There have been other colleges where students got into trouble for similar projects," Cupps said. "I think it’s great that UMD shows support for students who create tools to help each other."
He also benefited from being part of an ecosystem where previous students had created similar resources. He mentioned PlanetTerp, a site aggregating course reviews and grading data, as one platform he used while developing Jupiterp.
Additionally, Cupps pointed to the support he received from peers.
"Getting feedback and advice from other students who were also working on projects was helpful when I was just starting," he said.
Lessons for the Future
Reflecting on his experience, Cupps said developing Jupiterp taught him important lessons about building software for real users.
"There’s a real difference between having a solution in your head and making something people want to use," Cupps said. "You have to listen to feedback and be willing to adjust."
He emphasized the importance of balancing a personal vision with responsiveness to users' needs.
"You can have an idea of what you want to build,” Cupps said. “But before you get too deep into it, you have to make sure it’s solving the problems users care about."
—Story by Samuel Malede Zewdu, CS Communications
The Department welcomes comments, suggestions and corrections. Send email to editor [-at-] cs [dot] umd [dot] edu.