Los primeros programas informáticos de mainframe estaban contenidos en pilas de tarjetas perforadas de cartón. Aunque han pasado muchos años desde que se han utilizado para este propósito, las tarjetas perforadas todavía tienen algunos usos y se utilizan sobre todo en algunas máquinas de votación.
Las tarjetas perforadas se inventaron antes que las computadoras electrónicas. Originalmente patentada por Herman Hollerith, la tarjeta perforada fue utilizada por primera vez con máquinas de tabulación para registrar estadísticas vitales por la Junta de Salud de la Ciudad de Nueva York, y más tarde, en el censo de 1890. Hollerith en realidad tomó la idea de las tarjetas utilizadas en los telares Jacquard, que usan tarjetas para controlar un patrón de tejido.
Hollerith inventó máquinas electromecánicas que incluían un dispositivo de perforación, una máquina tabuladora y una clasificadora, que podían usarse para acumular y almacenar estadísticas. A su compañía, la Tabulating Machine Company, se le unió más tarde Thomas Watson, quien luego renombró la compañía International Business Machines (IBM).
El tamaño y el número de columnas ha variado a lo largo de los años, y la tarjeta original utilizada en el censo de 1890 tiene 20 columnas con 10 posiciones de perforación cada una. Hay algunos paralelismos interesantes con los sistemas operativos modernos. En 1928, IBM introdujo y patentó la tarjeta de 80 columnas que usaba orificios rectangulares en lugar de orificios redondos, lo cual fue significativo porque limitaba a los competidores de IBM al formato más antiguo e incompatible de orificios redondos.
Remington Rand diseñó un formato competitivo que permitía almacenar 90 columnas de texto en tarjetas de 45 columnas, lo que en realidad era un diseño superior, pero debido al dominio del mercado de IBM, no se usaba con tanta frecuencia. El procesamiento de tarjetas no requería necesariamente el uso de una computadora. Algunas aplicaciones minoristas, por ejemplo, usaban un clasificador de tarjetas y una máquina tabuladora para funciones de contabilidad, como la suma de campos de precios en tarjetas en múltiples categorías.
Los lenguajes de programación requerían que las primeras tarjetas de formato fijo pasaran a un diseño de formato libre, y con el desarrollo de lenguajes de computadora estandarizados como FORTRAN y COBOL, las tarjetas perforadas genéricas se hicieron frecuentes.
No fue hasta la década de 1970 que las grandes operaciones de procesamiento de datos comenzaron a pasar de las tarjetas perforadas a los entornos de tiempo compartido con datos almacenados en cinta magnética.
Las tarjetas perforadas todavía se utilizan ampliamente en las máquinas de votación, a pesar de los problemas que se han producido a lo largo de los años. En las elecciones generales de 1968 en Detroit, una tormenta empapó un lote de papeletas y en las elecciones presidenciales de 2000 surgieron dudas sobre su precisión y eficiencia en comparación con los sistemas más modernos.