As freshmen signing up for classes for Spring 2020, there are a lot of factors that go into considering a schedule. We must determine how difficult a class may be, whether we want to wake up early for specific classes, or if a specific professor grades unnecessarily harder than others. Having to look at all of these factors is rather tedious and having it automated makes it easy for us.

What it does

The Ramblin' Registration builds the most optimal schedule for GT students by taking in a set of desired courses and time preference for these courses (morning or afternoon). Using this it will post the student's optimal Spring schedule into Google Calendar for the user to view and use.

How we built it

By scraping the HTML from Georgia Tech's Oscar registration catalog, we formed a database of section offerings for all courses that were available. We also developed an algorithm that "scores" certain class sections based on a variety of factors (personal preference and time preference of the student). We then used a JavaScript front end to launch the Python files and call on the Google Calendar api to insert the schedule.

Challenges we ran into

Some challenges we ran into were incorporating the class ratings from websites such as and Due to time constraint, we were unable to scrape the data from these sites and thus our criteria only considers time preferences when building the schedule.

Accomplishments that we're proud of

We are proud of registering and connecting the domain to the host site, parsing through the Oscar database, and implementing the Google Calendar api.

What we learned

We learned a lot about the different ends of programming. We learned about the relationship between client and server.

What's next for Ramblin' Registration

The next task for Ramblin' Registration is scraping through the data on to create a more personalized schedule based on inputs of many other students. We also want to optimize our algorithm and reduce the time-complexity of it.

Share this project: