Wednesday   7:00 PM - 10:00 PM (room: As Assigned)

Workshop 1: ROS at Every Level: Using the Robot Operating System in CS 0, 1, 2, and Beyond room: Plaza 1
Julian  Mason,   Duke University
Zachary  Dodds,   Harvey Mudd College
William  Smart,   Oregon State University
After many years, the robotics research community has settled on standard middleware: the Robot Operating System (ROS). This standard presents a great opportunity for educational robotics. This hands-on workshop will engage participants in ROS-based curricula for CS 0-2 and advanced undergraduates. The workshop will highlight how ROS has simplified, enabled, and expanded flipped robotics curricula in CS 0-2. Our advanced materials show how ROS eases access to the robotics research community, permitting larger and more research-representative projects. This workshop is two long hands-on sessions punctuated with short experience reports. Participants will implement the first two assignments of our CS 2 curriculum. Laptop optional.
Workshop 2: Making Mathematical Reasoning Fun: Well-Integrated, Collaborative, and "Hands-On" Techniques room: Plaza 8
Jason  Hallstrom,   School of Computing, Clemson University
Joe  Hollingsworth,   Computer Science, Indiana University Southeast
Joan  Krone,   Mathematics and Computer Science, Denison University
Murali  Sitaraman,   School of Computing, Clemson University
Is it possible to excite students about learning the mathematical principles that underly high-quality software? Can they use a development environment for "hands-on" experimentation with reasoning? Is this possible without displacing existing content? The answer is a resounding yes --from the experiences of professors at several institutions-- but it takes the right set of pedagogical principles, reasoning tools, and ``hands-on'' exercises. This laboratory will help educators transfer the excitement of learning how to apply mathematical reasoning in building high quality software, by adopting one reasoning concept at a time. Fees for this workshop will be covered for a limited number of attendees through an NSF award; limited travel support is also available.
CANCELED Workshop 3: Alice 3.1 Introductory Level room: Plaza 6
Wanda  Dann,   Carnegie Mellon University
Don  Slater,   Carnegie Mellon University
Steve  Cooper,   Stanford University
This workshop is designed to offer a hands-on introduction to Alice 3.1 (now out of beta), as used in introductory courses in late high school and early college levels. The focus of this workshop is on using program visualization for introducing fundamental concepts of programming. The introductory features of Alice 3.1 will be presented in an active- learning style. Although some comparisons between Alice 2.x and 3.1 will be included, the content of the workshop does not assume familiarity with Alice 2.x. Attendees are expected to bring their own standard (no netbooks or tablets, please) laptop with a mouse (2- button).
Workshop 4: Creative Computing: Introductory Programming Concepts with Processing.js room: Governors 9
Semmy  Purewal,   University of North Carolina at Asheville
Khan Academy recently announced that they will soon be teaching introductory Computer Science topics with the Processing.js language and an interactive, web-based code editor. At UNC Asheville, we have been using a similar pedagogical approach for over a year. Specifically, we have integrated Processing.js into our introductory course for non-majors by building an open-source, web-based editor which makes it easy for students to edit, save and share their Processing.js sketches. This workshop offers a hands-on introduction to Processing.js and our editor. Participants will also be given an overview of the programming module in Creative Computing, our recently re-imagined CS0 course. Curious individuals with a laptop, a modern web-browser and some basic programming experience are welcome.
Workshop 5: Computer Science Unplugged, Robotics, and Outreach Activities room: Governors 14
Tim  Bell,   University of Canterbury
Daniela  Marghitu,   Auburn University
Lynn  Lambert,   Christopher Newport University
Paul  Curzon,   Queen Mary University of London
You've been asked to talk to an elementary or high school class about Computer Science, but how can you ensure that the talk is engaging? Or perhaps youíre trying to introduce a concept from Computer Science to a school group, but you want a fun way to get the class engaged. This workshop is a hands-on introduction to Computer Science Unplugged (, a widely used set of kinesthetic, fun activities that cover many core areas of computer science without using high technology. We will explore how to use the activities in a variety of situations, including using them with robotics activities, school outreach, and computer clubs. Attendees will receive a CD with a copy of a handbook for teachers and a collection of videos demonstrating the activities.
Workshop 6: Making the Most of Undergraduate Research room: Plaza 7
Andrea  Danyluk,   Williams College
Nancy  Amato,   Texas A&M University
Ran  Libeskind-Hadas,   Harvey Mudd College
Susan  Rodger,   Duke University
Lori  Pollock,   University of Delaware
Involving undergraduates in CS research has many benefits. Itís an exciting way for students to gain independent problem solving skills. It exposes them to interesting projects and the research process, thereby keeping them in CS, even encouraging them to go to grad school. And especially in primarily teaching institutions, itís a rewarding way for faculty to remain engaged in their own research. In this workshop we will (1) present best practices for mentoring undergrad research, (2) equip participants with resources for mentoring their own students, and (3) further develop (1) and (2) through breakout sessions on concerns of interest to attendees. For more: This workshop is intended for all college-level CS educators. Laptop Optional.
Workshop 7: Reviewing NSF Proposals: Learn about Effective Proposal Writing via the Review Process room: Governors 10
Guy-Alain  Amoussou,   National Science Foundation
Reviewing NSF Proposals: Learn about Effective Proposal Writing via the Review Process Guy-Alain Amoussou, National Science Foundation ABSTRACT This interactive workshop focuses on the National Science Foundation grant proposal review process. Via close examination of the review process, participants gain an understanding of how to write good reviews and how to improve their own proposal writing. The workshop topics include: the proposal review process; elements of a good review; NSF merit criteria; elements of good proposals; how to volunteer to review. Faculty (novice and experienced) who wish to understand the NSF review process or seek funding in support of undergraduate education are encouraged to attend. No laptop required
Workshop 8: CSinParallel 1: Using Map-Reduce to Teach Parallel Programming Concepts Across the CS Curriculum room: Governors 11
Richard  Brown,   St. Olaf College
Elizabeth  Shoop,   Macalester College
Joel  Adams,   Calvin College
Map-reduce, the cornerstone computational framework for cloud computing applications, has star appeal to draw students to the study of parallelism. Participants will carry out hands-on exercises designed for students at CS1/intermediate/advanced levels that introduce data-intensive scalable computing concepts, using WebMapReduce (WMR), a simplified open-source interface to the widely used Hadoop map-reduce programming environment. WMR supports programming in a choice of languages (including Java, Python, C++, C#, Scheme). Workshop includes brief introduction to direct Hadoop programming. Workshop materials will reside on, along with WMR software. Intended audience: CS instructors. Laptop required (Windows, Mac, or Linux).
Workshop 9: Hands-on Cybersecurity Exercises and the RAVE Virtual Environment room: Governors 17
Richard  Weiss,   The Evergreen State College
Vincent  Nestler,   California State University, San Bernardino
Michael  Locasto,   Universit of Calgary
Jens  Mache,   Lewis & Clark College
Brian  Hay,   University of Alaska, Fairbanks
This workshop is intended for anyone who would like to use hands-on exercises in cyber security that can be used in a variety of classes including Networking, OS and general programming. Attendees will have the opportunity to choose exercises tailored to their level and interests including the Hacker Curriculum. The goal of this workshop is to provide faculty with varied backgrounds in this area with tools and interactive exercises that would facilitate their incorporating this knowledge area into their curriculum. They will receive accounts on the RAVE with exercises that they can take back and use immediately with their classes. Each user gets a number of VMs pre-configured for the exercises. RAVE is also a general purpose technology for other hands-on exercises. Laptop required.
Workshop 10: Re-imagining CS1/CS2 with Android Using the Sofia Framework room: Governors 16
Stephen H.  Edwards,   Virginia Tech
Android has seen increased use in introductory CS courses to motivate and excite students about their programming assignments, but using the standard Android libraries as a GUI platform in CS2 presents numerous challenges and using it in CS1 is nearly impossible. This workshop introduces participants to Sofia, the Simplified Open Framework for Innovative Android Applications. Sofia abstracts out many advanced concepts normally required to develop interesting applications, using a unique approach to event handling, binding GUI elements to Java code, and user interaction. The goal is to allow students to focus entirely on using Java programming skills to solve problems in the application domain, instead of writing monotonous glue code typically required to construct an Android application.
Workshop 11: SNAP! (Build Your Own Blocks) room: Governors 15
Brian  Harvey,   University of California, Berkeley
Daniel  Garcia,   University of California, Berkeley
Tiffany  Barnes,   North Carolina State University
Nathaniel  Titterton,   University of California, Berkeley
Dan  Armendariz,   University of California, Berkeley
Luke  Segars,   Google, Inc.
Eugene  Lemon,   Ralph J Bunche High School
Sean  Morris,   Albany High School
Josh  Paley,   Gunn High School
This workshop is for high school and college teachers of general-interest ("CS 0") CS courses. It presents the programming environment used in two of the five initial AP CS Principles pilot courses. SNAP! (Build Your Own Blocks) is a free, graphical, drag-and-drop extension to the Scratch programming language. Scratch, designed for 8-14 year olds, models programs as "scripts" without names, arguments, or return values. SNAP! adds support for older learners (14-20) by adding named procedures (thus recursion), procedures as data (thus higher order functions) structured lists, and sprites as first class objects with inheritance. Participants will learn SNAP! through discussion, programming exercises, and exploration. See for details. Laptop required.
Workshop 12: Incorporating Version Control into Programming Courses room: Governors 12
Tommy  MacWilliam,   Harvard University
This workshop, aimed at instructors of introductory or intermediate courses, introduces participants to version control via two popular source code management (SCM) tools: SVN and Git. Not only is proficiency with SCM tools an invaluable skill for aspiring software developers, but version control also allows students to collaborate effectively on projects. Participants will complete hands-on activities using distributed and centralized SCM tools, learn how to integrate version control into curricula, and discuss the pros and cons of various hosting solutions. Participants will also be introduced to version50, an open-source abstraction layer that provides a common, simplified interface for SCM tools aimed at making version control accessible to novice programmers. Laptop required.