Don't you mean that you had to change cards?

I did, but that was nothing compared to three-pass assembler that used paper tape as intermediate storage (punched and read on AT&T KSR-33 teletype), or hand-assembling a bootstrap loader and entering it by means of front panel switches. All that on real-world computer (Nova3 by Data General) used in a physics laboratory, not a hoby project.

As for languages used in CS study, I think that one should used several, those best suited for topic at hand. So, perhaps Pascal for fundamental algorithms and data structures, Smalltalk for OO concepts, some Assembly and then C (or BCPL) for 'close to the metal (or, rather, silicon)' work, Lisp and Prolog for AI concepts, any combination of shell, Perl, Python etc for 'administrative' scripting etc. Then encourage students to glance over Ada, ML, certainly Java and C++, even (gasp) COBOL, Basic, FORTRAN or PL/I. CS study should focus on concepts, ideas and methodology, not languages. A graduate should be able to switch (and learn to use new) languages as easily as editors.
_________________________
Dragi "Bonzi" Raos Q#5196 MkII #080000376, 18GB green MkIIa #040103247, 60GB blue