Pink e Cérebro, esses dois ratinhos (opa! camundongos de laboratório), talvez sejam um dos recentes desenhos animados, mais interessantes em minha opinião, principalmente pelo antagonismo dos personagens principais, dessa forma, quero tentar usá-los nessa crônica para ilustrar o ponto de equilíbrio ideal entre soluções tecnológicas e simplicidade.

Pink e Cérebro
As aventuras de dois ratos de laboratório e seus planos mirabolantes para dominar o mundo.

Para isso, vamos analisar o perfil de cada um de nossos personagens, começaremos pelo Cérebro, sujeito pensador, com alto nível intelectual, e uma incrível capacidade de planejar e arquitetar soluções altamente complexas para executar atividades simples, por exemplo, ele criaria um super mecanismo, com tubos movidos a pressão hidráulica, iniciada por um coletor de energia solar, armazenada em um dispositivo de armazenamento termonuclear só para criar um canudo para poder beber um suco de limão.

Não que isso seja algo totalmente ruim, na verdade, o Cérebro só é capaz de criar esse tipo de coisa, devido a sua inteligência extremamente exagerada (igual a sua cabeça), porém trazendo para nossa realidade, ele representa um analista ou arquiteto de software que cria um projeto altamente super dimensionado e usando várias combinações de tecnologias e técnicas, só para criar uma simples tela de cadastro acessado um banco de dados, e isso apensar de agregar valor ao seu projeto, em contrapartida, pode ser um caminho muito arriscado, pois, quando usamos muitas combinações de tecnologias e técnicas em nossos projetos, estamos trazendo também, uma gama de complexidade igualmente proporcional, e olha que eu não falo apenas de complexidade de uso, estou falando também, de complexidade de um pleno entendimento, o que significa, suicídio contra a produtividade do projeto.

Já o Pink, é um cara do tipo bobalhão, meio pateta que acredita em tudo que o Cérebro lhe fala, porém, ele tem uma característica bem valiosa, sua tendência a simplificar as coisas, pois através de suas ações baseadas em sua intuição, ele consegue ter resultados muito mais eficazes e com menos esforço que o Cérebro, dessa forma, ele representa quem prefere soluções mais simples e fáceis para criar a mesma tela de cadastro acessando um banco de dados, porém, pode ter uma grande limitação de visão quando for necessário resolver problemas que exigem mais complexidade, ou criar soluções mais escaláveis.

Na verdade, a grande sacada é que nem o Cérebro com seu intelecto superior, nem Pink com sua visão extremamente simplista dos problemas, quando sozinhos, conseguem chegar a algum lugar, eles só se dão bem, quando há uma parceria, ou seja, um ponto de equilíbrio entre soluções inteligentes e simples.

Esses dois perfis são o exemplo claro de comportamentos muito comuns em um projeto de software, pois por muitas vezes, projetamos verdadeiras naves espaciais quando precisamos apenas inicialmente de um simples carro com motor 1.0, porém (sempre têm um porém), pode haver momentos que será preciso nosso carro ter um motor 2.0 turbinado, aí entra o verdadeiro dilema, pois se pensamos exageradamente simples, podemos pecar por falta de visão ou sub-dimensionar uma solução, que também seria prejudicial ao sucesso de um projeto.

Sem contar que nossa solução deve estar alinhada com as regras de negócio do escopo da aplicação, e que a mesma permita a realização de mudanças ou atualizações de maneira rápida, quando for necessário, adaptando-se então de maneira efetiva e progressiva as necessidades do cliente.

Então, meu caro amigo, agora você deve estar se perguntando, “e agora quem poderá nos defender?”, e eu lhe digo “calma, calma, não criemos pânico..”, pois a solução para isso é: ter bom senso em todas as fases de um ciclo de vida de um projeto, ou seja, tenha em mente o seguinte exemplo: não é porque um médico tem conhecimento de sobra para fazer uma cirurgia neurológica, que ele vai usar essas mesmas técnicas e material para suturar um pequeno corte no dedo.

Portanto, conheça as tecnologias, busque conhecimentos, explore suas possibilidades, mas sempre lembre que, um projeto é um empreendimento, e que todas as partes querem ter bons resultados com ele, por isso, sempre que possível, privilegie soluções simples, pois dessa forma, você estará diminuindo a complexidade e muitas vezes, diminuindo o risco de fracasso que um projeto complexo por ter, e de quebra, você maximizará seu nível de produtividade, ou seja, use a tecnologia para o que ela realmente foi feita: ajudar e não prejudicar você, pense nisso.

Saiu na DevMedia!

  • Buscas semânticas com Elasticsearch:
    Elasticsearch é uma ferramenta de busca de alta performance. Com ela podemos armazenar grandes volumes de dados, analisá-los e processá-los, obtendo resultados em tempo real.

Saiba mais sobre Engenharia de Software ;)

  • Engenharia de Software para programadores:
    Ter boas noções sobre engenharia de Software pode alavancar muito sua carreira e a sua forma de programar. Descubra nesse guia tudo o que um programador precisa saber sobre a ciência que existe por trás dos códigos.