O Computador que Media o Trabalho Humano

Crónica Histórica — O Génio com Duas Cassetes
Em 1978, com um ICL 1501 e apenas dois drives de cassete, nasceram programas de recolha inteligente de dados, ordenação, validação e relatórios de produtividade com gráficos em impressora de agulhas. Quando a memória era escassa, a imaginação era infinita.
ICL 1501 (1978): Quando Duas Cassetes Bastavam Para Criar um Mundo
Por Francisco Gonçalves — Fragmentos do Caos
Ano: 1978
Máquina: ICL 1501 (série ICL 1500 – terminal/sistema de recolha e processamento)
Meios: 2 drives de cassete (≈ 900 registos × 128 bytes por cassete → ~115 200 bytes)
Linguagem/Ferramenta: CDE (ambiente/procedimentos de manipulação de ficheiros), rotinas em baixo nível
Funções: Ordenação, validação/correcção, logs por operador, estatísticas, gráficos de barras em impressora de matriz de agulhas
Integração: Conversão para banda magnética de mainframe com remoção de headers de trabalho
O ofício do silêncio magnético
Quem trabalhou com cassetes conhece o som: o chiado metálico, a cabeça magnética a riscar tempo no óxido. Era aí que o rigor nascia. Cada cassete guardava 900 registos de 128 bytes; cada byte tinha um destino e um propósito. Entre o Drive A e o Drive B, montava-se um estúdio de engenharia de dados em miniatura.
Do bruto ao depurado: pipeline em duas cassetes
O fluxo era coreografado com precisão:
- Drive A: entrada de ficheiros brutos por operador (registo a registo).
- CDE: rotinas de validação, correcção (quando possível) e ordenação por chaves do cliente.
- Drive B: saída consolidada e pronta a converter para banda magnética de mainframe.
Em paralelo, a aplicação escrevia metadados operacionais: quem registou, quantos erros, que correcções, tempos de execução por bloco — uma verdadeira telemetria do trabalho humano.
Headers fora, conhecimento dentro
Na fase de conversão para mainframe, os headers de trabalho eram removidos e os dados embalados no formato exacto do host. Antes disso, extraíam-se indicadores que mudavam decisões:
- Erros por operador e taxa de re-trabalho;
- Registos/hora e tempo médio por registo;
- Produtividade comparada entre operadores e equipas.
Relatórios que falavam: barras na matriz de agulhas
Da impressora saíam mapas e gráficos de barras construídos com padrões de pontos/caracteres, legíveis e accionáveis. Numa única folha, a gestão via quem excedia metas, onde havia fricção e o que optimizar no ciclo seguinte. Analytics antes da palavra existir.
Esboço operativo (pseudo-código)
para cada registo em Drive_A:
validar(campos)
se erro:
log_operador(id, tipo_erro, timestamp)
se correcao_possivel: aplicar_correcao(); inc(contador_correcao)
inserir_em_buffer_ordenacao(registo)
ordenar(buffer_ordenacao, chave_cliente, data)
gravar_em_Drive_B(formato_mainframe, remover_headers=True)
# métricas e relatório
para cada operador:
total = contar(registos_por_operador)
erros = somar(erros_por_operador)
tempo = somar(tempos_por_operador)
produtividade = total / max(tempo,1)
imprimir_relatorio_tabular()
imprimir_grafico_barras_matriz()
Lição de engenharia com poucos recursos
O ICL 1501 ensinou a ética do byte: elegância em vez de desperdício, processo em vez de improviso, conhecimento a partir de registos modestos. Com duas cassetes e uma impressora de agulhas, ergueu-se um ciclo completo de qualidade, auditoria e decisão.
"Antes dos gigabytes, houve engenheiros que pesavam cada byte."
— F. Gonçalves