Science and Engineering Area

Alabama Computer Science Summer Camp: 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 on our campus (e.g., visits to our Robotics and 3D Printing labs).

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).

Students will bring their own laptops to use throughout the week. PC or Mac is appropriate. Please make sure to also bring a charger. We will have power outlets available at each seat. Laptops should have a wifi adapter. If possible, an ethernet port would be helpful (just in case we have any wifi issues), but not required). For middle school camp, an ability to connect to a micro-USB device is needed.

Middle School Camp Topics

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


Middle School Week: June 18-21, 2018

Introduction to Computer Science - Blocks and Python Programming

Description: Students will learn topics of computer science by programming a micro-device (which they get to keep) in both a blocks language, and also Python. Students will be able to showcase their individual projects to their families on the last day of camp. Computer science topics, beyond just programming, will also be covered throughout the week.

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 (commuter and dorm students)





High School Week: June 25-28, 2018

Introduction to Programming with Java

Description: This camp will introduce students to Java, which is an object-oriented programming language. 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, creating a virtual piano player, and writing programs to transform images and sounds).

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


Camp Instructors

The camp will be taught by a University of Alabama faculty member (Dr. Jeff Gray). Assisting Dr. Gray will be four Ph.D. students and six undegraduate students. In addition to the primary instructor, there will be at least four facilitators in the room at all times to assist students with questions during interactive sessions, and the dormitories will also have at least three residential assistants.


Dr. Jeff Gray is a Full Professor in the Department of Computer Science at the University of Alabama. Since 2004, Jeff has taught over 50 weeks of summer camps to various age groups, including numerous training workshops for teachers. He has initiated various K-12 outreach events and competitions, and visits several dozen K-12 schools each year. He has mentored over 40 high school students on summer and academic year internships; these students have received numerois awards at international, state and regional science fairs (e.g., six of the students that he mentored were finalists at the international Intel Science and Engineering Fair (ISEF) - some of those students were previous campers!).

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) and often employees undergraduates in those projects.
Dr. Gray is an NSF CAREER award winner (2006) and was previously named the Alabama Professor of the Year by the Carnegie Foundation (2008). Since 2011, he has been a Pilot Instructor for the College Board for the CS Principles course. Jeff was also an Editor for the College Board Teaching Modules for CS Principles and serves as an AP Summer Institute instructor for the College Board. His NSF grant is currnetly training 50 high school teachers in Alabama on CS Principles. He was a founding member of the Education Advisory Council of and still serves as one of the K5 Affiliate Instructors. He is an ACM Distinguished Educator and the Birmingham Engineering Council Educator of the Year. He is the co-Chair of Governor Kay Ivey's Computer Science Advisory Council. More information about Jeff's work is available here.


Previous Assistants



Dr. Huseyin Ergin is a faculty member at Ball State University (Ph.D., University of Alabama, 2017). He taught several undergraduate classes at UA and has was involved with several outreach programs in Tuscaloosa (e.g., assisting with a weekly robotics class at a Tuscaloosa middle school). Dr. Ergin is interested in computer science education and model-driven engineering.



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



Dr. Brian Eddy is a faculty member at the University of West Florida (Ph.D., University of Alabama, 2015). His research interests include program comprehension, software and maintenance, and computer science education. His main areas of research include improving the state of the art in maintenance and debugging tools for large scale software systems. Brian has a passion for teaching. He was worked with a wide range of students in the areas of Computer Science and Mathematics. In computer science, he has worked as an instructor teaching programming and computer science principles at the University of Alabama. He has also worked with outreach programs that teach K-12 students the fundamentals of problem solving, basic programming with languages such as Scratch, Snap, and App Inventor.



Dr. Mokter Hossain has a PhD from the University of Nevada-Reno in Curriculum, Teaching, and Learning with an emphasis on IT in Teaching-Learning Mathematics. He is pursuing a second PhD in Computer Science at the University of Alabama. Dr. Hossain is pursuing research in Computer Science Education and is a Research Assistant on a National Science Foundation grant that is helping to build curriculum for the CS Principles course, which will be an official AP exam of the College Board in 2016-2017. Prior to arriving in Tusaloosa, Mokter led multiple summer computer science camps in Reno, Nevada. More information about Dr. Hossain can be found here.



Dr. Amber Wagner is a faculty member at the Birmingham Southern University (Ph.D., University of Alabama, 2015). She 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.