Asee peer logo

Encouraging Creativity In Introductory Computer Science Programming Assignments

Download Paper |

Conference

2007 Annual Conference & Exposition

Location

Honolulu, Hawaii

Publication Date

June 24, 2007

Start Date

June 24, 2007

End Date

June 27, 2007

ISSN

2153-5965

Conference Session

Programming for Engineering Students

Tagged Division

Computers in Education

Page Count

15

Page Numbers

12.608.1 - 12.608.15

DOI

10.18260/1-2--1604

Permanent URL

https://peer.asee.org/1604

Download Count

221

Request a correction

Paper Authors

biography

Tammy VanDeGrift University of Portland

visit author page

Tammy VanDeGrift is an Assistant Professor at the University of Portland. She received a B.A. from Gustavus Adolphus College and her M.S. and Ph.D. degrees from the University of Washington (Seattle). Her research interests include computer science education, educational technology, multimedia, software engineering, and CS theory.

visit author page

Download Paper |

Abstract
NOTE: The first page of text has been automatically extracted and included below in lieu of an abstract

Encouraging Creativity in Introductory Computer Science Programming Assignments

Abstract

With computer science enrollments declining and the perception that programming is boring, computer science and computer engineering educators are challenged to raise awareness of the discipline. In order to keep students’ interest and to provide a means of ownership, creative and open-ended programming assignments are used in an introductory Java course. At the end of the semester, students completed a survey about the programming assignments in the course. Survey results indicate that 64% of students shared at least one program they created with a friend or family member, indicating that students took ownership of their computer programs. Comments that the assignments were “fun”, “creative”, “could be run later” suggest that students took ownership of their programs. Also, 45% of students added optional features to at least one program over the course of the semester. This paper describes the homework assignments used in the course, examples of students’ work, and students’ perceptions of the assignments.

1. Introduction

With computer science enrollments declining and the perception that programming is boring, computer science and computer engineering educators are challenged to interest more students in the discipline12. Having students with and without programming experience in introductory courses and the “ease” of copying code files for submission also pose challenges for computer science educators. In many introductory computer science courses, students complete programming assignments to learn the skills of problem-solving, translating ideas into computer code, debugging programs, and testing programs. Much of the learning takes place while students complete programming assignments. In order to keep students’ interest and provide a means of ownership, creative and open-ended programming assignments were used in an introductory Java course.

Most introductory programming courses include a series of programming assignments to ensure students learn programming fundamentals. A typical introductory programming assignment requires all students to complete the same program. Instead of stating project specifications so that all students’ projects tackle exactly the same task, assignments for an introductory course were written to allow students to be creative (yet still learn the programming fundamentals). This paper describes a series of such assignments used in an Introduction to Java course. For example, students designed their own madlib story for the string-processing assignment and designed their own custom recipe calculator for basic input/output and mathematical functions. Later during the semester, students completed an adventure game and designed their own characters and their behaviors.

Even though assigning “creative” assignments does not lend itself to automated grading and testing, the author believes that to truly assess students’ code, the code itself must be read and graded for style and quality. Therefore, executing each student’s program and reading their code takes time, but its advantages in encouraging students to be creative outweigh the cost of

VanDeGrift, T. (2007, June), Encouraging Creativity In Introductory Computer Science Programming Assignments Paper presented at 2007 Annual Conference & Exposition, Honolulu, Hawaii. 10.18260/1-2--1604

ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2007 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015