230 likes | 372 Views
Tablet PCs in the Computer Science Curriculum. Richard Anderson University of Washington. How can we use Tablet PCs in the CS Curriculum?. Broad range of opportunities The Tablet PC is an engaging platform Accessible at a number of levels
E N D
Tablet PCs in the Computer Science Curriculum Richard Anderson University of Washington
How can we use Tablet PCs in the CS Curriculum? • Broad range of opportunities • The Tablet PC is an engaging platform • Accessible at a number of levels • Learning about the Tablet PC develops a broader skill set
Examples • Early Programming • Algorithms • Human Computer Interaction • Artificial Intelligence • Capstone Project Courses
Introductory Programming Hello World
Form Code private InkCollector inkCollector; private Recognizers recognizers; public Form1() { InitializeComponent(); this.inkCollector = new InkCollector(this.Handle); this.inkCollector.Enabled = true; this.recognizers = new Recognizers(); }
Event Code private void ClearInk() { this.inkCollector.Enabled = false; this.inkCollector.Ink = new Ink(); this.Invalidate(); this.inkCollector.Enabled = true; } private void OnReco(object sender, System.EventArgs e) { this.textBox1.Text = this.inkCollector.Ink.Strokes.ToString(); }
Algorithms • Basic algorithms for geometrical problems arising in pen computing • Access to low level components of ink
Tablet Geometry SUB: What is Points[6.4]? • Basic structure – Stroke: sequence of points • Himetric coordinates • Sampled 150 times per second • Coordinates stored in an array Points
Segment intersection algorithm • Run time O(nlog n + Klog n) for finding K intersections • Sweepline Algorithm 3 6 5 1 2 7 4
Human Computer Interaction • Application design for a new platform • UI Issues for Pen Based Computers • Control with a pen • Mode buttons • How do you right click? • Handedness • Obstruction
Artificial Intelligence Plan (plus) Derived (denied) Demo (sound) Using (using) Recognize these four words
Recognizer Architecture Ink Segments Top 10 List TDNN dog 68 clog 57 dug 51 doom 42 Output Matrix divvy 37 a 88 8 68 22 63 57 4 Lexicon ooze 35 b … 23 4 61 44 57 57 4 Beam Search … … cloy 34 a d g 57 a 88 … o 92 81 51 9 47 20 14 g doxy 29 e o 65 b 13 31 8 2 14 3 3 l b 23 t 12 b t … client 22 l 76 c b 6 g c 86 a 71 12 52 8 79 90 90 t dozy 13 a h a 73 d 17 17 5 7 43 13 7 t 5 o d 92 … g … e o 77 n … 7 18 57 28 57 6 5 g 68 t o 53 16 79 91 44 15 12 t 8
Capstone classes • Group project to draw together undergraduate experiences • Widely offered in engineering • Many success stories • Common format • Team oriented development project • Goals • Learn about exciting application domain • Experience working in a group • Product life cycle
UW Tablet PC Capstone • Winter 2003 • Group Projects in Collaboration with Industry • Spring 2003 • User Centered Design • Fall 2003 • Exploratory Development • Winter 2005 • Exploratory Development
Elevator Application Photo by Dan Lamont
Homework Grading Photo by Dan Lamont
Questions? • Contact Information • Richard Anderson anderson@cs.washington.edu http://www.cs.washington.edu/education/courses/cse490ra/