Welcome: Dale Reed, UIC
Orientation: passwords, who will be where
Introductions: Scratch: Ljubomir Perkovic (DePaul), Thomas McLeish (IIT)
Assistants: Johnathan Hawthorne, Igor Dominique
Alice: Jeff Solin
Assistants: Haley O'Leary, Alexa Chavez
Don Yanek: Chicago Computer Science Teachers' Association (CSTA)
Ron Greenberg: Illinois Computes
CSunplugged example. See also MathManiacs.org
See Java program for the memory game here
Jeff Solin (Northside College Prep)
Create 3-D animations using a drag-and-drop interface.
Attendees will receive the book "Exploring Wonderland: Java Programming Using Alice and Media Computation."
In a course based off of the curriculum showcased in this workshop, students are introduced to the programming language Java through an innovative and exciting 3D animation environment called Alice. Alice was designed and gifted to the Computer Science community by a team led by Randy Pauch, author and presenter of The Last Lecture. Concepts of Computer Science and programming are taught including algorithmic design and object oriented programming. Programming skills and conceptual understanding are developed through a problem solving approach. Students create 3-D animations, games, and manipulate images, audio files, and other media forms through programming. The course based off of this curriculum is designed for first-time programmers and as an introduction to computer programming.
See the curriculum details.
Tutorial by Ljubomir Perkovic, DePaul
Demonstrations by Dale Fahnstrom, Thomas McLeish, Thomas McCue, Prygrocki (IIT Institute of Design & the Thinkering Project)
Experiment with 2-D animation connected to pico-Crickets.
Attendees will receive the book: "Scratch Programming for Teens."
Download Scratch here. See the MIT tutorial (pdf, 14 pages) and also the reference guide (pdf, 23 pages)
If interested in the pico-crickets, see this web site.
Thanks to Jessie "Chuy" Chavez for hosting our visit to Google Chicago! Here are the links from Jessie's presentation:
App Inventor:
http://sites.google.com/site/appinventorhelp/
http://googleresearch.blogspot.com/2009/07/app-inventor-for-android.html
Google Code University
CS4HS
Diversity/Scholarships (high school and university)
http://www.google.com/corporate/diversity/outreach.html
http://www.google.com/jobs/students/us/scholarships/
Apps for Education:
http://www.google.com/a/help/intl/en/edu/k12.html
Google for Educators:
http://www.google.com/educators/index.html
Faculty Research:
http://research.google.com/university/relations/research_awards.html
CloudCourse:
http://google-opensource.blogspot.com/2010/05/cloudcourse-enterprise-application-in.html
(Part 2) Fun computer-related activities don't necessarily require a computer. Detailed examples given at CSUnplugged.org. See also MathManiacs.org
Retrieve the "Ice-cream Town" graph handout (dominating set activity) and PowerPoint
Programming Tools for Java: NetBeans GUI creator
Don Yanek, Northside College Prep
Python for the rest of us
Earl Strassberger: Senn High School
See his presentation slides.
Tanya Berger-Wolf, UIC
Download her presentation slides (ppx)
Ljubomir Perkovic, DePaul
See the presentation (PowerPoint)
(Part 3) Fun computer-related activities don't necessarily require a computer. Detailed examples given at CSUnplugged.org. See also MathManiacs.org
See the table for the age-guessing game. This can alternatively be done with cards (small and large versions in MS Word), where the color on the back (light to dark) indicates the place in binary used in a number guessing game.
Session Chair: Dale Reed
What are the issues facing high school students as they pursue degrees leading to CS careers? This session will discuss eliminating roadblocks and pitfalls, drawing upon the perspectives of all of us.
Community Colleges: Harold Ogg (Oakton Community College)
Universities: Ron Greenberg (Loyola), Matt Bauer (IIT), Ljubomir Perkovic (DePaul), Dale Reed (UIC)
1. Very brief introduction to the various schools: Who goes there, and why.
2. From your perspective, what are the 2-3 main reasons students choose CS as a major in college? What are the 2-3 reasons they don't choose CS in college?
3. What can we do about it?
From this session discussion, the main reasons students choose to go into CS are:
There are many job opportunities available
CS gives them power to make their own tools and create solutions to their own problems [make own technology]
There are a multitude of career options [very diverse]
Excellent starting salary
Positive prior experience with CS
The main reasons they may not choose CS are:
CS is misunderstanding of what CS is about and its role
There is a perception that there are no jobs, that they've been outsourced
CS is viewed as too specialized
They've had a bad prior experience
CS is seen as too hard
There is a lack of access to computing experiences in K-12
CS is not recognized as a ‘real’ science
Jason Leigh and Andy Johnson (UIC)
Cutting-edge research in 3-D, data visualization, and high-speed networking. Experience technologies that are still several years away from being commercially available.
See the EVL Lab web site, and YouTube channel.
Python programming with Scribbler Robot
Baker Franke, Chicago Lab School
Learning to program has never been more fun! The Scribbler Robot is a cheap, simple, rover-type robot that receives instructions written in Python over a wireless bluetooth connection. The Scribbler allows first-time programmers to literally see their programs come to life, and most students are immediately eager to learn how to do more. The session will primarily involve demonstrations of the robot, python, and sample class activities and projects. We will also discuss practical and pedagogical benefits and pitfalls of using robots and Python as a first-time programming experience.
Nand-to-Tetris
Jeff Solin: Northside College Prep
This curriculum is designed for students who have successfully completed Java and Media Computation (or comparable introductory programming course), and have a desire to explore how a computer is able to "think". Many students are missing the forest for the trees, and this curriculum aims to restore the big picture. By gradually constructing and unit-testing a complete hardware platform and a modern software hierarchy from the ground up, students discover how computer systems work, and how they are built. Students apply some of the most important algorithms, data structures, and techniques learned in college-level CS courses. This mini-tutorial will give you an overview of this curriculum which implements "hands-on" construction of a modern, full-scale computer system (hardware and software) from first principles. All of the components are constructed virtually in a simulator, all software and curriculum outlines are FREE, and the book comparatively very cheap.
See the YouTube intro video.
Tom Moher, UIC
Jakob Eriksson, UIC
Media Computation: Manipulating Sound and Pictures
Baker Franke, Chicago Lab School
Context matters! In this tutorial we'll learn how easy and fun it is use media like sound and images in an intro or AP programming class. Used to be it was always a hassle to get multimedia into a rigorous programming class because it required a lot of off-topic issues and minutia and without producing very satisfying results either. No more! You don't have to jump through hoops to make it work, you don't have to sacrifice the rigor of your course, and you don't have to use a "toy" programming language - we'll be using Java or Python depending on attendee preference.
Free Software: PortableApps, GIMP, Kompozer, Open Office, Ubuntu, Polleverywhere, Google Labs Public Data Explorer, Android App Inventor
Dale Reed, UIC
There are many free resources that are very useful for use as educators. We'll be going through a whirlwind tour of useful applications and sites for Programming in Java and C++, looking at the PortableApps applications on your flash drives, as well as discussing other useful tools. See the page with details and web links.
Overview of strategies/best assignments/curriculum submitted by each participant.
Please take 5-7 minutes to fill out the online evaluation form.