SILVA, Richard em 12/abr/2026
Leitor,
A programação de computadores é ato revolucionário, pois não se limita a capacidade do programador, profissional ou não. Olhe para este site que tem a sua atenção. O que vê? Eu vejo uma máquina que funciona não a meu bel-prazer, mas que se dobra à minha vontade, à minha capacidade técnica e criatividade.
Mas o que acontece com os projetos mais recentes de programadores? Antes costumava-se hackear jogos, programas e a parte mais divertida era encontrar falhas em sistemas de computador, ainda que fossem rudimentares para o conhecimento da época! Como era divertido encontrar uma forma de encontrar uma falha no jogo e manipulá-la, não para fins econômicos, mas pelo prazer de encontrá-las e dobrá-las aos nossos conhecimentos...
Me recordo de minha primeira falha descoberta em um jogo de celular, onde com a manipulação de arquivos podia-se adicionar equipamentos, moedas, itens diversos e, consequentemente, facilitar a sua vida in-game. Para mim, foram madrugadas a dentro, entendendo a falha e usando-a para o mais simples fim: finalizar a construção de minha casa (com elevador). Foram os momentos mais divertidos em toda a minha vida. Em contrapartida, temos novos desenvolvedores que se afixam à ideia de criar novas plataformas unicórnio, profusamente rentáveis e que lhes permitirá aposentar mais cedo. Mas ai está o problema.
Onde está a diversão em se limitar à ideia de criar algo já feito? Por que tudo parece ser limitado e limitante a tal ponto? Quando se desenvolve um projeto de exploração simples, não é a nós requerido a experiência de 10 (dez) anos para uma tecnologia, pelo contrário. O computador nada nos pede senão código, que pode ser impreciso, falho, perfeito ou satisfatório. O que importa é saber o porquê do código ser falho, como melhorá-lo, como quebrá-lo e como ele age. Não importa a linguagem de programação que se escolha, apenas que seja aquela que você usará para aprender.
Quando falamos de software, temos diversos nomes que residem, ainda que escondidos, no seu desenvolvimento. Quem criou o tratamento de entrada de dados de um sistema? Quem fez com que fosse impresso o primeiro "Hello, World!" à tela? Nos prendemos à ideia de que nosso projeto sempre precisará ser o mais conceituado, mais bem elaborado... mas não precisa. Nosso código, claro, pode ser state-of-art, mas não exige ser o próximo Facebook, ou Uber ou, quem sabe, o próximo Doom rodando na geladeira de uma casa qualquer. Não. O código é uma extensão do profissional, que só precisa se aperfeiçoar.
Enfim... é preciso, além de tudo, fazer com que o código funcione à marteladas. Faça a próxima tecnologia que fará o homem ser levado à lua ou ao próximo McDonald's. Mas faça. Não deixe de criar do zero - e claro, se permitir errar para aprender mas, assim que domar seu código, o faça com maestria.
...
“From my own perspective, the software experience itself (designing it, developing it, evolving it, watching it perform and learning from it for future systems) was at least as exciting as the events surrounding the mission. … There was no second chance. We knew that. We took our work seriously, many of us beginning this journey while still in our 20s. Coming up with solutions and new ideas was an adventure. Dedication and commitment were a given. Mutual respect was across the board. Because software was a mystery, a black box, upper management gave us total freedom and trust. We had to find a way and we did. Looking back, we were the luckiest people in the world; there was no choice but to be pioneers.”
- Elizabeth Hamilton