All four of our team members are from Northeastern University in Boston, Massachusetts. At the end of every semester, Northeastern asks students to submit evaluations for their courses, and this data is later made available to all students via a web application called TRACE. However, TRACE is hidden away in the Northeastern portal and can be slow, unintuitive, and difficult to use. We scraped data from the TRACE system and turned it into a simpler, cleaner course evaluation lookup tool for the Northeastern community.
What it does
SearchTRACE is a web-based lookup tool that allows users to search for courses or professors and see aggregated data from students' previous evaluation.
How we built it
We scraped our data using Selenium to simulate single sign on login and parsed our data using python, ultimately aggregating TRACE data into metrics. Elasticsearch helps us search our data for course or professor names, and we host our Elasticsearch database server on Google Cloud. We host our backend on Zeit Now, and our front end is built in React.
Challenges we ran into
Coordinating and organizing different layers of the project was a challenge for us because of the number of elements and technologies involved in our web app. Collecting the data from the TRACE system was challenging as well because the single sign on authentication was difficult to pass through with just python form libraries. Additionally, handling the data from the TRACE server and finding useful interpretations of the data was an interesting but challenging part of our process.
Accomplishments that we're proud of
In terms of technical accomplishments, we're proud of the complexity we achieved in such a short period of time. Managing to generate so much code and successfully integrate it together is something we didn't know if we'd be able to do, and we're proud that we achieved it. More importantly, we're proud to have built a tool that can be used by members of Northeastern University student body to aid in course registration and planning.
What we learned
We learned a lot about data scraping, parsing, and manipulation in the process of aggregating TRACE data. We also learned about Elasticsearch which was new to us, as well as more about React in the front end.
What's next for SearchTRACE
There is a lot more useful information, such as comments, that can be displayed on our site, as well as more interesting and usable visualizations. Other features, like being able to filter searches by prerequisites or department, would also enhance the SearchTRACE tool. Additionally, before rolling this out, we would need a login page to verify Northeastern email addresses and ensure that the tool retains the current privacy of Northeastern TRACE evaluations.