For Attendees

Site Search

Search with Bing

SIGCSE 2010 Supporter Sessions

Building connections to foster innovation in STEM education by leveraging Google's tools, technologies, infrastructure and deep knowledge of computing.

SIGSCE Technical Symposium 2010, Google is Making Contact! Our goal is to showcase our work in education, build relationships with the CS education community, and obtain feedback to understand how we can better meet the challenges that are affecting STEM education today.

Google Education: Introduction and Project Exhibitions

Thursday, March 11, 2010: 3:45 to 5:00pm

"Access for All: Google's Initiatives in Education"
Maggie Johnson, Director of Education and University Relations

Maggie Johnson is Director of Education and University Relations for Google.. She manages all technical training and leadership development programs for Google engineers and operations staff, as well as Google's educational outreach efforts. She also manages the university relations area, building strategic partnerships with faculty and labs globally. Prior to Google, Maggie was a faculty member and Director of Undergraduate Studies in the Department of Computer Science at Stanford University.

"Looking Deeper Into Computational Thinking"
Nina Kim, Education Engineering Manager

Nina Kim is an Engineering Manager at Google. She leads Google's education projects, and is interested in K->continuing ed teaching and learning, especially ways to broaden the field of STEM and CS and increase the creation and creative use of technology. Nina has been a part of Google Engineering since 2000, wearing various hats in product development and community outreach

"App Inventor - A view into learning about computers through building mobile applications"
Hal Abelson - Visiting Scientist / Mark Friedman - Sr. Software Imagineer

Hal Abelson is a Professor of Electrical Engineering and Computer Science at MIT. He won the 1995 Taylor L. Booth Education Award given by IEEE Computer Society for continued contributions to the pedagogy and teaching of introductory computer science, exemplified by the Logo and Scheme languages and their associated methodologies. Hal is currently a visiting faculty member at Google, and is one of the founders of App Inventor for Android.

Mark Friedman is a Senior Software Engineer at Google. He previously worked on the core Android team and has a longstanding interest in programming language environments and implementations. Mark is currently the technical lead of the App Inventor for Android team.

Google Education: Research, Faculty, Tools and Panel

Friday, March 12, 2010: 3:30 to 4:45pm

"Google's Visiting Faculty Program & Research Awards"
Maggie Johnson, Director of Education and University Relations

Maggie Johnson is Director of Education and University Relations for Google... She manages all technical training and leadership development programs for Google engineers and operations staff, as well as Google's educational outreach efforts. She also manages the university relations area, building strategic partnerships with faculty and labs globally. Prior to Google, Maggie was a faculty member and Director of Undergraduate Studies in the Department of Computer Science at Stanford University.

"Keeping it 'Open': Google Summer of Code and Highly Open Participation Contest"
Leslie Hawthorn, Open Source Program Manager

Leslie Hawthorn held various roles at Google before joining the Open Source Programs Office in March 2006. She manages the Google Summer of Code program and it's sister program for high school students, the Google Highly Open Participation Contest. Leslie has also organized and facilitated more than 100 open source community conferences and hackathons. Her loves beyond open source include fine chocolate, a good cup of coffee and her cats Ripley and Scarlett.

"Google Developer Tools for the Classroom"
The Developer Relations Team

Developer Relations is a global team at Google that consists of engineers who support engineers. They also support millions of developers in the worldwide developer community, making them successful when they choose to use Google's developer products.

"Sharing Information: CS4HS & Google Code University"
Mary Radomile - Engineering Education Program Manager

Mary has been at Google for almost 5 years and held various roles in Recruiting, Human Resources, and now has settled home with the Education Team. Mary currently manages several K-12 and University programs promoting STEM education including CS4HS and Google Code University. She is passionate about working with both students and educators to increase access and interest in Computer Science education. In her spare time, Mary loves to cook, hike, and spoil her black lab, Bella.

Google Panel Discussion
Moderator: Susie DePianto- Education Sr. Program Manager
All Google Presenters (Maggie Johnson, Nina Kim, Hal Abelson, Mark Friedman, Mary Radomile, Leslie Hawthorn, and The Developer Team)

This panel will be an opportunity for SIGCSE attendees to ask questions before and during the conference for the Google Panel to address through Google Moderator. The Google panel will consist of all the presenters from both days of the conference. This is also a forum for feedback on how Google can better support the spectrum of interest in computing and ensuring computing is visible and accessible to everyone. Please ensure that you enter your questions/feedback to Google Moderator (url below) and/or vote on the questions being entered.

Leave feedback on Google's sessions.


IBM Supporter Session on two related topics: Lessons from teaching teamwork with Rational Team Concert, and Software for a Cause - Student Projects for Organizations in Need

Thursday, March 11, 2010: 1:45pm to 3:00PM

Part 1: Lessons From Teaching Teamwork with Rational Team Concert
Jean-Michel Lemieux, Senior Technical Staff Member, IBM
Tim Klinger, IBM Research

There is value in working with others and for most of us it's part of our daily work life. In IBM we found that several of the students we were hiring hadn't been exposed to development in a team environment and were not familiar with the tools and practices that accompany team based development. This talk reviews our work while using Rational Team Concert in the classroom to facilitate team learning, what behavior we wanted to emphasize, and what worked and what didn't. In addition, I'll talk about how we use Rational Team Concert to help new developers on our team learn the "craft" of software development by closer collaboration and coaching within the tool.

Part 2: Software for a Cause - A Discussion About Student Projects for Organizations in Need
Li-Te Cheng
IBM Research

Humanitarian Free and Open Source Software. Socially Relevant Computing. Socially Responsible Computing. Computing for Good. SIGCSE is a leading forum for these and other efforts, where educators engage students with projects that cross disciplines and borders, and provide a positive impact on society. 'Software for a Cause' is a joint university /IBM Research project currently under development that follows this direction - with an interest in exploring distributed community service student projects.

This session will be an interactive discussion seeking your guidance, thoughts, and experiences in this domain. We will briefly present concepts from 'Software for a Cause' and related efforts in IBM for your feedback, leading to an open dialog around broader themes. What makes a suitable distributed student project "for a cause"? How to connect student teams with organizations in need? What are challenges faced by students and instructors around tools, practices, and collaboration? How can we help your own efforts in the classroom? Attend this session and join in to help the cause.


Gaming Architecture: Why Parallelism is Important

Thursday, March 11, 2010: 1:45pm to 3:00pm

Task and domain decompositions are two basic and powerful approaches of exploiting parallelism in a given problem. An effective decomposition requires careful partitioning of tasks and data, and a balanced mapping of these partitions across the available cores in a system. This panel will demonstrate how the use of appropriate game architecture enables easier decomposition and allows for a more effective application of threading in the creation of games. In addition, we will discuss the impact of threading, explore how gaming architecture can be used in variety of undergrad/grad courses, and how educators can prepare students for parallel-aware software engineering.

Intel® Atom™ Processors in Academia

Friday, March 12, 2010 1:30 PM to 2:45 PM

This class will outline the next generation of Intel® Atom™ processors available from Intel's Embedded and Communications Group. These low power processors are finding increasing use in academic programs, not only as part of the curriculum, but also as a development platform for both undergraduate and post-graduate hardware and software projects.

This class will showcase a starter kit for the Intel Atom processor that is both a long life and low cost development solution Find out more about how to get started with a ready to use board, software tools, operating system support, and an ever growing ecosystem of add-ons.

Presented by Stewart Christie
Product Marketing Engineer
Intel Embedded Communications

Teaching Compilers

Thursday, March 11, 2010 10:45 AM to 12:00 PM

Alfred V. Aho
Department of Computer Science Columbia University

The compilers design course offers a wonderful opportunity for students to appreciate the interplay of theory and practice, to exercise their creativity, and to learn robust software development practices. I will describe how the compilers course at Columbia has evolved from a theoretical course to a design studio in which students work in small teams to create and implement innovative little languages of their own design. The talk will be illustrated with a number of the novel languages created in this course and one of the languages is showcased in the exhibit area.

Getting Started with F#

Friday, March 12, 2010 10:30am to 11:45am

Timothy Ng
Microsoft Corporation

Timothy Ng is the engineering lead for the F# team within the Visual Studio Languages group. He joined Microsoft in 2003, and has been working on the Languages team since 2005. More recently he is the engineering lead helping to release the first version of F# integrated into Visual Studio 2010.

F# is a succinct and expressive typed functional programming language for the .NET platform, and Microsoft will be supporting F# as a first class language in Visual Studio 2010. In this tutorial you'll get a taste or F# programming from the basics through to some parallel and asynchronous programming with F#. You'll learn how to get started with the functional, imperative and object-oriented programming in F#. You'll also get a taste for some parallel and asynchronous programming.

Evolution of the Windows Kernel Architecture - Win7 and Beyond

Friday, March 12, 2010 1:30 PM to 2:45 PM
Dave Probert, Kernel Architect - Windows Core Operating Systems Division, Microsoft Corporation

The core architecture of the Windows kernel differs significantly from UNIX, though many of the functions are necessarily similar. This talk will cover the Windows kernel architecture, focusing on areas of difference from UNIX. Then some specific recent kernel changes will be described: integrity levels, removal of the hottest kernel locks, and the move towards user-mode scheduling to support the ConcRT task-based concurrency run-time. Finally, the talk will look at some of the OS challenges ahead due to the silicon power-wall and the resulting heterogeneous multi-core/many-core systems that will dominate the PC landscape within a few years.

The Multi-core Landscape: New Technologies and Tools from Microsoft

Saturday, March 13, 2010 10:40 AM - 11:55 AM

Joe Hummel, PhD
Lake Forest College

As performance improvements rely increasingly on parallel programming, both the research and professional communities are racing to catch-up. This talk will survey what various teams at Microsoft are bringing to the table --- new technologies shipping as part of .NET 4.0 and Visual Studio 2010, along with emerging ideas still incubating at MSR. In particular, we'll discuss the mental shift from threads to tasks, the Task Parallel Library for .NET, the Parallel Pattern Library for Visual C++, Parallel LINQ, Coordination Data Structures, and tool support in Visual Studio 2010. If time permits, we'll also discuss STM, CHESS, and other projects.