Technical Symposium on Computer Science Education

SIGSCE 2008
March 12-15, 2008 • Portland, Oregon, USA

Workshops

Friday   7:00 PM - 10:00 PM (room: Convention Center: As Assigned)


Workshop #13: Ruby on Rails room: A105
Barry  Burd,   Drew University
Ruby is an interpreted, reflective, purely object-oriented programming language. Unlike Java, the Ruby language has open classes, messages rather than method calls, closures, and "duck" typing. So Ruby broadens a student's understanding of the object-oriented paradigm. In addition, Ruby has an add-on named Rails. With Rails you can create a simple Web application (a Web interface to a database) in minutes. You can enhance the application with other add-ons—add-ons for searching, for authentication, and even for credit-card processing. Some real-world practitioners claim a five- to ten-fold productivity increase when they switch from Java to Ruby on Rails.

Laptop Required

Workshop #14: Using and Assessing Games and Robotics to Teach Introductory Computing Concepts room: A106
Jessica  Bayliss,   Rochester Institute of Technology
Rajendra  Raj,   Rochester Institute of Technology
Jamie  Cromack,   Microsoft
This workshop explores the role of video games and robotics in attracting students to computing majors and in teaching introductory computing concepts. The session uses dynamic examples from games and robotics that are used to teach important computing concepts to high school students and college freshmen. The strengths and weaknesses of these approaches for different age groups will be discussed, as well as effective and targeted assessment techniques that can be used to show that students are meeting traditional learning outcomes. Participants should wear comfortable clothing, as they will be taking part in various exercises. Workshop materials will be available online.

Laptop Recommended

Workshop #15: Teaching with the AP GridWorld Case Study room: A107-108
Frances P.  Trees,   Drew University
Laurie  White,   Mercer University
Donald  Allen,   Troy High School
Ann  Shen,   Bishop Strachan School
Case studies expose students to large programs, enabling them to understand the importance of design and good programming style while encouraging teamwork and active learning. The AP Computer Science curriculum has used case studies since 1995 and performance on case study exam questions shows a significantly smaller score difference between males and females than non-case study questions. Beginning this year, the AP CS curriculum includes the GridWorld Case Study. This workshop will introduce the participants to the GridWorld environment allowing them to explore GridWorld through a series of guided activities which demonstrate inheritance and class interaction.

Laptop Required

Workshop #16: Using Web 2.0 Technologies in your Computer Science Classes room: B110
Manuel A.  Perez-Quinones,   Virginia Tech
Manas  Tungare,   Virginia Tech
Edward A.  Fox,   Virginia Tech
This workshop shows how to use social networking sites in the classroom. We discuss how to use Facebook.com, del.icio.us, SlideShare.net, CiteULike.org, YouTube.com, and Yahoo Pipes. We also show how to use APIs and feeds to build mashups. Upon completion, participants will know how to: use SlideShare to support discussion on a per-slide basis; have students share resources (peer to peer) in del.icio.us; share and discover references via CiteULike; keep a blog for the course; publish homeworks and assignments in an online calendar; and share syllabi with our NSDL syllabus collection. We will also demonstrate our mashup-based approach to CS1.

Laptop Required

Workshop #17: Combining Discrete Mathematics and Python Programming room: B111
Maria  Litvin,   Phillips Academy, Andover
Both mathematics and programming teach "precision thinking" — a particular way of solving problems. This workshop presents an approach to introductory computer science and discrete math courses based on blending mathematics and programming. The workshop also teaches some introductory programming in Python. We will discuss how mathematical topics such as number systems, summation, Boolean algebra and digital circuits, counting, recursion, probabilities, graph theory, and other topics relate to computing, and learn how to write simple Python programs that are based on and illustrate these concepts. No prior experience with Python is required.

Laptop Required

Workshop #18: Rubrics - Start to Finish room: B112
James  Vallino,   Rochester Institute of Technology
Rubrics help instructors and students focus attention on important aspects of an assignment. In this workshop, you will learn how to create rubrics tailored to your specific assignments. You will learn the elements that make a rubric, methods to design rubrics with and without student involvement, and how to apply them within your courses. In the first part of the workshop, the instructor will guide the collaborative creation of a rubric from start to finish. In the second part of the workshop, you will create a rubric based on information you bring for one of your own assignments.

Laptop Optional

Workshop #19: Computer Science Unplugged room: B113-114
Lynn  Lambert,   Christopher Newport University
Tim  Bell,   University of Canterbury
Tom  Cortina,   Carnegie Mellon University
Peter  Henderson,   Butler University
Michael  Fellows,   The University of Newcastle
This workshop introduces participants to Computer Science Unplugged (www.csunplugged.org), a set of kinesthetic, fun activities that cover many core areas of computer science without the use of technology. Recommended in ACM’s A Model Curriculum for K-12 Computer Science, activities in the book include error detection and correction, searching, networks and routing, modularization, and how binary numbers represent characters, FAXes, and images. The workshop will be “learning by doing”, with participants seeing and practicing activities both from the book, and new ones not in the book. Participants will also receive the book and other material.

Laptop Optional

Workshop #20: Learning to Program With Alice room: B116
Stephen  Cooper,   National Science Foundation
Wanda  Dann,   Ithaca College
This introductory workshop, designed for instructors with minimal to no prior experience with Alice, offers hands-on experience programming with Alice. Alice is a powerful program visualization tool enabling students to “see” objects and work with object-oriented programming. Participants will learn how to use Alice to build virtual worlds and how to use this approach in introductory-level computing courses (introductory programming for majors, programming for non-majors, computer literacy, pre-AP CS, etc.) at the college or high-school level. Participants will receive a CD containing the latest version of the software and sample virtual worlds developed as part of NSF-0126833/NSF-0339734.

Laptop Required

Workshop #21: Teaching Fundamental Database Concepts Including Database Security Using Animation Software room: B117-118
Mario  Guimaraes,   Kennesaw State University
Murray  Meg,   Kennesaw State University
This workshop will demonstrate how Animated Database Courseware (ADbC) might be incorporated into a database course. Prototypes of the courseware have been developed and are freely available at the website: http://coffee.kennesaw.edu. The ADbC has been designed to be fairly intuitive to use. It is designed to supplement currently available database course materials but is not tailored to any specific product or textbook. Participants will receive a manuscript that describes different ways to incorporate the software into a classroom environment. Modules to be covered in the workshop include database design, SQL, transactions and security.

Laptop Recommended

Workshop #22 (CANCELED): Using Scrum, an Empirical Control Process, to Manage Student Projects room: A109
Dean  Sanders,   Northwest Missouri State University
Scrum is a management and control process that focuses on building software. It is frequently wrapped around Agile methods, particularly XP. Scrum enforces individual responsibility, forces team members to set and achieve short term goals, gives the team a sense of ownership, and helps them be more productive. For three years, the author has used Scrum to manage student projects. This workshop includes a practical description of Scrum, and a minimal subset suitable for smaller projects. Participants will work on a small project to experience Scrum from the team’s perspective. We will end with a discussion about managing student projects.

Laptop Optional

Workshop #23: Using Tablet PCs for Active Learning in the CS Classroom room: Room C121-122
William  Birmingham,   Grove City College
Richard  Anderson,   The University of Washington, Seattle
Vincent  DiStasi,   Grove City College
Active learning is effective for increasing student engagement during lectures and improving student performance. The Tablet PC is an ideal platform to support active learning as the stylus allows flexible expression that is essential to many CS topics. Sophisticated, easy-to-use, software facilitates active learning by exploiting the strengths of the Tablet PC. This workshop covers proven active learning pedagogy that is applicable across the CS curriculum and participants will be engaged in exercises during the workshop ranging from programming to algorithms. The presenters encourage participants to submit, via email, exercise ideas they feel will benefit the workshop.

Laptop or Tablet PC Optional (Tablet PCs will be available for participant use during the workshop)

Workshop #24: Using Magic to Teach Computer Science room: Room C123
Tom  Way,   Villanova University
Grabbing and holding the attention of computer science students, or any students, is of fundamental importance to getting the message across. In this workshop, you will learn hands-on how to use easily performed magic tricks to demonstrate fundamental, important or difficult computer science concepts in a way that connects with students, breaks through apprehension about difficult topics and generates enthusiasm for the subject. We briefly will explore the case for employing magic (sparingly) as a pedagogical device, focusing mostly on learning a number of ready-to-use magical effects using common items and understanding how to learn more. All materials will be provided.

Laptop Optional

Workshop #25: Teaching and Testing the Middle Novice Programmer room: Room B115
Raymond  Lister,   University of Technology, Sydney
There are students who have a natural gift for programming, and students with no gift all. Between these extremes are students who manifest a concrete grasp of basic programming language constructs (by for example hand executing code) but who cannot reason about code at a higher goal/plan level, and therefore struggle to write code of their own. The CS1/CS2 teacher needs teaching techniques to help the middle students to learn to reason abstractly about code, and the teacher needs examination methods to establish that students can reason abstractly about code. This workshop will demonstrate methods for achieving these two goals.

Laptop Optional

Workshop #26: Strategic Planning for Recruiting Undergraduate Women: An NCWIT Extension Services Workshop room: Room C124
Lecia  Barker,   University of Colorado
Joanne McGrath  Cohoon,   University of Virginia
While overall enrollment in undergraduate computing continues low, female enrollment is declining faster than males’. The proportion of CS BS degrees awarded to women is at an all-time low (14% according to the 2005-6 Taulbee Survey). In this workshop, participants will develop a comprehensive strategy for increasing the pipeline of high-achieving females into their undergraduate programs using a “low-hanging fruit” approach, identifying the largest majors with the highest SAT mathematics scores. Components include identifying and developing target audiences and influencers, leveraging internal and external assets, contact strategies, use of persuasive messages and images, and an ongoing evaluation and tracking plan.

Laptop Optional