Code Monkey home page Code Monkey logo

#Official CU FCQ Project :warning: This project is considered finished, and will not be updated :warning: #####Project by: Samuel Volin, Alex Tsankov Build Status

What is an FCQ?

An FCQ (Faculty Course questionnaire) is a survey maintained by CU and collected at the end of every course with the intent of rating instructor proficiency and gauging the quality of a class. It measures a variety of different criteria like:

  • How effective was a teacher at generating interest in a subject?
  • How many hours a week, on average, did students spend on a class?
  • How available was an instructor for the class?

You can see a sample of an FCQ here.

This is all fascinating info that we believe can inform students when it comes time to pick classes. Fortunately it's all publicly available at this site maintained by CU. This program takes the data, adds its to a database, draws connections between the FCQs, and formats it nicely using JS. You can see the a server running this at cufcq.com.

Last FCQs added: Fall 2014.

To Run:

  1. Install the correct dependencies. On Linux this can be done with the following command:

sudo apt-get install postgresql-common postgresql-9.3 libpq-dev rails node postgresql-contrib-9.3 openjdk-6-jdk

  1. Create the Postgres DB following the commands at config/installing_postgresql.txt

  2. Navigate to the cloned directory and perform a bundle install to make sure all Ruby gems are updated.

  3. Initialize the DB with total_reload.sh. This will run a bunch of rake tasks that reads the csv files stored in data/output and put them into the DB.

  4. Run the correct launcher (./local_launcher.sh if you just want to run it on a local machine).

  5. Go to localhost:3000/instructors to see if the site is running properly.

What's going on:

When we download FCQs off of the official website, we get large Excel files containing the scores for each class that has been taught during that semester. You can access this information using the tools in csv_make, specifically scraper.py.

What our system does on a large scale, is take the data from the individual classes and break them into their logical criteria. Each FCQ is tied to a course and teacher. We can start aggregating all of the FCQs for each instructor into an instructor page. Likewise, we can take multiple FCQs and aggregate them into courses. We can then draw relations between instructors and courses and combine them into departments.

We also tie in grade data, provided separately in gradesall.xlsx to individual FCQs.

###Imports:

You can create csv files from the excel documents from the FCQ website using data/csv_maker.sh, this requires ssconvert which is a gnumeric application. Put the final csv files into to the data/output directory.

All files that end in .csv in data/output are imported using the import script. This script is found in lib/tasks/import.rake

###API Endpoints:

You can see the json returned for instructors and courses in doc/ TODO - Add in more documentation for our endpoints.

cufcq's Projects

cufcq icon cufcq

Official Repo for the cufcq project

ratemybuffs icon ratemybuffs

Rate My Buffs is a chrome extension that displays the University of Colorado Boulders, FCQ information next to the classes during student registration. This makes deciding which professors you want and which courses to take a breeze. Note: This repo is very disorganized from the hackathon and will be pretty again soon.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.