The teacher would bring a single tower (486 based I think), plug it into monitor and keyboard, and the whole class would take 15 minute slots at it.
We would prepare our exercises in MS-DOS, with Turbo C 2.0, using mocks for the UNIX APIs.
Then use those 15 minutes to replace the mocks with the real deal, and have a go at it.
Failing the exercise, it was back to MS-DOS / Turbo C, while trying to figure out with pen and paper what might have gone wrong.
Then people complain nowadays when their build takes longer than 1 second.
My father wrote in Fortran during the 70's while at the university. He told me that he left the programs (stack of punched cards) with the "computer operator" on Friday and went back to get the "results" on Monday. Sometimes, the result was simply a syntax error message.