Se você quer entrar no ramo de desenvolvimento de software, é bom saber algumas coisas antes de tomar essa decisão. Nessa serie de artigos “Filosofia de Software”, tentarei trazer, de forma bem humorada, alguns detalhes do dia a dia do desenvolvimento de software.
Eu iria começar falando sobre o ego dos programadores, mas esse é um texto muito extenso, pois entender porque os programadores agem dessa maneira peculiar e estudar o comportamento em grupo dessa espécie, seria matéria de estudo para décadas de pesquisa.
Iniciarei dizendo uma verdade absoluta no mundo do software. Tenha sempre isso em mente, e nunca menospreze esse axioma.
Merdas acontecem!
Querendo ou não, acreditando ou não, isso simplesmente é verdade. Não tente lutar contra isso, apenas aceite. Por mais metodologias que sejam aplicadas ao projeto, por mais planejamento e calculo que possa existir, sempre vai acontecer merda. E provavelmente um dia você vai se dar conta que isso é o que faz o desenvolvimento de software de certa forma, legal. Obviamente que muita merda acontecendo, significa falta de planejamento e métodos para execução, mas sempre vão existir detalhes ou mudanças inesperadas. Isso é que faz com que o dia a dia do desenvolvimento não seja sempre igual e entediante.

Mas essas merdas que acontecem podem produzir muitas situações engraçadas e muito stressantes também. Um desses problemas é a dificuldade que geralmente se tem em reproduzir no ambiente de desenvolvimento, uma configuração igual a que se encontrará no ambiente de produção.
É nesse momento que a aplicação que funciona perfeitamente no ambiente de desenvolvimento, vai para uma rede estranha e encontra variáveis estranhas e inesperadas e o resultado é: Não funciona!
Geralmente os desenvolvedores responsáveis pela funcionalidade se apressam em dizer:
Mas na minha máquina funciona!
Essa é a pior resposta que se pode dar. Eu já falei muito isso, mas sinceramente, o cliente não quer saber se na sua máquina ou na rede de sua empresa funciona ou não. Ele quer o software funcionando na máquina dele, na rede dele.
É nesse momento que você tem que respirar fundo e meditar com o mantra, “Merdas acontecem”. Simplesmente diga que vai verificar o problema e mãos a obra, ou utilize a metodologia XGH e venda a maquina do desenvolvedor para o cliente, essa é uma possível solução!
O objetivo desse texto não é dizer o que fazer para isso não acontecer, é simplesmente mostrar a postura que você deve ter com relação ao problema. Não adianta bater de frente e ficar mostrando que o software funciona no seu ambiente. O objetivo é rodar no ambiente do cliente, se esse objetivo não foi alcançado então ainda existe trabalho a ser feito.