skip to main content
article

Using image processing projects to teach CS1 topics

Published: 23 February 2005 Publication History

Abstract

As Computer Science educators, we know that students learn more from projects that are fun and challenging, that seem "real" to them, and that allow them to be creative in designing their solutions. When we have students beating down our office doors wanting to show us what they've done, we know we have designed a project that truly meets its pedagogical goals. In CS1 courses, it is often difficult to come up with large, real-world programming projects that are at an appropriate level and that really excite students. This is particularly true in the first half of the course when students are learning basic programming and problem solving skills. We found that assignments based on image processing are an effective way to teach many CS1 topics. Because students enjoy working on the projects, they come away with a solid understanding of the topics reinforced by the projects. In this paper, we discuss many ways in which image processing could be used to teach CS1 topics. As an example, we present two image processing projects that we use in our CS1 course. These large, real-world programs are designed so that students can successfully master them early in their first semester of programming. Even though our CS1 course is taught using the C programming language, these projects could easily be used by a CS1 course in C, C++, or Java. We provide starting point code for Java and C versions of the projects, and provide sample assignment write-ups on our project webpage [12].

References

[1]
Abelson, H., and Sussman, G. J. Structure and Interpretation of Computer Programs, Second Edition. McGraw Hill, 2001.
[2]
Astrachan, O., and Rodger, S. H. Animation, visualization, and interaction in CS1 assignments. Proceedings of the twenty-ninth SIGCSE technical symposium on Computer science education (February 1998).
[3]
Burger, K. R. Teaching two-dimensional array concepts in java with image processing examples. Proceedings of the Thirty-Forth SIGCSE Technical Symposium on Computer Science Education (February 2003).
[4]
Compuserve Information Service. Graphic Image Format.
[5]
Fell, H. J., and Proulx, V. K. Exploring Martian planetary images: C++ exercises for CS1. Technical Symposium on Computer Science Education Proceedings of the twenty-eighth SIGCSE technical symposium on Computer science education (February 1997).
[6]
Goodrich, M. T., and Tamassia, R. Data Structures and Algorithms in Java, Second Edition. John Wiley and Sons, Inc., 2001.
[7]
Hunt, K. Using image processing to teach CS1 and CS2. SIGCSE Bulletin 35, 4 December 2003, 86--89.
[8]
Microsoft Corporation. Microsoft Paint. http://www.microsoft.com/.
[9]
Ousterhout, J. K. An X11 toolkit based on the Tcl language. Proceedings of USENIX Winter Conference (1991).
[10]
Roberts, E. The Art and Science of C. Addison Wesley, 1995.
[11]
Sun MicroSystems. Java Swing Library, part of the Java 2 Platform. http://java.sun.com/j2se/.
[12]
Wicentowski, R., and Newhall, T. Two image processing projects for a CS1 course. www.cs.swarthmore.edu newhall/imagemanip/.

Cited By

View all
  • (2024)Perpetual Teaching Across Temporary Places: Conditions, Motivations, and Practices of Media Artists Teaching Computing WorkshopsProceedings of the 2024 ACM Conference on International Computing Education Research - Volume 110.1145/3632620.3671095(374-388)Online publication date: 12-Aug-2024
  • (2022)Heterogenitätsbewusste digitale Gestaltung eines Einführungsmoduls in der InformatikHeterogeneity-Aware Digital Design of an Introductory Module in Computer ScienceMedienPädagogik: Zeitschrift für Theorie und Praxis der Medienbildung10.21240/mpaed/48/2022.06.14.X48(170-190)Online publication date: 14-Jun-2022
  • (2022)Digitally Supported Introductory University Teaching in Computer Science Considering Heterogeneous GroupsProceedings of the 2022 ACM Conference on International Computing Education Research - Volume 210.1145/3501709.3544296(10-11)Online publication date: 7-Aug-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM SIGCSE Bulletin
ACM SIGCSE Bulletin  Volume 37, Issue 1
2005
562 pages
ISSN:0097-8418
DOI:10.1145/1047124
Issue’s Table of Contents
  • cover image ACM Conferences
    SIGCSE '05: Proceedings of the 36th SIGCSE technical symposium on Computer science education
    February 2005
    610 pages
    ISBN:1581139977
    DOI:10.1145/1047344
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 23 February 2005
Published in SIGCSE Volume 37, Issue 1

Check for updates

Author Tags

  1. CS1
  2. computer science education
  3. image processing projects

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)6
  • Downloads (Last 6 weeks)0
Reflects downloads up to 07 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Perpetual Teaching Across Temporary Places: Conditions, Motivations, and Practices of Media Artists Teaching Computing WorkshopsProceedings of the 2024 ACM Conference on International Computing Education Research - Volume 110.1145/3632620.3671095(374-388)Online publication date: 12-Aug-2024
  • (2022)Heterogenitätsbewusste digitale Gestaltung eines Einführungsmoduls in der InformatikHeterogeneity-Aware Digital Design of an Introductory Module in Computer ScienceMedienPädagogik: Zeitschrift für Theorie und Praxis der Medienbildung10.21240/mpaed/48/2022.06.14.X48(170-190)Online publication date: 14-Jun-2022
  • (2022)Digitally Supported Introductory University Teaching in Computer Science Considering Heterogeneous GroupsProceedings of the 2022 ACM Conference on International Computing Education Research - Volume 210.1145/3501709.3544296(10-11)Online publication date: 7-Aug-2022
  • (2021)Creativity in CS1: A Literature ReviewACM Transactions on Computing Education10.1145/345999522:2(1-26)Online publication date: 1-Nov-2021
  • (2013)A case for course capstone projects in CS1Proceeding of the 44th ACM technical symposium on Computer science education10.1145/2445196.2445398(693-698)Online publication date: 6-Mar-2013
  • (2012)On the design of effective learning materials for supporting self-directed learning of programmingProceedings of the 12th Koli Calling International Conference on Computing Education Research10.1145/2401796.2401805(74-82)Online publication date: 15-Nov-2012
  • (2012)Technical SectionComputers and Graphics10.1016/j.cag.2012.01.00736:3(170-177)Online publication date: 1-May-2012
  • (2009)QuickDrawACM SIGCSE Bulletin10.1145/1539024.150894641:1(211-215)Online publication date: 4-Mar-2009
  • (2009)QuickDrawProceedings of the 40th ACM technical symposium on Computer science education10.1145/1508865.1508946(211-215)Online publication date: 4-Mar-2009
  • (2008)A graphics-based approach to data structuresACM SIGCSE Bulletin10.1145/1597849.138430240:3(109-113)Online publication date: 30-Jun-2008
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media