WSU Computer Science Project Orchestrates a New Tune with Student Collaboration
When a startup company tasked a Washington State University student team with creating an India raga music app, the students had to start at the beginning: learning exactly what raga music is.
The project, part of the School of Electrical Engineering and Computer Science senior design course, brings students together with real-world clients to work on a year-long project. The school is currently searching for new client projects for the spring semester.
Now, with their 2023 senior project nearly finished, students Aiden Walker, Edwin Ramirez, and Wahidullah Rahimi are hoping their raga music playing and writing app will be available on app stores in the near future.
“I didn’t know much about Indian classical music, and I wanted to learn more about it,” said Rahimi. “And we wanted to create a good, user-friendly platform to let the user play ragas.”
The projects are sponsored by industry and research labs with supervision and mentorship from industry representatives. At the end of the course, the students deliver actual hardware or software products. In the case of the raga music app, the students worked with their mentor, Sridhar Rajagopal, and the start-up company, Upbeat Labs. The course is taught by Subu Kandaswamy, scholarly associate professor in the school.
As the students began considering their team-based senior design project, they had several interesting options, from doing projects for the Department of Defense or for Microsoft to improving election services. Walker chose the raga project because he felt that writing software for music requires good programming skills.
As for the Indian music, “It was a framework that I had never heard of before,” he said. “It seemed like something I wanted to mess around with.”
Rahimi and Walker have no musical experience, while Ramirez had played in junior high and high school band. The students first spent a few months learning about the Indian musical framework. A raga extends the concept of scale in music by utilizing a combination of ascending and descending notes called swaras to create a melodic framework that can evoke different moods. The 12 notes in an octave are divided into seven swaras with different flavors for each.
“The transition between the notes of the raga is not static but very fluid,” said Rajagopal. “These transitions are called gamakas or ornamentations, and Indian classical music defines 15 different types of such ornamentation.”
The raga app lets users construct various ragas through these combinations of swaras and allows for the expression of gamakas by allowing for fluid pitch-bending using touch gestures in the raga musical instrument.
“We spent the first month or two researching the music, figuring out what it is, how to represent it, get it into code, and make this into an app,” said Walker.
They also quickly discovered that although there is online content to learn about ragas, there was no up-to-date, user-friendly platform to customize a musical instrument to make raga playing easier or more accessible for users.
“This is the first-of-its-kind musical instrument that makes Raga playing easy and intuitive and allows a user to also learn and experiment with its social sharing features,” said Rajagopal.
Once they had a basic understanding of ragas, the students began their programming work. They had to learn a new coding language called Swift that is used to create most iOS apps, and they had to make everything work with their user interface. They ran into numerous challenges and dead ends.
“I think if we were to re-start work on the app now, it would be much quicker than a whole year that we spent working on this,” said Walker. “Probably, we would get it done in a couple of months. It was good experience for all of us.”
The app includes multiple user interfaces, with customization, many sounds to play, pre-made ragas, and an audio tuner system.
“You are able to record what you’ve been playing and replay and share it to others on our network,” said Ramirez.
Rahimi learned a lot about the new programming language and how to hook everything to the backend, using Firebase, a Google product.
At the same time, he said, “I learned how to be a good team player and about making a product with a team. That was a good experience for me that boosted my communication skills.”
While many people in the U.S. may not be familiar with raga music, the students are excited about making the app available to people around the world, so they can learn about and share the music.
“Music is a very important part of culture,” said Walker. “We’re helping people to express themselves.”