DEV Community

loading...

O Valor, o Hype e o Hypista no desenvolvimento de software

Henrique Lobo Weissmann (Kico)
Progr(amo), logo existo. Fundador da itexto.
・6 min read

Texto escrito em 2012

Semana passada participei de um evento que me fez perceber algo que até então achava ser óbvio para a comunidade de desenvolvimento de software e simplesmente não é. Sei que muitos vão rir de mim em um primeiro momento, mas que se dane: vou jogar aqui de uma vez: as pessoas não sabem ou simplesmente ignoram o que é valor.

O que é valor?

Na Filosofia o conceito de valor está ligado diretamente à justificativa de uma escolha. Por que é bom ser correto ao invés de mentiroso? O que justifica optarmos por esta estratégia ao invés daquela? Esta justificativa precisa se apoiar em fatos, o que torna a definição do contexto em que a questão se coloca fundamental.

Nosso contexto é o desenvolvimento de software e a justificativa o que será agregado. A escolha diz respeito à opção por uma ou outra tecnologia/estratégia/processo/mentalidade. A questão é: agregar para quem? Há duas possibilidades: o desenvolvedor ou o cliente.

Se for um ganho para o desenvolvedor, este se dá sob a forma de conhecimento que pode ser aplicado a trabalhos futuros. Trabalhos futuros são executados para alguém: o nome deste "alguém" é cliente. Sendo assim, aqui está a minha definição de valor dentro do desenvolvimento de software:

Valor é a justificativa por trás de uma escolha visando agregar positivamente ao cliente.

É muito óbvio né? Então vou dar dois exemplos que mostram o quão longe da questão estão as pessoas da nossa área. São casos comuns e possívelmente o leitor já se deparou com algo assim ao participar destes eventos voltados para a nossa área. É só apertar um pouquinho a sua memória (se bobear, vai me ver em um dos exemplos).

Situação 1: afogando o ouvinte em escolhas

Um dos assuntos mais quentes últimamente diz respeito ao desenvolvimento de aplicações 100% baseadas em JavaScript tanto do lado cliente quanto servidor. Para cada uma das camadas há inúmeras possibilidades, que nosso palestrante alegremente nos expõe.

Terminada a palestra, sabemos que há um leque imenso de opções disponíveis ao desenvolvedor. Duas perguntas normalmente não são respondidas:

  • O que meu cliente ganha quando uso esta tecnologia?
  • Visto que tenho tantas opções, qual o comparativo entre estas que justifique a opção de uma ou outra?

Resumindo: opções foram jogadas na sua cara, mas justificativas que lhe ajudem a optar por uma ou outra não. Ter um monte de opções não é ter valor: ter um monte de justificativas aplicadas a cada uma sim. Importante mencionar que justificativa pode ser tanto a favor quanto contra uma opção.

Situação 2: afogando o ouvinte em detalhes

Há um ditado popular que diz ser o melhor médico aquele que está doente. Bom: eu já me curei. A melhor maneira de ilustrar esta situação é com a seguinte pergunta:

Imagine que você precise vender uma linguagem de programação em 40 minutos: o que você falaria?

Nosso palestrante podería tentar vender Groovy por exemplo mostrando alguns detalhes interessantes da linguagem, como o fato de ser dinâmica, podermos escrever Java Beans com menos linhas de código ou expondo o fato de termos closures. Há uma infinidade de aspectos interessantes em Groovy! Um ouvinte poderia se levantar e soltar uma frase como esta:

Minha equipe já possuí uma boa experiência com nossa linguagem corrente e o que você descreveu conseguimos fazer também com alguns subterfúgios.

O que este questionador - que aos olhos do palestrante normalmente é visto como um ser desagradável - está na realidade pedindo é o valor por trás da linguagem/tecnologia. Para cada um dos detalhes apresentados o questionamento a respeito do porquê devemos trocar nossa linguagem por esta se aplica e é válido, ou seja, implora por valor.

Entenda: não há valor em detalhes técnicos, mas sim no todo. Existir uma sintaxe mais bonitinha que me permita codificar algo com menos linhas de nada vale se o custo para o aprendizado for muito alto para minha equipe e não agregar nada para meu cliente. Talvez uma resposta válida fosse que a produtividade da equipe aumentaria significativamente por causa dos detalhes, mas neste caso teríamos de lidar com os pontos negativos também, como ausência de mão de obra qualificada.

E lembre-se: não há bala de prata. Toda tecnologia tem pontos positivos e negativos. Ah, sobre isto é importante falar sobre o quê e quem está nos desviando do que interessa, o valor.

O Hype e o "Hypista"

Conforme você fica mais velho se torna mais claro quando o hype ocorre. Hype é a super valorização de determinado objeto, você o usa por que basicamente é O objeto. Repare que normalmente não há muitos pontos negativos no que é vendido. Ele é lindo, é usado por pessoas inteligentes, e você normalmente é uma pessoa muito atrasada se ainda não usa. Mas claro, você é um cara bacana certo? Não???

Normalmente é vendido por algum imbecil disfarçado de hipster. Aquele tipo de pessoa que desperta o desejo adolescente de fazermos parte de um grupo seleto composto só por pessoas divertidas, descoladas, brilhantes e bem sucedidas. E sim: o "valor" que os caras te oferecem é apenas o de ter a chance de fazer parte deste grupo. Ah: e o ganho pro cliente? O ganho pro cliente é ter um desenvolvedor ultra hipster!

É muito fácil detectar o Hypista: ele é um cara ultra cool e já chega dizendo que todo caminho diferente do que está vendendo é errado, mainstream, antiquado, etc. Repare: ele não vai ver valor nas outras opções, é uma variante do fan boy. O problema é que estes caras são ultra férteis e tem procriado horrores.

Você destrói o Hypista com uma única pergunta. Assim que ele terminar sua apresentaçao, basta soltar algo do tipo:

Muito bonito isto tudo o que você me mostrou. Sabe, minha equipe já está acostumada a trabalhar com o modo antiquado (faça uma careta para parecer cool, eles sempre acreditam). O que nosso cliente ganha com a nossa mudança para o seu brinquedo novo e qual o custo disto?

Pronto: você criou um inimigo e garantiu alguns segundos de diversão. Normalmente a resposta vai ser precedida por algo do tipo "Ah... ahn.... bom: veja bem... é... sabe...". Pronto: hypista detected. Outro aspecto interessante: repare que as apresentações destes caras normalmente são muito parecidas com aquelas vendas que vemos nos canais de compra. O bom profissional não vende, ele expõe valor. Jà parou pra pensar que houve alguma razão para criar todas aquelas opções descartadas pelo Hypista?

Importante: nem sempre o que está sendo vendido pelo Hypista é ruim. O problema é que o idiota não sabe o que é valor.

Concluindo

Da pra concluir duas coisas deste meu post. A primeira é que a questão do valor não é tão óbvia quanto pensamos. É preciso ter auto crítica e saber afogar o hypista que todos temos dentro de nós. Quando nos deparamos com alguma tecnologia ou linguagem nova é muito comum nos apaixonarmos por ela. O apaixonar-se normalmente é acompanhado de cegueira. Tá achando aquilo muito lindo? Seja como nós mineiros e desconfie: nada é tão lindo assim, sempre há um custo. Pra que aquele negócio serve de fato? Com o que já tenho já não resolvo o problema não? O custo vale à pena? Outro ponto importante é a quem o valor deve ser agregado: sempre, por mais que neguemos é o cliente direta ou indiretamente. Muitas vezes o valor de algo é sabermos que simplesmente não iremos usá-lo.

PS: e talvez eu esteja ficando meio rabugento com o tempo.

Discussion (0)