Showcasing Critical and Creative Thinking in Computer Science

NC State Brickyard

Dr. Jamie Jennings, Assistant Teaching Professor in the Computer Science department, is always looking for new and creative ways to help students engage with her course material.  She teaches several upper-level computer science courses, including CSC 333 Automata, Grammars, and Computability and CSC 492 Senior Design Project 

This past summer, Jennings participated in the TH!NK Program, which is an NC State initiative that is designed to cultivate students’ higher-order skills in critical and creative thinking. Faculty who choose to incorporate TH!NK strategies into their courses received extensive training and are able to provide students opportunities to develop and receive feedback on higher-order thinking skills.

This fall was Jennings’ first time teaching CSC 333, but she knew from the beginning she wanted to ensure her students walked away from the class with a deep understanding and connection to the course materials. Inspired by the information presented in TH!NK workshops, Jennings spent a lot of time thinking of ways to help her students engage with what she notes is one of the most theory-heavy courses in the undergraduate computer science curricula. She found herself asking, “how do you get people to engage with beautiful material when they have a predisposition to it being dry?” Jennings knew she would not be able to change the material she needed to cover in the class, but realized she could work to change how the material is presented. “I wanted to make sure I could engage students in a way that would counter the idea that theory is really dry and help them better understand the history of the computer science field.”

How do you get people to engage with beautiful material when they have a predisposition to it being dry?

Dr. Jamie Jennings

Throughout the semester Jennings incorporated active learning exercises into her class, which challenged students to work together to solve problems and address open-ended questions, often using design-oriented problem-solving. She notes students would break into small groups, discuss a problem and work together to come up with a solution and then present it to the class. She found students came up with a range of solutions to each problem which really showcased different problem-solving approaches amongst the cohort. 

Jennings’ CSC 333 course culminated in the presentation of a semester-long project which challenged students to work together to create a museum exhibition on the Theory of Computation. Students could choose to focus on a person, computing machine, or even a theoretical concept, and were encouraged to consider a range of creative formats to present their information. 

Ben Floyd and Ryan Hess, both juniors in computer science, chose to explore the Colossus Computer, a computer developed by British codebreakers during World War II. To present their research the pair developed an active presentation in which users could navigate through pages of information to learn more about the Colossus and its role throughout history. For Floyd, who loves puzzle solving, but would not consider himself to be artistically creative, the project allowed him to express a different type of creativity while exploring a topic he was interested in. For Hess, the project provided him the impetus to learn Python, a high-level programming language. Both students enjoyed the unique project and appreciate the opportunity to work together on such a dynamic assignment. 

Amanda McBryde,  EJ Walsh, and Michael Hendry, all of whom are juniors majoring in computer science, chose to create a podcast detailing the life and contributions of Katherine Johnson, the American mathematician whose work with NASA was crucial to the success of the space program. McBryde notes she had developed an interest in learning about Johnson after seeing the movie Hidden Figures, and saw the assignment as an opportunity to learn more about the impact of women of color in the computer science field. Likewise, Walsh enjoyed learning about Johnson and was excited to share what he learned in such a creative fashion. Hendry, who admits to having some previous experience with creating podcasts, explained he appreciated the assignment as it allowed him to showcase what his team learned in an accessible and fun format. 

For many students in Jennings’ CSC 333 class, the assignment proved to be a nice respite from the typical end of term assignments like papers. David Shaw, whose group’s project focused on Fortran, a general-purpose programing language, found the team-based research project to be more fun and less stressful than other class projects he has participated in. Students like Kylee Coppock, also used the assignment as an opportunity to explore some unique resources the university libraries offered, such as the music and sound booths. Coppock and her team developed a podcast about Alan Turing, and she is now excited to look for ways to incorporate media into more of her academic projects. 

Jennings admits to finding herself pleasantly surprised by the depth of information and original thought her students put into their work. Jenning’s explained, “there is a rich history [in the computer science field], and in engineering students do not often get to see and interact with it, nor do they get a lot of opportunities to be creative.” From this assignment, Jennings hopes students take away the ability to make connections amongst their computer science coursework and computer science as a professional field. “I want them to believe that even the most abstract of their computer science courses are infused with connections to all the other things they are learning” explained Jennings. 

For faculty members interested in learning more about the TH!NK Program and how to incorporate critical and creative thinking into your class, please visit the TH!NK website or contact program director, Sue Carson.