Science and Engineering Area

Alabama Summer Computer Camps: Topics/Teachers

The Alabama Summer Computer Camps will introduce various topics of Computer Science from several motivating perspectives. Students will be encouraged to explore their own creativity in designing projects that illustrate fundamental concepts of computing applied to interesting contexts. In addition to the classroom instruction, participants will also hear special talks from numerous speakers, and visit local venues that illustrate the application of computing (e.g., a tour of the Mercedes plant that is near Tuscaloosa is planned during week 2 of the high school camp).

All students registering for the camps must commit to attending each day of the camp for the full day. It is not possible to miss portions of the camp and expect to be successful in mastering the concepts. The information that is taught will build upon each day's experience. Please only apply if you can commit for the full period of the requested week(s).

Middle School Camp Topic

Ages: Rising 7th-9th graders (commuters only)

dr-java

 

Middle School Week 1: July 9-13, 2012
Game Programming with Alice

Description: Alice is an interactive 3D-programming environment from Carnegie Mellon University. The goal of Alice is to offer the best possible first exposure to programming for students by providing a more intuitive environment for teaching object-oriented programming. During this week, students will learn common programming constructs, basic algorithm design, and storyboarding of movies/games. Projects throughout the week will involve the creation of video games and movies. A showcase event is held at the end of the week where family members are invited to attend.

Prerequisites: Only basic familiarity with a computer is required (e.g., using a mouse and using Windows Explorer).

High School Camp Topics

Ages: Rising 10th-12th graders (some 9th graders may be considered in special cases)

dr-java

java

High School Week 1: July 16-20, 2012
Introduction to Programming with Java

Description: This first week will introduce students to Java, which is an object-oriented programming language. This week provides the initial skills required for some of the other weeks. Students will learn to design and compile programs, learn the basic constructs of a programming language, and practice their new knowledge on fun projects (e.g., video game design). The exercises throughout the week will be focused on media computation (using an approach promoted by Georgia Tech), which will involve writing programs that modify pictures, movies, and audio. This week may be skipped by those students who already have significant programming experience in Java.

Prerequisites: Only basic familiarity with a computer is required (e.g., using a mouse and using Windows Explorer).

_________________________________________________________________________________

 

nxt

 

High School Week 2: July 23-27, 2012
Robotics Camp

Description: Students will build simple robots from the Lego NXT robotics kit and learn to program their robot using Java. Several small robotics projects will be assigned, such as Sumo Wrestler, Kick the Can, Balloon Buster, Self-Parking Car, and Homing Pigeon. Please note: The robots remain the property of the University of Alabama at the end of the camp.

Prerequisites: Students participating in this camp should have basic programming skills in Java, such as those covered in Week 1.

_________________________________________________________________________________

android

High School Week 3: July 30-August 3, 2012
Smartphone Programming in Android with App Inventor

Description: The final week of camp is focused on learning how to program a smartphone using Android. Students will first learn the App Inventor (initially created at Google, but now developed by the newly created MIT Center for Mobile Learning), and then move on to learning how to create Android apps in Java. Several Android phones will be available for students to use, in addition to the Android emulator. A series of projects will be explored to gain experience in using the GPS and Google Maps, as well as texting and other communication apps. Students are encouraged to be developers of their own new apps, rather than just smartphone users.

Prerequisites: Students participating in this camp should have basic programming skills in Java, such as those covered in Week 1.

 

Camp Instructors

The camps will be taught by a University of Alabama faculty member and two Ph.D. students (who have deep experience teaching Computer Science in high school). Undergraduate students will serve as paid facilitators. In addition to the primary instructor, there will be at least 3 facilitators in the room at all times to assist students with questions during interactive sessions. Below are biographies of the faculty and staff who will be leading the summer camps:

jeff

Dr. Jeff Gray is an Associate Professor in the Department of Computer Science at the University of Alabama. Since 2004, Jeff has taught over 35 weeks of summer camps to various age groups, including numerous camps for teachers. He has initiated various K-12 outreach events and competitions, and visits several dozen K-12 schools each year. He has mentored 27 high school students on summer and academic year internships; these students have received 18 awards at international, state and regional science fairs (e.g., three of the students that he mentored in 2010 were finalists at the international Intel Science and Engineering Fair (ISEF) in San Jose, CA). A goal of these summer camps is to encourage new students to pursue research at the high school level.

Jeff's research interests are in software engineering and programming languages. At UA, he is currently teaching a senior-level design course focused on smartphone apps. He also has several projects funded by the National Science Foundation (NSF), including a project that explores the use of smartphones to promote crowdsourcing in a form of "citizen science" to assist in capturing information about the Gulf Oil spill.
Dr. Gray is an NSF CAREER award winner (2006) and was previously named the Alabama Professor of the Year by the Carnegie Foundation (2008). In 2011, he led one of the 10 national pilots selected by the College Board and NSF for the new CS Principles course. More information about Jeff's work is available here.

amber

 

Amber Krug began her teaching career as an instructor for Computer Science courses at the Alabama School of Fine Arts (ASFA) in 2004 where she developed ASFA’s Computer Science program from the ground up. In 2005, she began teaching AP Computer Science A and AB at ASFA in addition to other levels of CS. Throughout the three years she taught at ASFA, her students competed in the annual UAB High School Programming Contest and continuously performed well, always having a student in the top five and winning first place the third year. After leaving ASFA in 2007, Amber became a Technology Trainer for Kennesaw State University instructing various levels of college students, faculty, and staff for the University. Additionally, Amber taught summer workshops at Kennesaw State University to help prepare high school students for AP Computer Science and workshops for middle school students to be introduced to various CS perspectives (movie editing, robotics, programming). Amber continued her outreach initiatives by teaching Java on Saturdays to students wanting to prepare for AP Computer Science, and then again in the Fall of 2008 by assisting UAB in teaching a form of programming in an after school program for Birmingham City Schools. Amber is currently a Ph.D. student in Computer Science at the University of Alabama. More information about Amber is available here.

jonathan

 

Jonathan Corley is a Ph.D. student in Computer Science at the University of Alabama. He has taught several undergraduate classes at UA and has also been involved with several outreach programs in Tuscaloosa (e.g., assisting with a weekly robotics class at a Tuscaloosa middle school). Jonathan is supported by a fellowship from the Department of Education (GAANN) and is working in the areas of software engineering and human-computer interfaces.