Dale Fisk's Programming With Punched Cards is a fascinating account of programming in the days of punch cards.
The fundamental dynamic was that early computers did not yet support timesharing.
The first attempt at allocating computer resources was simple queueing: each user got to go up and use the computer for a certain length of time. But this was inefficient: one manager complained that users were allocated 15-minute time slots, of which they would spend maybe ten minutes getting everything set up and only five minutes with the computer actually running their program, so the (at that time very expensive) computer effectively spent two thirds of its time idle.
Batch processing was a way around this; you no longer get to walk into the computer room; instead, you submit your program and data on punch cards along with everyone else; all the jobs are placed on a magnetic tape and fed to the computer as a single stream, so the computer gets to spend nearly all its time actually running programs; users collect their printouts the following day.
What I'm wondering is: why punch cards instead of paper tape?
It seems to me that the machinery to produce and consume paper tape was cheaper, being a standard fitting on ordinary teletypewriters.
Paper tape is also lighter, more compact, and doesn't have the problem of accidentally dropping a box of punch cards and getting the order scrambled.
It is less durable. Punch cards can last practically forever. But why pay for an archive-grade medium for a sneakernet job?
What am I missing?