QuizzerBangalore

  • 78 Commits
  • 64 Pushes
  • 28 Deploys
Launch Site

Quizzer

By TopNoders

Screencast
Quick Intro

Quizzer is a realtime websocket based interactive Game where you can organize quizzes.

Description

What is Quizzer?

Quizzer is a realtime, multi-user quizzing web application that allows users to create quizzes and play them with your friends in real time. It is written on top of a generic framework which can be extended to work with any discussion. For example: 1. Games where more than one person can connect and play together, for ex: quiz (which is what we have implemented) 2. Driving a discussion through poker cards, 3. Quick objective test where multiple persons can participate and evaluate themselves.

Who is it for?

Looking to conduct online quizzes? Looking to have fun quizzing with your friends and people around the world? Or want to practise yourself through a set of questions? Or are you practising scrum and need a way to do planning poker like estimation for your stories? Quizzer is for you.

Why would people use it?

Quizzer makes it easy to conduct online quizzes and keeps participants excited by giving them REALTIME view of how they are performing. Quizzer is based on HTML5 frontend and works seamlessly across variety of platforms including latest versions of all the browsers such as (chrome, firefox, IE, safari) and on variety of platforms/devices such as iOS (iPad), android phones and tabs.

How does it work?

Quizzer allows you to create a custom quiz by entering your questions and possible choices. The creator of the quiz on joining sees the START button and other users on joining need to wait for quiz to start. Once quiz is started all the users are put on to the first question. Before moving to the next question, all users need to answer current question. The goal (yet to be impelemtned) is to also build a timeout so that everybody is forced to move to next question after a certain duration.

As users move through questions, their scores are updated on all user's screens in realtime. At the end of the quiz winner is announced on everybody's screen.

Judging Instructions

Platforms/Browsers supported

The app should work on all latest major browsers (including chrome, ff, IE10, Safari etc). It also is usable from iPad as well as android devices.

To get a quick feel of the application,

  1. On main page, click on "Join Sample Room" button on top right of rooms page.
  2. This will automatically generate a science objective quiz and put the user as creator.
  3. Click on START button to start the quiz. Prior to starting the quiz, you may as well share the link with other users so that they can also participate. NOTE: If you don't see choices for first question after pressing START button, please click START again. There is a potential bug which sometimes prevents choices from showing on first question and pressing START again works.
  4. Vote by selecting appropriate options for each questions.
  5. A leader board is displayed on the right indicating scores.

NOTES 1. If user is using it for the first time, app will prompt for the name to use. 2. All unfinished quizzes (including the instances of sample ones) show up on main page of the application. The application doesn't require any authentication and anybody can join in with a name. However, when you join, if quiz is not started, you wont be able to do anything unless and until the owner/creator of the quiz actually starts it. You will keep seeing message "Waiting for other participants to join and the quiz to start.". Note that START button is shown only to the owner.

What they Used

emberjs socket.io mongo express foundation

Votes

Your Vote

Voting is now closed.

Other Votes

  • (17)
  • judge

    Pluralsight

    Quiz apps have been done many times and this one is unfortunately not very noteworthy. The initial user signup dialog required a mouse click instead of accepting the ENTER key on completion. The list of rooms doesn't show if a room is active (which requires the student to go back to the home page and find another).

    • ashutosh3
      contestant

      Thanks Geoffrey for the comments. I wanted to mention a couple of points.

      1. The key differentiating factor between this quizzing app and others is that its web based that works across variety of devices, single page app with real time updates using web sockets.
      2. The list of rooms only shows active rooms. Inactive rooms are not shown.
      3. Keyboard based navigation indeed was a goal but unfortunately there wasnt enough time left.
  • judge

    Khan Academy

    Very interesting idea! Took a little bit of work but I finally got it working! With more polish and refinement I could definitely see this being used. Perhaps in a class room setting?

    • ashutosh3
      contestant

      Thanks for the comments John.

      Class room setting was one the several things we had in mind. We started of with an idea of planning poker for sprint planning where everybody would take turns to cast their estimate on a given story. Then we thought this might as well be extended to any discussion or quiz like activity where everybody needs to vote in order to move to next item (item being question, story etc etc). So we thought of doing a backend which would be generic and capable enough to support all of these use cases and build specific UIs on top.

      And for NKO, for the UI, we zeroed on to make it specific to quizzing experience which can be used in a classroom like setting as you said or in a quiz game show or someone preparing for an exam can setup some question banks and practice through as a solo owner player.

      And you are right, this definitely needs to be polished a lot. This is all conceptualized and implemented in 48 hours during NKO with some challenges around our inexperience with GIT :).

      Bare minimum, we are looking to extend and implement following pretty soon. 1. Timeout on server to force move to next question 2. Find someone who can help us design the UI and do some better UI. 3. Fix some stability issues. Sometimes START button is required to be pressed twice for ex. 4. Allow pulling some reports/dashboard. Currently we track very fine level of details in Mongo DB. We are thinking it would be great to build some UI reports around it that can help a teacher in a classroom as well as students gain some insights. 5. ... And we are brainstorming more.

      Thanks again for your comments.

  • judge
  • contestant

    IOKI

    Nice websocket use case.

  • judge

    Freelancer

  • contestant

    Cuttle

    I think the word 'item' is meant to used to describe a 'question', tried adding more questions with the add item question but it wouldn't submit either of them.

    • ashutosh3
      contestant

      @timripley, you are absolutely correct. Item actually refers to question in context of quiz. Item is a more generic term used across the application as we were looking to build a framework which would work across quiz, or planning poker or any other discussion which requires people to vote. So specific terms were question, issue, story etc and we chose to generalize as item.

      However, I still think we could have better used the word question on UI. Thanks for suggesting that.

      To your point of adding questions, UI just doesn't display it but it keeps adding. Can you please retry with following steps. 1. Specify room name 2. Specify question details and click on add question. This will clear the details you specified but application would store it internally. (NOTE: We didnt get enough time to show a table with currently added questions, hence the confusion). 3. Keep repeating point 2 above by adding as many question details as you like and pressing add question button. 4. Finally press the create room button. This will put you in the room and on pressing start, you can keep voting and cycle through all the questions you added.

      I hope you do get a chance to read this and try out again and reconsider your vote on completeness ladder :)

    • timripley
      contestant

      @ashutosh3 followed your instructions and it worked much better. Edited my vote completeness for you, good luck!

  • contestant

    Attachments.me

    I love the idea of a quiz app but unfortunately, nobody else was online when I tested it and I couldn't get any of the quizzes to start! I also had a problem with the UI-- the game container had some padding on it or something and it'd appear just right of the screen. I'd like to see how many are in a given room/quiz at any given time, that way I wouldn't have to join empty rooms. Last suggestion, it would be cool to see a quickplay button where I could quickly join any available room.

    Cool idea, I might've enjoyed it more with people in the system.

    • ashutosh3
      contestant

      @dreed1, thank you for your comments and votes.

      To get a feel of the app when no users are online, you can just use two different browsers on your machine to hit the URL and join with 2 different names.

      You can then play in both the windows and notice how real time updates reach both the windows automatically.

      On the UI, unfortunately none of us know much about UI and hence UI is a bit ugly and needs some smart UI designer / implementor. This was the best we could crank out but definitely appreciate your feedback. When we get chance we would try to address and host it somewhere.

      On the quick play button, we actually thought of it but ran out of it. Ultimately what we did was added the "Join Sample Room" button. Clicking on that creates automatically a single predefined quiz and sets you as owner of that. You can just start playing the game at the click of button if you click that button.

      I hope you do get a chance to try the Join Sample Room and see if that is something similar to what you were suggesting.

      Thanks for your vote and feedback.

  • contestant

    Nice work! Would love to see the framework open-sourced after the competition to help with building my own real-time games.

  • contestant

    Hacker School

    Hi there! Fun app, although I can now safely say that I don't know Science. Design was obviously not a focus here, but it's still reasonably usable. The timeouts feature you mentioned is key.

    • ashutosh3
      contestant

      @zachallaun, thanks for the comment.

      You are absolutely right that timeout is the key. We actually were midway through that and ran into some issue so pulled it out. We are looking to host the application somewhere with timeout feature built in pretty soon after the competition.

  • contestant

    Seems like an interesting idea. Perhaps it would be better with more people

    • ashutosh3
      contestant

      @ctborg, Thanks for voting.

      Do try out with more people when you get a chance. However, if you want to get feel of multiple users, you can try accessing in multiple browser windows (say 1 chrome and 1 firefox).

    • ashutosh3
      contestant

      Note that as mentioned earlier, it also works on ipad and android phones as well, although on ipad and android you cannot change user name once specified. you can use different names on different devices and still play.

IMPORTANT DATES

REGISTRATION
SEP 17
COMPETITION
NOV 9-11 UTC
JUDGING
NOV 11-17
WINNERS
NOV 18

Thank you to our Platinum Sponsors