você.
Nós podemos facilmente ignorar o peixe em nosso domínio de negócio. Se
está trabalhando para uma empresa de hipotecas, você pode pedir para um especi-
alista o cálculo da taxa de juros para cada cenário que você precisar nos testes, ou poderia você mesmo aprender como calcular. Embora interações com seus clientes
sejam boas, e é bom clarear os requerimentos do negócio com eles (o contrário de entender pela metade e preencher os detalhes você mesmo), imagine quão rápido
você poderia avançar se realmente soubesse os detalhes do domínio em que está trabalhando. Você provavelmente não vai saber cada regra de negócio e nem é sua
função. Mas você pode, pelo menos, aprender o básico. Muitas das melhores pessoas que trabalham com software, com quem trabalhei durante anos, tornaram-se mais
especialistas em seus domínios do que até alguns de seus clientes. Isso resulta em produtos melhores. Alguém que é ignorante em domínio vai deixar passarem erros
bobos erros que um conhecimento básico poderia evitar. Além disso, ele trabalharia mais lentamente (e custaria mais à empresa) do que o desenvolvedor que entende do negócio.
Para nós, desenvolvedores de software, a intenção de Lao Tzu pode ser igual-
mente interpretada como Peça um peixe; coma por um dia. Peça a alguém para
ensinar-lhe a pescar; coma para a vida toda. Melhor ainda, não peça para ser ensinado vá aprender você mesmo.
Faça algo
1) Como e por quê? tanto enquanto você está sentado lendo este livro, ou na próxima vez em que estiver
no trabalho, pense sobre as partes do seu trabalho
que você entende por completo. Você pode se fazer duas perguntas extremamente
úteis sobre qualquer assunto para mergulhar fundo nele: como isso funciona? E
por que isso tem que acontecer?
Você pode não conseguir responder as perguntas, mas o simples ato de fazê-las
vai levar sua mente a um novo quadro e pode gerar um nível mais alto de cons-
ciência sobre seu ambiente de trabalho. Como o servidor IIS acaba passando
requests para minhas páginas ASP.NET? Como eu devo gerar essas interfaces e
scripts de deploy para minhas aplicações EJB? Como meu compilador lida com
linkagem dinâmica ou estática? Como calculamos a taxa de modo diferente se
um comprador mora em outro estado?
49
Casa do Código
Claro, a resposta para qualquer dessas perguntas levará a uma outra potencial
oportunidade de se fazer a pergunta mais uma vez. Quando você não puder mais
avançar na árvore do como e do porquê, você provavelmente terá ido longe o suficiente.
2) Dica escolha uma das mais críticas, porém negligenciadas, ferramentas da sua caixa de ferramentas e foque nela. Talvez seja seu sistema de controle de versão, talvez uma biblioteca que você use bastante mas procurou apenas superfici-
almente, ou talvez o editor que você usa pra programar.
Quando você escolher a ferramenta, reserve um pequeno período de tempo todos
os dias para aprender uma coisa nova sobre ela que vai lhe tornar mais produtivo ou lhe dar mais controle sobre seu ambiente de desenvolvimento. Você pode, por
exemplo, escolher dominar o GNU Bourne Again Shell, também conhecido como
bash. Durante um desses momentos em que sua mente começa a fugir do que
deve ser feito, em vez de ir para o Slashdot ou Facebook, você poderia procurar na internet por dicas de bash. Em um minuto ou dois, você deve encontrar algo útil que você não sabia sobre como usar o shell. Claro, agora que tem um novo truque, você pode mergulhar em suas entranhas com uma série de como e porquês.
50
Capítulo 12
Aprenda como os negócios
realmente funcionam
No capítulo anterior, nós discutimos a importância de fazer uma escolha intencional sobre o domínio de negócio no qual você trabalha. Conhecimento de domínio,
sendo na melhor das hipóteses um diferencial para empregos e na pior das hipóte-
ses um estraga-prazeres, não é algo que você deva subestimar. Antes de fazer um
investimento para aprender os prós e contras de um domínio de negócios, você de-
veria se certificar de que está investindo na coisa certa para você e para a situação do mercado.
Mas há uma parte do conhecimento que não é nem técnica nem de domínio es-
pecífico e não será ultrapassada em breve: o básico de finanças. Independentemente da sua linha de negócio, se é de manufaturas, assistência médica, sem fins lucrativos, ou uma instituição educacional, ainda se trata de negócios. E isso é por si só uma área de conhecimento que alguém pode e até deve aprender.
Eu me lembro de quando eu era um jovem programador indo para reuniões
Casa do Código
da equipe, meus olhos vidrados enquanto algum líder, com quem eu nunca tinha
trabalhado diretamente, mostrava um monte de números que eu acreditava serem
completamente irrelevantes para mim. Eu só quero voltar e terminar a funcionalidade que estou trabalhando, eu choramingava para mim mesmo. Meus colegas sentavam-se juntos, parecendo uma fila de crianças contorcidas numa longa viagem de carro.
Nenhum de nós entendia o que estava sendo apresentado, e nenhum de nós se impor-