Code Monkey home page Code Monkey logo

gt-course-surveys's Introduction

gt-course-surveys's People

Contributors

martzcodes avatar weallwegot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gt-course-surveys's Issues

8803 - BDH missing

This course only shows up in the all reviews section, but not in the course reviews section.

grade data combines OMS & resident sections

The grade data mixes results from OMS sections with on-campus sections, which could lead to incorrect expectations among OMS students using the tool. As a specific example, in Fall 2014, CS-6505A (on campus) saw 44/76 A's, while CS-6505-O01 (OMS) saw 49/137 A's (adjusted for withdrawals); the dataset used in this tool shows a total of 93 A's from Fall '14. Mixing data with a higher pass rate from the resident section with the results of the OMS section inflates expectations among future OMS students.

Require email verification

Beyond requiring an @gatech.edu email, require the user to click a verification link sent to the entered email before allowing authentication.

extend filtering capabilities to reviews-all and grades-all views

I would like to see the grade breakdown for all courses, but only for certain semesters. For example, the last semester.
Same for 'All Reviews'. For example, I wanted to order the courses by their average rating given in the past 2 semesters because I noticed from the written reviews that as courses run longer and become more organized, their rating improves sometimes dramatically, making the average rating a less helpful statistic.

Why is the repo private?

I understand that the data might be kept private, however the code can still be public.

This application repo can be made public. Why is it private?

Adding Grades?

I don't see an obvious area to add my grade to a particular class. Did I miss it somewhere?

eliminate horizontal scrolling on mobile

All reviews and all grades views display a table with aggregations of review/grade data for courses. The table currently requires horizontal scrolling on small screens (e.g. mobile devices).

Mobile contributes to a small portion of traffic (13.5%), and the columns with counts/averages/percentages each take up at least 100px of horizontal space. Considering there are 4-5 such columns and the width of, say, an iPhone 5 is 640px, there is just not enough horizontal space for a device-agnostic solution.

The request is to determine if/how the horizontal scrolling can be eliminated.

Course titles in the sidebar are abbreviated by cutting off whole words

Observation

  • Course titles are abbreviated like this: "CS 6601 Artifical Intelligence" -> "CS 6601 Artificial"

Expectation

  • I can imagine different ways of improving this:
    • Abbreviate with 3 dots at some point
    • Removing the department to save space
    • Define abbreviations for all courses and displays Deparment-Number-Abbreviation (we could also list departments on a separate page - added benefit of everyone hopefully using the same abbreviations)

display progress spinner while the app is loading

loading data can take on the order of seconds (>3s on poor mobile networks)

the app should display a progress spinner to let the user know to wait patiently instead of wondering if something went wrong

allow exporting of the data

Concerns were raised on Google+ about hiding the community's data behind a closed database. We might need to think about adding an export functionality to make sure we can periodically backup the data in case of any emergency. Maybe a simple CSV exporter would be sufficient already.

Relevant part of original comment: "not [..] comfortable with taking our shared spreadsheet and putting it behind a locked database. The spreadsheet was a shared resource, everyone could make a copy of it, download it and modify it anonymously. Your site [..] the dataset is not available."

think about limiting the review length

Having (seemingly) unlimited review length might cause reviews to be more elaborate than they would need to be. Over time, it will get difficult to get an overview over the class since there will be a LOT of reviews, and potentially long ones. This ties in with #8 - long term, it would to help to have more "summarizing" data points than individual longer comments.

About review length, maybe a maximum of 2000 characters would be enough, adding an indiciator of characters left in the input field. What do you and others think about it?

Unable to update profile specialization

While trying to update my specialization in my profile to Computational Perception and Robotics, the "Updated" message pops up as if everything worked correctly, but when I go back to my profile after visiting another page or logging out, the specialization is one of the other specializations, not Computational Perception and Robotics.

Also, I noticed that the first time I tried updating the specialization, I would always get some Firebase error that it found an undefined value in the specialization. To get past that Firebase error, I had to change the specialization to something else (like Machine Learning).

The bottom line: I think there's something wrong with the Computational Perception and Robotics value in Firebase, which is preventing it from being selected.

Enhancement Proposal: Sort by Bayesian Average

Sorting by average over-emphasizes extreme ratings in courses with few reviews. One common correction for multinomial distributions is to use the Bayesian Average. Using the Bayesian average would better capture the certainty of course difficulty ratings reported in the tool.

In this case, the corrected rating is based on the formula:

R_avg(course) = (C*m + sum(difficulty|course)) / (N + C)

m is a constant prior expectation for the rating, C is a constant number of reviews biasing the estimate, and N is the number of reviews per course. The correction discounts the volatility of the average difficulty when there are few reviews, and the constant difference is discounted as the number of reviews increases.

Using the current data, reasonable values can be chosen as C=25 (the median of the number of reviews for all classes currently in the database), and m=3.25 (the cumulative average difficulty rating). These can be treated as constants, and are unlikely to need changing in the future.

Add new semesters

Add Fall 2017 semester to the drop-down for mid-semester reviews.

Allow longer reviews

The 1000 character limit is a bit restrictive. When trying to explain the course well one has to cut out a lot so that it will accept. I suggest increasing to 2000 or 2500.

Weight or filter averages by age of review

I love the Average Work, Difficulty, and Rating metrics. However they can be VERY skewed because some courses have changed significantly. For instance, look at reviews for CS 6250 (Computer Networks). Many reviewers warn the reader to not be fooled by the averages, this course is much more difficult than in previous semesters.

I'd like to be able to filter or weight reviews by age. A slider along the top of the reviews page with stops at each semester would be great.

Thanks!

notifications

sidebar to display recently published reviews

option to receive daily or weekly digests

Login with Github causes 500 error

Looks like the app gets into some kind of infinite loop after you login with Github then try to navigate off the profile page. If you refresh the page after getting the 500 error the app just hangs at the loading screen. On Chrome there's no error in the console. In Safari it gives an error saying pushState tried to fire too many times, and the URL bar flickers /reviews.

New Average Misleading

The new score/averaging algorithm is misleading. I initially intended to phrase this as a bug report due to the sudden change, but found mention in the Help section of the new algorithm. As a user, a normal average is typical and expected, especially considering historical functionality. Given the current state, without a close look, I would infer that, for example, Big Data is a 4, when literally every review has been a 5 thus far. Converging to a 5 is virtually impossible assuming a reasonable number of reviews over time; even with 150 5-difficulty reviews, a course would still rate as a 4.75.

allow reviews without value for workload

I don't keep track of how many hours per week I spend on a course, and don't want to just make something up. I would prefer if the field were optional (maybe requiring a confirmation, if you want to encourage people to fill it in), so that I can still review courses.

avatar images must be circular

It is possible for a user to have a rectangular (i.e. non-square) profile image. In that case, the app currently displays the avatar image as an ellipse when instead it should clip the image to appear circular.

Add course milestone/version change to course numbers

Some courses have evolved or are being rebuilt, revamped, changed, enhanced by the department.
Adding a way to filter by course version would be good, since many of the courses are no longer "easy" or hard, or even the same as the V1.0 that the AT&T students have gone through.

Make comments form field resizable

Observation

  • On the write-review page, the comments input field is not resizable.

Expectation

  • To enter longer texts it's usually convenient to have it resizable.

find a long term scalability solution

There's significant traffic and database bandwidth consumption with the app, causing usage limits to be exceeded rapidly. As a result, we see symptoms such as the one described below.

We need to consider moving away from Firebase, which is very expensive to support our load, to a more affordable solution.

Original inquiry...

Not all reviews are being displayed in the reviews page for the courses. The network request RVW.json appears to contain the missing reviews but not the ones that are actually displayed. Filtering seems to be reflecting only the reviews shown (previous semester checkboxes are disabled).

add more rating dimensions

Thanks for writing this, it's a huge improvement over the spreadsheet. With this as a basis, I would like to actually be able to rate classes on more than just difficulty. I like the simplicity of it all, but it might be worth adding some more dimensions, maybe just with 1-5 stars.

  • Learning Reward: What did you learn, is the content worthwile, etc.
  • Engagement: How engaged did you feel when doing the class, was it an isolated boring experience or highly interactive with lots of interactions, peer to peer learning, etc.
  • Overall Rating: An overall "happiness" rating

Grades don't seem to match

Something seems off on the grade listing. Intro to Info Sec was a first offering this year, and according to a Piazza poll on our course site, of those who voted, 65 received an A, 32 received a B and 2 received <= C. The grade listing has only 43 total grades listed for that course. It also lists some classes which aren't offered until next semester.

allow filtering reviews

As courses change in difficulty, quality and content ove time, the older reviews might not be relevant anymore. It might make sense to use a time-frame to display the text reviews and averages. Could be turned on by default or added as an option.

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.