O primeiro significado que nos vem à cabeça para a palavra é o de “erro”. Falha no código-fonte que pode dar origem tanto a erros nas soluções do programa como a comportamentos completamente inesperados. Nesse contexto de erros inexplicáveis, em português, nem existe tradução precisa. É bug, mesmo.
Já em inglês, a primeira sugestão de tradução é “inseto”, mesmo existindo também a acepção de “defeito”. Interessante é que esse primeiro entendimento mantém viva a lembrança de que existem bugs também em hardware. E que foi ali a sua origem, provavelmente com um inseto de verdade causando problemas de leitura no fonógrafo de Thomas Edison, em 1878. É o que dizem, sem muita garantia, embora seja certo que o termo já era empregado muito antes da chegada do computador, no sentido de falha mecânica.
Quando o problema é realmente de falha na lógica do programa, o que o justifica é a grande complexidade dos códigos-fontes. O do Corte Certo, por exemplo, tem centenas de milhares de arquivos, cada qual com centenas de linhas de código. Por mais que tenham evoluído os métodos e ferramentas de controle auxiliares, ainda é impossível à mente humana manter absoluto domínio sobre um campo de intervenção tão extenso. Por isso é que no contrato de licença de uso de qualquer software há isenção de responsabilidade do desenvolvedor no caso do aparecimento de bugs.
Esse cuidado é mais que necessário porque, além de tudo, o bug pode ter como causa a interferência externa indesejada de outros sistemas, tais como o Windows, os malwares ou até mesmo os antivírus com seus diagnósticos de falsos-positivos.
Por aí já se pode ter uma ideia da dificuldade que os programadores têm para descobrir a origem de um bug relatado. Muitas vezes é pior que achar agulha no palheiro.
Encontrar o problema que gera o bug é essencial para resolver o problema, mas não é garantia de que a solução será encontrada. O maior exemplo disso foi o famoso Bug do Milênio, na virada do ano 1999 para o 2000. De um simples problema da informática criou-se clima de fim do mundo, com direito invasão aos supermercados americanos para a formação de estoques de comida. No apocalipse prenunciado uma enorme desordem no sistema econômico mundial levaria milhões de empresas à falência. Investimentos financeiros poderiam ter os valores negativados, causando uma onda de suicídios. Bandidos perigosos seriam soltos, aviões cairiam, incontáveis indústrias fechariam as portas. E tudo porque, no século passado, eram usados apenas dois dígitos para a posição do ano nos campos de data dos softwares – então o ano de 2000 poderia ser entendido como 1900, fazendo o computador enlouquecer.
No fim a catástrofe não veio.
Para 2038 há problema similar previsto. Os softwares afetados são os que calculam a data através do número de segundos, ignorando os bissextos. No que diz respeito ao Corte Certo, seus usuários podem dormir tranquilos, pois não é o caso.
Relacionados:
• Característica
• Disfunção
• Falso-positivo