Blog10 de junho de 2024Programação, matemática e formular o problema
Programo há bastante tempo, e quanto mais aprendo sobre isso, mais percebo sua influência
sobre como eu penso.
Programar não tem apenas o poder de resolver problemas. Tem o poder de formulá-los — e
essa é a parte que passei a valorizar mais. Uma das dificuldades mais fundamentais em
qualquer área técnica não é responder a uma pergunta. É chegar a uma pergunta precisa o
bastante para poder ser respondida.
Todo problema precisa primeiro ser enunciado de um jeito que possa ser entendido,
decomposto e trabalhado. Um problema vago produz trabalho vago. A prática de programar,
como a matemática, força uma espécie de disciplina mental contra isso: você não consegue
escrever a função enquanto não souber o que ela recebe e o que devolve. Você começa a
quebrar o todo em passos sequenciais, cada um dos quais se sustenta ou não.
Essa disciplina se transfere. Uso ela em coisas que não têm nada a ver com código —
quando um processo está falhando e ninguém sabe dizer exatamente como, o primeiro
movimento útil quase nunca é uma solução. É uma definição.
Recomendo a prática a qualquer pessoa, não só porque é um campo profissional grande, mas
porque é um treino incomumente bom para pensar com clareza.