June 22, 2003
June 22, 2003
June 25, 2003
8.575.1 - 8.575.7
First Programming Course in Engineering: Balancing Tradition and Application
K-Y. Daisy Fan, David I. Schwartz
Department of Computer Science, Cornell University, Ithaca, New York
The “Introduction to Programming” course is an essential part of any first-year engineering program. As part of a common first-year curriculum, one of the biggest challenges of this first programming course is to both teach fundamental programming concepts and give students practical tools that can be applied easily to upper level courses in different engineering disciplines. At Cornell University, we offer a new first-year programming course that uses two very different programming languages: MATLAB and Java. This one-semester course balances the need for working knowledge of a fundamental programming language, such as Java, and the need for working knowledge of an engineering computing tool so that upper-level courses can focus on high-level, conceptual issues rather than programming details. Furthermore, this new course accommodates students in arts and sciences who are interested in a programming course that has a strong mathematical focus instead of a more traditional programming course offered in a computer science department. This paper discusses the challenges in developing the course, the ambitious one-semester syllabus that teaches both MATLAB and Java with depth, our evaluation of this new course, and our plans for improving the programming course in a common first-year engineering curriculum.
The “Introduction to Programming” course is an essential part of the first-year engineering curriculum that helps students develop expertise in some programming language, beyond spreadsheet computation. This first programming course is a service course, teaching computing skills that students will need in upper division engineering courses. Given the wide-ranging needs of different engineering disciplines, some undergraduate programs offer introductory programming courses within the different departments. Such a model allows the computing needs of the upper division courses in a specific field to dictate the syllabus of the introduction to programming course. This efficiency in the curriculum can incur a penalty for the students who change their major from one engineering field to another if they lack the prerequisite programming course for their new major.
At Cornell University, the College of Engineering has a “common first-year curriculum” philosophy that requires a common, one-semester, introductory programming experience for all
Proceedings of the 2003 American Society for Engineering Education Annual Conference & Exposition Copyright © 2003, American Society for Engineering Education
Schwartz, D., & Fan, K. D. (2003, June), First Programming Course In Engineering: Balancing Tradition And Application Paper presented at 2003 Annual Conference, Nashville, Tennessee. 10.18260/1-2--12160
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: © 2003 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