layout | title | permalink |
---|---|---|
page |
Belief |
/h3/belief/ |
Vivemos em uma constante ebulição de informações, ferramentas, linguagens, tendências, metodologias e tecnologias. Em meio a tantas opções, às vezes é fácil se perder na complexidade sem sequer se dar conta.
Minha crença é que três pontos devem sempre estar presentes:
- Simplicidade
- Forma
- Função
Esses são os três pilares que podem levar um projeto ao sucesso (ou ao fracasso, caso não estejam presentes).
###Simplicidade
A simplicidade é um componente chave de um projeto, garantindo sua manuntenabilidade e extensibilidade. Palavras difíceis de ler, mas de grande valor.
E quando me refiro à simplicidade a um projeto estou falando de todos os componentes: comunicação, design, testes e códigos. Um produto é a junção de todos esses fatores e se qualquer um deles for fraco, mais dia menos dia, seu projeto ruirá.
Em desenvolvimento sentimos sempre o ímpeto de seguir as últimas tendências e as últimas tecnologias. Mas será que o framework X é realmente necessário pro projeto? A arquitetura poderia ser mais simples? Qual o mínimo viável que resolve o problema?
###Forma
Quando pensamos em forma é natural que o pensamento se volte para o design. Uma tela lambível e simples é o supra-sumo para um usuário (ainda que ele não se dê conta disso). Por isso, sempre me pergunto: a ação X poderia ser realizada com menos cliques? Como a experiência Y poderia ser simplificada?
Mas o design não é apenas visual: temos o design de arquitetura, de solução, de código. O que está escrito precisa ter forma, ser compreensível e passível de extensão. A pergunta chave aqui: a forma como estou fazendo é a ideal?
###Função
Por fim, seja uma metodologia, uma classe em Java ou uma tela de um sistema é necessário que haja uma função. Que seja útil e pré-definida.
Ainda que se tenha uma ótima arquitetura, códigos maravilhosamente bem-escritos e uma interface que dê vontade de lamber a tela, todo o trabalho será em vão se a função inexistir ou se o seu impacto for insignificante.
###Mixando tudo
Simplicidade. Forma. Função.
Seja no design, no código, na comunicação, nas metodologias... onde for.
Acordou inspirado e está codando um sistema matador? Que tal responder algumas perguntas?
- O que estamos fazendo é simples? Os frameworks que estamos usando são realmente necessários? E a arquitetura? Poderia ser ainda mais simples?
- A forma como estamos arquitetando e escrevendo códigos é a ideal? Poderia ser melhor?
- Nossa arquitetura tem um propósito bem definido, uma função?
E sobre o design?
- Ele é simples o bastante para que o usuário tenha uma excelente experiência?
- Os elementos são visualmente agradáveis? Tem forma? Dá vontade de lamber a tela?
- O design serve a um propósito tendo uma função?
Nem sempre conseguimos atingir em cheio à todos os pontos, e ainda há muito a ser melhorado e estudado em cada um desses pilares. Mas se cada membro de uma equipe de produto pensar (ainda que bem pouquinho) nesses três pontos um horizonte azul e ensolarado começa a se desenhar.
E todo mundo tem a ganhar: usuário, cliente e equipe.