Ninguém Mais Escreve Código

Capítulo 18. Uma habilidade em vez de uma função

Parte VI. Depois do vibe coding7 min

18

Uma habilidade em vez de uma função

Fotografia a preto e branco: dois homens junto aos bastidores altos de um computador, cobertos de válvulas.arquivo
O EDSAC em Cambridge, com William Renwick e Maurice Wilkes. Em 1951 Wilkes e colegas descreveram as sub-rotinas no primeiro manual de programação. Fonte: Computer Laboratory, University of Cambridge, CC BY 2.0

Em Cambridge, no começo dos anos cinquenta, ao lado do EDSAC, um dos primeiros computadores que de fato funcionavam, havia um armário de aço com fitas de papel. Em cada fita estava gravado com furinhos um pequeno programa que sabia fazer uma coisa: calcular um seno, extrair uma raiz, imprimir um número bonito. Se o problema precisava de um seno, o programador pegava a fita, copiava-a mecanicamente para a sua e devolvia o original à prateleira. Em 1951 Maurice Wilkes, David Wheeler e Stanley Gill descreveram essa rotina no primeiro manual de programação, e os pequenos programas que se inserem nos grandes passaram a ser chamados desde então de sub-rotinas, e depois de funções.

A história da programação pode ser recontada como a história do que se põe nesse armário. Primeiro se guardavam lá funções, depois bibliotecas de funções, depois serviços inteiros em servidores alheios: você manda uma solicitação, e em algum lugar distante fazem um pagamento, mandam um SMS ou informam a previsão do tempo. A cada vez, o que ficava na prateleira ia ficando maior e mais autônomo. Agora se põe na prateleira uma coisa para a qual nos anos cinquenta não haveria nem nome.


O mais fácil é mostrá-la com uma fatura. A função createInvoice() cria uma fatura se lhe entregarem com cuidado todos os dados no formato certo. A interface de programação dá um endereço como /invoices, para onde a fatura pode ser mandada para armazenamento. Já a habilidade fatura o cliente, e isso é um verbo completamente diferente. Ela descobre quem é o cliente e quais são os seus dados de faturamento, reúne os itens a partir do trabalho feito, aplica as regras da empresa sobre descontos, impostos e prazos, gera o documento, manda para onde o cliente de fato vai lê-lo, registra que a fatura foi enviada e, se no prazo o dinheiro não tiver chegado, lembra sozinha. Por dentro ela usa uma dezena de funções, um par de serviços de terceiros, memória e permissões de acesso, e por fora parece uma única ação que qualquer contador entende.

Após entrar

O resto do livro é para quem entrou

Entre com INITE ou crie uma conta. Leva um minuto, e o livro abre aqui mesmo.