Wirth's law
expressãoprogramaçãocultura de operações
O software fica mais lento mais depressa do que o hardware fica mais rápido.
Niklaus Wirth formalizou a queixa em seu ensaio de 1995, A Plea for Lean Software, creditando a tirada a Martin Reiser; é a sombra da lei de Moore. Cada duplicação do hardware é gasta em camadas de abstração, frameworks e recursos, até a experiência do usuário ficar parada ou regredir. Recorra a ela sempre que um editor de texto precisar de um gigabyte para abrir um arquivo que a máquina original nem conseguiria armazenar.
O software fica mais lento mais rápido do que o hardware fica mais veloz. A formulação de Niklaus Wirth, de 1995, é desconfortável porque as melhorias de hardware foram reais e enormes, e a experiência percebida em muitas tarefas cotidianas não melhorou proporcionalmente, e em alguns casos regrediu.
O mecanismo também não é preguiça. Camadas de abstração compram velocidade de desenvolvimento e portabilidade, e cada uma custa desempenho; arcabouços trazem capacidade e peso juntos; e no momento em que o hardware torna algo rápido o bastante, a pressão para otimizá-lo desaparece e a capacidade liberada é consumida pela camada seguinte. Cada decisão isolada é defensável e o agregado é um editor de texto que demora mais para abrir que um de 1995.
O contrapeso honesto é que a comparação favorece o passado. O software moderno faz muito mais: internacionalização, acessibilidade, criptografia, colaboração ao vivo, renderização que pressupõe telas arbitrárias. Parte do peso é capacidade genuína. A crítica se sustenta assim mesmo porque boa parte dele não é, e a disciplina que Wirth defendia, tratar desempenho como restrição de projeto em vez de algo a recuperar depois, segue sendo posição minoritária.