1 / 38

Q: A Tactile Approach To Digital Organization

COMP 410 December 2009. Q: A Tactile Approach To Digital Organization. COMP 410 – What is it?. Semester-long project “Customer” poses a challenge Student-run Dr. Wong and 4 TAs Warmup project: BallNet. Resources – Sharepoint. TFS + Visual Studio. Resources – Development Servers.

tacita
Download Presentation

Q: A Tactile Approach To Digital Organization

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. COMP 410 December 2009 Q: A Tactile ApproachTo Digital Organization

  2. COMP 410 – What is it? • Semester-long project • “Customer” poses a challenge • Student-run • Dr. Wong and 4 TAs • Warmup project: BallNet

  3. Resources – Sharepoint

  4. TFS + Visual Studio

  5. Resources – Development Servers

  6. Our Team Nick Bridle Input JaewooJeon Client Rick Manning Server, Client Lee Marinelli Server, Input Kevin Montrose Server, Plugin Seth O’Brien Client Jim Russell 3D Interface Ivan Van Server

  7. Our Organization • Every two weeks we: • Presented new prototype to customer • Reassessed progress • Set goals for next two weeks • Advantages: • Regular schedule • More upfront progress

  8. The Challenge Search is useful, but users need a way to structure information.

  9. Our Solution • Workspaces • Multi-user collaboration • Categories, Tags, and Links • Gestures!

  10. Demonstration

  11. System Overview – Modules Server Plugin Client Gesture Input

  12. The Server Server Plugin Client Gesture Input

  13. Server – Architecture Workspace Workspace Workspace Workspace Task Queue Task Queue Task Queue Task Queue HTTP Communications Layer Server Worker Threads

  14. Server – HTTP Communication • HTTP Requests • GET to get data • POST to send data • JSON encoding used for structured queries:

  15. Server – Concurrency • Many-reader, single-writer • Number of threads proportional to number of processor cores

  16. Server – Workspace Instances • Each instance manages: • Document content • Document metadata • Full-text indexing • Version tracking • Lock tracking

  17. Resource Desc. Framework • Semantic Web • Triples: • Subject • Predicate • Object • Easy to represent many different types of relationships www.Q-is-the-best.com “Tagged with” “COMP 410”

  18. The Plugin Server Plugin Client Gesture Input

  19. Plugin – Overview • Extend the browser, rather than replace it • Familiar interface for keyboard and mouse • User “shares” items from the browser, optionally specifying title, category, and tags

  20. Plugin – Design • Firefox extension • Well-exercised platform • Lots of flexibility • XUL for UI • Javascriptfor logic

  21. Plugin – The Guts • Wraps all requests into JSON objects • Data transmitted as base-64 encoded strings • Tracks browsing history on a per-tab basis • Tracks user actions like reload, back/forward • Browsing histories are non-linear!

  22. The Client Server Plugin Client Gesture Input

  23. Client – Overview • Browser-hosted application • Windows Presentation Foundation • Reference implementation • Wide variety of clients could use same server • Platform independence!

  24. Client – Design

  25. Scalability • Download data only as needed • Workspace structure • Thumbnails • Full documents

  26. Demonstration

  27. The Input Server Plugin Client Gesture Input

  28. Input – Motivation • Interesting • Substitute for traditional keyboard and mouse • Uses Wiimotes! • Intuitive • Meshes well with 3D view • Flexible • Doesn't restrict the user to one input interface

  29. Input – Inspiration

  30. Input – Physical Setup • 2 Wiimotes on tripods • Gloves with IR LEDs on the fingers

  31. Wiimote Stereovision • Like depth perception in humans • Calibrate with cube Monitor Wiimote Wiimote Human w/gloves

  32. Input – Demonstration

  33. Gesture Recognition • Project points in 3D space to two 2D planes • Apply 2D recognizers

  34. Custom Gestures • Pre-existing libraries used to analyze strokes

  35. Super Annoying ProblemsInteresting Challenges • Interfacing different platforms • Browser/client communication • Client/input communication • Firefox • Poor documentation • No official API for extensions! • Hardware (Wiimotes)

  36. Future Improvements • Security • HTTPS • SQL queries • More 3D layouts • Improved gesture fidelity • Improved gloves • Reflected IR approach

  37. Acknowledgements

  38. Questions

More Related