skip to main content
10.1145/1508865.1508907acmconferencesArticle/Chapter ViewAbstractPublication PagessigcseConference Proceedingsconference-collections
research-article

Python CS1 as preparation for C++ CS2

Published:04 March 2009Publication History

ABSTRACT

How suitable is a Python-based CS1 course as preparation for a C++-based CS2 course? After fifteen years of using C++ for both CS1 and CS2, the Computer Science Department at Michigan State University changed the CS1 course to Python. This paper examines the impact of that change on the second course in the sequence, CS2, which kept C++ as its primary language. We report results on a CS2 class which had a mixture of students who had used either C++ or Python from our CS1 course. The CS2 class covered the same topics as previously, though with some changes, and even gave the same final exam as a previous offering. Independent samples t-tests were used to compare students from the Python group with students from the non-Python group on three outcomes: final exam grade, programming projects scores, and final grade for the course. The main result was that there were no significant differences between the groups for all three outcomes. In addition, multiple regression analysis showed that students' past performance (overall GPA) in the University predicted final grades, final exam scores, and programming project scores for the course, but there was no effect of the programming language feature: Python or non-Python. We feel this shows that the Python-based CS1 course prepared students for the C++-based CS2 course as well as the C++-based CS1 course did---while exposing them to a different, powerful and useful language.

References

  1. T. J. Cortina. An introduction to computer science for non-majors using principles of computation. In SIGCSE '07: Proceedings of the 38th SIGCSE technical symposium on Computer science education, pages 218--222, New York, NY, USA, 2007. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. J. Forbes and D. D. Garcia.". . . but what do the top-rated schools do?": a survey of introductory computer science curricula. SIGCSE Bull., 39(1): 245--246, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. M. Guzdial. Introduction to Computing and Programming in Python: A Multimedia Approach. Pearson Prentice Hall, New Jersey, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. N. Jukic and P. Gray. Using real data to invigorate student learning. SIGCSE Bull., 40(2): 6--10, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. R. P. Loui. In praise of scripting: Real programming pragmatism. IEEE Computer, 41(7): 22--26, July 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. D. J. Malan and H. H. Leitner. Scratch for budding computer scientists. In SIGCSE '07: Proceedings of the 38th SIGCSE technical symposium on Computer science education, pages 223--227, New York, NY, USA, 2007. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. A. Pears, S. Seidman, L. Malmi, L. Mannila, E. Adams, J. Bennedsen, M. Devlin, and J. Paterson. A survey of literature on the teaching of introductory programming. In ITiCSE-WGR '07: Working group reports on ITiCSE on Innovation and technology in computer science education, pages 204--223, New York, NY, USA, 2007. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. K. Powers, S. Ecott, and L. M. Hirshfield. Through the looking glass: teaching cs0 with alice. In SIGCSE '07: Proceedings of the 38th SIGCSE technical symposium on Computer science education, pages 213--217, New York, NY, USA, 2007. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Python CS1 as preparation for C++ CS2

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        SIGCSE '09: Proceedings of the 40th ACM technical symposium on Computer science education
        March 2009
        612 pages
        ISBN:9781605581835
        DOI:10.1145/1508865

        Copyright © 2009 ACM

        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: 4 March 2009

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        Overall Acceptance Rate1,595of4,542submissions,35%

        Upcoming Conference

        SIGCSE Virtual 2024
        SIGCSE Virtual 2024: ACM Virtual Global Computing Education Conference
        November 30 - December 1, 2024
        Virtual Event , USA

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader