Inspiration

One day, a young Western University student named Jason Lee sat and wondered:

How can I see if there is a class going on at the classroom I need to be at in 40 minutes

Then he messaged 3 young developers from the Hack Western 3 Slack chat

He met Joshua Arts, who is a developer comfortable with backend technologies such as Ruby on Rails.

Then he met Lars Nolden, who is a German developer that came to this hackathon SOLELY for developing this project. Just kidding, he took my mock ups from balsamiq and implemented it using bootstrap and beautiful HTML/CSS code.

Last, but not least, he was joined by the amazing Michael Song. He is a fellow Western Student and a far more superior programmer than you probably are. No but seriously, he's good.

What it does

It provides western students with a slick website that displays available classrooms that are empty and not being used by a class. Students will be able to use this to find extra study rooms during exam season.

How we built it

MAD PURE SKILLS BABY

No but for reals, this was the process:

  1. Use Selenium to automate data gathering process

  2. Scrape Western Time Tables with Python using Requests and Beautiful Soup libraries

  3. Set up Ruby on Rails project for back end

  4. Designed the templates for each site

  5. Implemented the templates using Bootstrap, HTML, SCSS, and Javascript

  6. Efficiently stored classrooms data in a MySQL database

  7. Linked Ruby on Rails project with the database

  8. Published web application to make it available for students.

Challenges we ran into

Thanks to mentors and sponsors, we were able to successfully build the project we had in our vision. Some examples of the challenges include:

  1. Figuring out how to "fool" the Western Time Table "refresh capcha robot" (Turns out it was pretty stupid)

  2. Exporting to a CSV using python - shoutout to Google

  3. Seeding the data from the CSV into the database - shout out to Mark and Corey from Media Sonar who helped us a lot

  4. Automating the process of data gathering - which was solved using Selenium

  5. Putting the website on the servers.

Accomplishments that we're proud of

  1. Finishing a hackathon project in one weekend.

  2. Working successfully as a team even though we all met at the hackathon.

  3. Overcoming tough programming challenges.

What we learned

A lot, to be honest

But let's see:

  1. Web scraping with Python
  2. Database handling with MySQL and Ruby on Rails
  3. HTML/CSS - We knew this before, but we feel like we improved a lot in this area
  4. How to delegate tasks and manage projects properly among a small team
  5. Motivating each other
  6. How to sleep on a table

What's next for classroomfor.me

  1. EXPANSION BABY - The next step for classroomfor.me is to serve other universities as well, not just Western University.

  2. University endorsement from Western

Share this project:

Updates