CS302 first appeared in the University timetable 50 years ago in 1967. A single lecture of the course titled “Algebraic Language Programming” met three times a week in Agriculture Hall 10, to teach students algorithm construction and how to use procedure-oriented programming languages like ALGOL and FORTRAN.
Walter Albers recalls learning Fortran through CS302 in 1978. He also shared his appreciation for the knowledge and discipline of programming that he acquired here, and that have served him well since that time.
Dave Ewald remembers taking CS302 in 1979-ish, the first year that dumb terminals were used in place of punch card decks. Although the course taught Fortran at this time, he remembers using Pascal in later courses after changing his major from Business to Computer Science.
Rick Lindsley also took CS302 in 1979 using “the mysterious new machines, the six Teraks.” Most of the assignments used Weaselgraphics to introduce programming. He also created a program called Trek which seems to have raised a lot of interest in these computers. He sites CS302/CS304 as being responsible for his move from EE to CS.
William Kucharski used the Teraks in 1984 to learn Pascal in CS302, and he still has the 8″ floppy to prove it!
The University timetable from 1984 shows the addition of the procedure-oriented language PASCAL which was taught in seven sections of CS302 that were intended for CS Majors only. The majority of CS302 sections at that time (nearly 60 in total) were taught for engineering majors with a mix of two-thirds PASCAL with one-third FORTRAN 77.
Chris Stolte took CS302 in 1996 and learned C++. He recalls the nugget of intrigue that lead him down the path to a CS degree and career in software engineering being: the explanation for why array indices are 0-based.
Starting in the Fall of 2017, CS302 will be replaced by a new introductory programming sequence aimed at better serving students with different levels of experience. CS200 will serve students without prior programming experience, and will be followed by CS300. CS300 is aligned to serve students entering the department with experience comparable to one year of advanced placement (AP) high school instruction. Further details related to this change can be found here.