Public Abstract of Voting mechanism for Teachers/Pupils using QR Codes. Currently being developed. I tried to update this presentation as we have changed the method we are going to use but slideshare is failing ;\
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
QR Vote
1. Wireframe for QRVote A method of enabling pupils with web & camera enabled devices to vote by pointing their device at a QR code
2. Experience Teachers experience: Easily assign a question and multiple answers and share via large display at front of screen (usually an IWB) or printed/electronically distributed to pupils reachable physical environment. Pupils experience: Point at QR code on projected screen OR QR code on sheet of paper/textbook (see slide 3), after a few seconds the vote is registered Note: Use native QR code application (available since late 00’s) or provide third party QR application
3. Teacher UI The slide shows the proposed teacher experience.
4. Create your question Type the question: [What colour is a tomato?] Type the possible Answers: [Beige] input boxes [Red] [Purple] Add another answer Add another question Save and create button takes teacher to slide 6 (this is the slide the teacher displays on his/her display for the pupils to begin voting on)
5. Pupil UI The next slide shows the proposed pupil experience. We imagine the pupil is holding up their device and pointing the camera at a large display.
6. What colour is a tomato? Beige Purple Red Next Question (only visible to teacher)
8. Technical requirements (to develop) Build QR codes on the fly that link to specific URLS Monitor hits on URL (ievote.php?id=1&result=2) Store voting results in a database, can be simple key values or relational. Build graphs on the fly (probably push data to a jQuery graph module) Can we use Google forms for some bits? No
9. Potential pitfalls Camera too far away from QR codes may register multiple votes Camera too close to QR codes wont be able to vote as it wont be able to get entire QR code in shot Unreliable internet connectivity Unreliable Wireless connectivity Miss-configured portal devices Not every child has a mobile device and schools are sadly slow to adopt the One Device Per Child model Google Docs may be blocked by firewall/filter
10. Todo list for development (with notes) Investigate Google Forms API Investigate a nice way to build QR codes on the fly Database schema ID, Question, Answer Investigate Google Graph API
11. Data model Pupil view: Mobile device Website Google Docs(ajax POST request) Google Graph API (Ajax Get Request) Teacher view: Website jQuery QR code Google Docs API (ajax POST) Google Graph API (Ajax GET request) Two separate databases, one for q’s, one for results. In theory we should be able to keep everything on Google.com (using CDNs) and Devdomain.com (tickl.co)
12. Why do things this way? Simplified hosting Empowered by Extensive options of Google APIs and Google Docs Low start up costs Google Docs shouldn’t be blocked by school filter No need for separate MySql database Save on writing our own code Less time spent learning Google’s API and circle jerking the Google hordes Double the unicorns
13. Why not use Google Better embed support More customization Less reliance on Google Better graph support Simplified programming
14. Required research areas http://code.google.com/apis/spreadsheets/ http://notes.jetienne.com/2011/04/07/jquery-qrcode.html http://code.google.com/apis/chart/ http://gdatatips.blogspot.com/2009/07/create-new-google-docs-spreadsheet-from.html http://www.morningcopy.com.au/tutorials/google-forms-and-jquery-validation/ http://www.morningcopy.com.au/tutorials/how-to-style-google-forms/ http://www.1stwebdesigner.com/css/top-jquery-chart-libraries-interactive-charts/
15. Estimated hours work 5 hours research jQuery Graphs jQuery QR Code 4 hours development 1 hour database schema design 1 hour database creation and writing data objects 1 hour voting mechanism 1 hour form for posting question 6 hours design Home page Teachers create a question page Vote page View result page 2 hours building initial Proof Of Concept
16. Notes Google’s API does not support what we want to do easily Google’s API increases complexity jQQR code = Pass URL as value jQ Graphs = Implemented and looks okay Vote.php is basically the voting function Everything is incredibly insecure Req functions: Create unique IDs Allow extension of questions