Enhancing the undergraduate computing experience

Since the mid-’80s two approaches have been taken toward introductory computing for engineers: “CS 101” and the engineering tools approach. The “CS 101” approach was catalyzed by the growth of computer science programs, which provided instruction in computer languages. Over the years the “CS 101” courses have migrated through several programming languages: Pascal, C, C++, and Java. In the engineering branch, software vehicles such as spreadsheets (first Lotus 123, then Quattro Pro, and now Excel), TK Solver, Mathcad, and MATLAB have gradually pushed out programming languages (primarily Fortran). Programming languages are becoming endangered species in these courses. The “CS 101” branch would claim a number of reasons for existence[1]: