Inspiration
Course selection is a tedious process which requires to you cross reference many sites such as anex.us, Aggie course catalog, and also spend hours on reddit figuring out whether a course is "easy" or extremely challenging. You may spend hours choosing professors who grade the most lenient and make your life easier, and choosing a proper schedule which allows you to keep your schedule flexible. Even after all this research, course difficulty and professor rating is very biased based on every student.
What it does
With Aggie Course Insights, you upload your transcript (from high school, or from college (if it has grades)), and choose which courses you plan to do. Our tool then works by seeing which subjects are your strengths and weaknesses, and weighs it against real time average GPA data for each course from anex.us. It then gives a difficulty rating of each course tailored exactly to you, with no external bias. It tells you what topics you may struggle with more due to lack of experience, as well as a percent change to score each grade (a prediction). Our tool also allows you to save scenarios, and your transcript, so you can compare 2 schedules with each other to see which one would be easier.
How we built it
We started by figuring out how to scrape grade distribution data. First we tried scraping from anex.us, but as scraping was prohibited we reverse engineered the website and figured out how to use the API that anex.us utilizes. We then built an API route that accepted a course department, number, and transcript information and generated information/advice for the student. Next we moved onto building the frontend with Next.JS. With the use of TailwindCSS and React hooks, we were able to build a modern, aggie themed website that we hope will be useful to A&M students for years to come.
Challenges we ran into
We initially ran into the challenge of not being able to efficiently scrape grade distribution data. After trying to parse PDFs published by A&M, we eventually figured out how to use the dev tools tab to look at network requests made by anex.us, and request data from their API.
Accomplishments that we're proud of
We are extremely proud that we found a way to personalize a students past academic history to reflect their future outlook for courses are. By personalizing results off of students, we remove all the headaches that comes with looking through conflicting opinions on sites like Reddit. We are also proud of how our wbesite is very user friendly as it is simple, organized, and contains tools to save previous requests in the site itself.
What we learned
We learned the importance of building usable and headache free websites. While testing, we realized we were using a lot of API credits due to having to re-analyze anytime we changed something. However, after implementing a feature to store potential semester course loads in local storage, we were able to not only make our development more efficient, but also create a better user experience.
What's next for Aggie Course Insights
Our goal for Aggie course insights is to become an actual website which every Texas A&M student can use on their own. This is the goal of the project as it guides students to make more informed and confident decisions in their course selection. We wish to make this a similar tool such as aggie schedule builder, which was implemented into the official TAMU site.
Built With
- annex.us
- javascript
- next.js
- tailwind
Log in or sign up for Devpost to join the conversation.