.png)
Lucis
22 de agosto de 2024
No 2º semestre da universidade eu estava fazendo um trabalho da disciplina de Programação 2, que ensina orientação à objetos. Meu objetivo era modelar e criar um sistema de software, bem mais desafiador que os scripts do semestre anterior. Eu não lembro o exato tema desse trabalho, mas uma particularidade da solução que entreguei ficou comigo até hoje.
Quando eu aprendo algo novo, o encantamento inicial me faz querer aplicar praticamente aquele conhecimento. Senão, qual seria motivo de aprender? Com essa forma de pensar, eu prossegui para implementar meu projeto com todas as técnicas que eu estudei. Especialmente, eu dediquei um tempo desproporcional para fazer o mecanismo de erros e exceções do sistema.
Era uma solução rebuscada, que usava a funcionalidade de Reflection da linguagem de programação. O código que usa Reflection não é como qualquer código. Funciona como a metalinguagem: o código falando sobre ele mesmo. Parece mágico para mim hoje, e com certeza ainda mais mágico para meu eu de 17 anos. Eu lembro de passar horas refinando e mostrando pra meus colegas.
No final, eu tinha criado o que - na minha visão – abstraia complexidade. Era diferente, mágico e cool. Depois de um tempo, eu percebi que não era bem assim. Eu fiz uma coisa mais complicada do que precisava, focando mais na solução do que no problema. E, pior: eu descobri que essa era a minha tendência natural de como atuar.
Eu continuo assim. Até hoje eu percebo que, ao se deparar com uma situação, o meu automático é pensar numa funcionalidade mirabolante que resolve como ninguém resolveu antes. O que mudou, é que eu sei e tenho consciência desse meu viés. Quando ele entra em ação, eu consigo dizer "peraí" e me perguntar "como seria se fosse simples?". Quanto maior o tempo entre o estímulo e a reação, mas sábia será a decisão.