Workshops, Wednesday Feb. 23, 2005

Wednesday  7:00 PM - 10:00 PM

1 Microsoft .NET Programming: Building Applications with C#, J#, C++ and VB .NET Room: Landmark 1
THIS WORKSHOP IS NOW FULL!!!! Joe Hummel, Lake Forest College

Microsoft .NET is an exciting new framework for programming not only on Windows platforms, but Linux and FreeBSD as well. This workshop will introduce attendees to .NET programming, in particular with regards to building console-based, GUI, and database-driven applications. Both command-line tools (free) and Visual Studio .NET will be demonstrated. The purpose of this workshop is to introduce .NET, allowing attendees to evaluate its use in a CS or IS curriculum. PowerPoint presentations will be example-based, and suitable for introducing .NET to students; attendees will have access to electronic copies of all materials used in the workshop.

2 Taking the Hard Edge off Technical Education: Strategies for Integrating Soft Skills in the CS Classroom Room: Landmark 2
   Elizabeth Howard, Miami University
Martha Petrone, Miami University

In reports from employers, computer science graduates receive stellar marks for their technical knowledge. At the same time, employers express concern about underlying abilities, such as listening, interpersonal effectiveness, intercultural sensitivity, and teamwork in their entry level employees. In this workshop, participants will learn specific pedagogical strategies to help students develop these fundamental soft skills that will better prepare them for success in the computer science field. Using a model for increasing intercultural awareness and a series of activities, participants will experience for themselves the exercises that they can use in their own classrooms.

3 From Nand to Tetris in 12 Steps Room: Landmark 3
   Shimon Schocken, IDC Herzliya
Nisan Noam, Hebrew University of Jerusalem

As CS and EE courses become increasingly more specialized, students are increasingly unable to grasp major ideas that cut across traditional course lines. This workshop presents an approach that restores the big picture by covering architecture, compilers, and OS topics in one course, requiring only programming as a pre-requisite. Using a modular series of 12 projects, students are guided through the gradual construction of a complete working computer system. Starting with elementary logic gates, they build a general-purpose hardware platform and a modern software hierarchy, yielding a simple but surprisingly powerful computer system. This is achieved in a one-semester course by virtue of extreme focus and modular design. The course is completely self-contained, requiring no special equipment or software beyond what is given in the course web site, and is accompanied by a new MIT Press textbook. For more details see www.idc.ac.il/tecs

4 More Nifty Examples in Discrete Mathematics Room: Portland
   William Marion, Valparaiso University
Peter Henderson, Butler University
Susanna Epp, DePaul University

Good examples are powerful tools for enhancing student understanding of the important onnections between topics in discrete mathematics and fundamental ideas in computer cience.  This follow up to the SIGCSE 2004 “Nifty Examples in Discrete athematics” workshop will illustrate examples for use in the classroom r as assignments covering a broad spectrum of discrete mathematics topics.  These nclude: analyzing and building a geodesic dome, mathematics of the Josephus roblem, penny pile problems, reverse binary tree traversal, keys and locks, two color argument, and many more.  Some of these were developed by participants n the NSF-funded summer 2004 workshop on discrete mathematics under the auspices f the MAA’s Professional Enhancement Program. Participants will work in roups on additional examples. All materials presented will be posted on a workshop eb page and will feed into the work of the SIGCSE Committee on the Implementation f a Discrete Mathematics Course.

5 Incorporating User-Centered Design Methods in a Human-Computer Interaction Course Room: Westmoreland
   Jerry Weinberg, Southern Illinois University Edwardsville
Mary Stephen, Saint Louis University
Charlotte Schwendeman, Perficient, Inc.
Joe Haschart, Edward Jones

Creating usable software means taking into consideration who is using the system, what they are using it for, and how it fits within their overall workflow. It is important to educate students in the techniques of user requirements gathering, analysis and design that embrace human activity as an integral component of the process. This workshop will introduce User-Centered Design (UCD) techniques and present course material for teaching these methods in an HCI class. Industry leaders from St. Louis-based companies will discuss how UCD methods are used in their business practices and the skill sets they look for when hiring.

6 How to Run a Programming Contest Room: Benton
   Lee Wittenberg, Kean University

Programming contests, most notably the ACM’s International Collegiate Programming Contest, have become quite popular. Unfortunately, there is very little help available for those who wish to run such a contest, and there are many technical obstacles to overcome. Participants will learn how to overcome these obstacles and run a successful programming contest: setting up a server, configuring clients, and using the popular PC∧2 software package to manage program submission and evaluation during the contest. Particular attention will be paid to the tools and steps necessary to create bootable CD-ROM’s providing a common working environment for contestants.

7 Intellectual Property Law Basics for Computer Science Instructors Room: Parkview
   David G. Kay, University of California, Irvine

An introduction to the basics of intellectual property law (patents, copyrights, trade secrets, trademarks) designed to give computer science instructors a framework for answering student questions, debunking misconceptions, and understanding how the law and computing interact.

8 Constructing QuickTime Movies Programmatically Room: SLU Shannon Hall
   Jay Martin Anderson, Franklin and Marshall College

I will present the “model – view – controller” paradigm for the construction of animations as QuickTime movies, and apply this to some simple examples using Objective-C. The major exercise will be to construct an animation of a simple algorithm or other visualization. The workshop will be illustrated with examples from computer science, computational mathematics, and computational geometry. (HANDS-ON, OFF-SITE)

9 Teaching Introductory Computer Science with JPie Room: SLU McDonnell Douglas Hall 1003
   Kenneth Goldman, Washington University in St. Louis

JPie is a tightly integrated visual programming environment that supports live construction and modification of Java applications through direct manipulation of graphical representations of program constructs. JPie enables a concepts-first introduction to computer science by simplifying the programming process and supporting experimentation through modification of running programs. This hands-on workshop will provide experience using JPie in the context of a variety of course projects that have been used in a concepts-first curriculum to introduce object-oriented design and fundamental software concepts to college students without computer science background. Additional information about JPie is available at http://JPie.cse.wustl.edu. (HANDS-ON, OFF-SITE)

10 Quick Web Application Development using JavaServer Pages and the JSP Standard Tag Library Room: SLU McDonnell Douglas Hall 1066
   Ariel Ortiz, Tecnologico de Monterrey, Campus Estado de Mexico

The JavaServer Pages (JSP) technology allows mixing regular, static HTML with dynamically generated content. The new version 2.0 of JSP allows developers and designers to use this technology without needing to learn how to write Java scriptlets. In this workshop, participants will be introduced to the core elements of JSP 2.0, including its new expression language and the JavaServer Pages Standard Tag Library 1.1 (JSTL). Using the Model-View-Controller design pattern, a modular and extensible simple on-line Web game application will be designed, implemented and deployed. Attendees should be familiar with HTML; prior basic Java knowledge is desirable. (HANDS-ON, OFF-SITE)

11 Introducing Embedded Systems in the Digital Logic Laboratory Room: SLU McDonnell Douglas Hall 2030
   Robert Pilgrim, Murray State University

In this hands-on workshop participants learn to integrate microcontrollers into an undergraduate digital logic and computer architecture course. The workshop introduces a laboratory that combines theory, simulation and real hardware using low cost microcontrollers. Through a series of experiments participants begin using preprogrammed microcontrollers to design and test digital logic circuits and then write their own microcontroller programs for embedded systems applications. All laboratory hardware, software and documentation is provided. No previous electronics experience is required. Participants should have knowledge of a high-level programming language. (HANDS-ON, OFF-SITE)

12 Experimenting with Formal Languages Room: SLU McDonnell Douglas Hall 2001
   Allen Stoughton, Kansas State University

Many of the results of formal language theory are proved using algorithms. In typical courses on the subject, students apply these algorithms to toy examples by hand, but aren’t able to experiment with them on a larger scale. To enable such experimentation, the presenter has developed the Forlan computer toolset, and is writing an introductory textbook based on Forlan. Both the toolset and textbook are open source and are available at www.cis.ksu.edu/~allen/forlan/ Participants will learn how to use Forlan in their teaching. We will focus on ways of synthesizing automata using algorithms for combining and transforming automata and regular expressions. (HANDS-ON, OFF-SITE)