Popular intro CS course continues to grow; Over 870 students present final projects at showcase

EECS 183 is designed to teach undeclared students and non-CS majors the fundamentals of algorithmic thinking and programming.

Image Enlarge
Students present their projects at the EECS 183 showcase.

On Thursday, December 15, over 870 students in EECS 183, Elementary Programming Concepts, displayed their final projects for friends, family, classmates, and industry sponsors in a series of project showcases in the Michigan League Ballroom.

EECS 183 is designed to teach undeclared students and non-CS majors the fundamentals of algorithmic thinking and programming. Redesigned by Dr. Mary Lou Dorf with a project- and team-based approach in 2014, the popular course has since doubled in size.

“In EECS 183, we assume the students have never written a line of code,” said Dr. Dorf. “We take them from the point of knowing nothing to learning how to program a real, working project.”

Regarding the impact of the course, Dr. Dorf says “It’s like learning a foreign language. You need to give it some time, and after a while you pick up the terminology and you learn to think in a new way. It forces you to become logical.”

The administration of EECS 183 is a large task. In Fall 2016, lecture sections of EECS 183 were taught by Dr. Dorf, Dr. Bill Arthur, and Dr. Héctor García-Ramírez. A team of 24 student instructors led discussion sessions. An extensive website provides students with resources, assignment info, and contact information.

This video, produced in 2015, describes EECS 183's approach and includes student testimonials.

For their final project, students were given the opportunity to choose from four different topic areas from which to develop their projects.

1) Creative AI: This was a 100% Python project all about natural language processing and sequence prediction. For this project, students wrote programs to generate and present new lyrics and music using musical datasets of their choice.

2) Micro Arcade: This project involved creating a micro arcade machine using the Arduino Uno and a display screen.

3) Game of Life: This project was based on Conway’s Game of Life, which is an interactive program that simulates life using a grid of cells. The cells can change to an “alive” or “dead” state with each passing generation, based on a set of rules regarding the cell’s neighbors.

4) Connect 4: Students implemented the popular game “Connect 4” in C++.

Many of the students in EECS 183 are surprised and pleased by what they are able to accomplish, and to celebrate their success a day-long series of project showcases allow them to share their work in a balloon-festooned hall. Industry sponsors, including both national firms and local firms that hire computer scientists, are present at the showcase and give prizes to the most interesting or clever projects.

EECS 183 has also been designed to be as inclusive as possible. For a variety of reasons, computer science programs nationwide have suffered from a gender imbalance in which women make up less than 18% of enrolled students. In EECS 183, which employs gender neutral language and examples, a team- and project-based problem-solving approach, and which assumes no previous programming experience, women made up over 38% of the students in Fall 2016.

Photos from the EECS 183 Final Projects Showcase