Muitas pessoas talvez não tenham entendido minha posição no artigo anterior Mea Culpa: Organizações Democráticas não Funcionam. Recomendo que tentem ler o artigo anterior com calma para entender o conceito correto de Democracia. Mas para complementar devo explicar. O maior problema que todos tem é acreditar que “democracia” é a única e melhor forma de governar ou, mais genericamente, decidir qualquer coisa porque “a maioria”, “o povo”, “as massas” sempre tem razão e o que foi decidido coletivamente deve prevalecer. E este é o maior erro de todos os tempos.

Resumindo o que disse antes: Liberdade é importante, defender a liberdade é importante, e a liberdade mais importante que deve ser defendida é do indivíduo. A maioria jamais deve tiranizar a minoria. E a menor minoria sempre é o indivíduo. Se um indivíduo é privado de sua liberdade, não existe liberdade para ninguém.

Isso dito, num estado de liberdade, todos tem direito a formular e expressar suas opiniões. A confusão é quando uma opinião é proferida por uma “maioria”. Democraticamente falando, essa “opinião” parece ter muito valor. E isso é outro grande erro.

Novamente, vamos definir:

  • Opinião: é uma visão ou julgamento formado sobre alguma coisa, não necessariamente baseado em fato ou conhecimento.
  • Verdadeiro: de acordo com fato ou realidade. Apurado, exato. Real.
Opinião não é fato nem verdade.

E opinião de uma maioria jamais será automaticamente uma verdade. Qualquer opinião de uma maioria jamais será maior do que a verdade comprovada proferida por um único indivíduo, não importa o volume dessa maioria.

Isso é importante. Justamente por isso eu disse que a melhor forma de pensar em organizações não é de forma “puramente” democrática. No nosso nicho particular de desenvolvimento de software, muitos assumem que agilistas e métodos ágeis são “democráticas”. Se você ler na própria Wikipedia sobre Scrum, teremos esta definição para “equipe”:

Uma Equipe é responsável por entregar o produto. Uma Equipe é tipicamente formada por 5 a 9 pessoas com capacidades cross-funcionais que realizam o trabalho propriamente dito (análise, design, desenvolvimento, teste, comunicação técnica, documentação, etc). É recomendado que a Equipe seja auto-organizada e auto-liderada, mas normalmente trabalhe com alguma forma de projeto ou gerenciamento de equipe.

Em nenhum momento diz que a Equipe pode ser anárquica. Mas as pessoas lêem de forma errada o conceito de auto-organização como “fazemos como queremos”. E isso está completamente errado.

É o mesmo problema de um sistema de governo puramente democrático. A maioria pode de fato decidir entre si a implementação de alguma lei, ou princípio, ou verdade. Por exemplo, um princípio inviolável e indiscutível é que um indivíduo deve conseguir manter para si os produtos do seu próprio trabalho. A comunidade pode decidir, democraticamente, se a implementação será na forma de um corpo policial cujo custo será dividido igualmente entre todos, por exemplo.

Esse é o ponto que falta quando falamos em organizações ou equipes ágeis. As equipes podem decidir democraticamente como executar a implementação, porém todos precisam entender que existem princípios invioláveis que limitam quais decisões essa “democracia” pode tomar. Voto ignorante em grande volume, para mim, significa apenas um grande volume de ignorância. Quer definir o que é verdade? Estude, pesquise, demonstre, prove. Basta um único indivíduo com a demonstração correta para bater destroçar qualquer opinião de qualquer maioria, mas nunca o oposto.

Por exemplo, o objetivo de uma empresa é obter a maior quantidade de lucro possível. Não há outro objetivo em um trabalho que não seja ter lucro. Portanto, não importa se você faz o software mais bem feito – na sua opinião pessoal, diga-se de passagem, o que não torna isso um fato – se ele gera prejuízo em vez de lucro.

Lucro é uma premissa, mas não é a única. Lembre-se da definição de “Equipe” anterior. Uma equipe deve ser “responsável”, ou seja, ela deve se comprometer em entregar um projeto da forma como o cliente espera, incluindo o gerenciamento dessa expectativa (que vou explicar em mais detalhes em outro artigo).

Um projeto encomendado a uma equipe não pertence à equipe, pertence a quem está pagando por ele. Uma equipe dita ágil, que se responsabiliza por um projeto, não está se responsabilizando meramente em codificar o produto pedido, mas sim em cuidar das expectativas do cliente, do começo ao fim.

Mais ainda, o objetivo de um projeto não é fazer um software, é atingir um resultado ao cliente. Ou seja, ao cliente não importa se um software usa técnicas X ou Y que aumentam sua qualidade – qualidade é uma característica trivial já esperada por quem encomenda – o valor do cliente vem do resultado obtido por esse software. Ou seja, o objetivo de um projeto de e-commerce, por exemplo, não é no software de e-commerce em si, mas nas vendas geradas. Se fizer o software mais avançado do mundo, com as melhores arquiteturas, melhores tecnologias, mas que nunca vendeu um único produto, ele não vale nada. Já um e-commerce feito com as piores tecnologias, com todas as gambiarras já documentadas, mas que efetivamente ajudou a gerar 1 milhão de vendas diretas ao seu cliente, é infinitamente superior, inquestionavelmente.

Um desenvolvedor de software deve prezar por seu trabalho técnico. Isso é ótimo e deve continuar. Um arquiteto de sistemas preza por sua análise e arquitetura. Também nenhum problema. Um agilista preza por seus processos e rituais. Cada profissional deve realmente tentar sempre o melhor no que faz. Porém, nenhuma das atividade específicas de cada um é mais importante do que o do outro e nenhuma delas é um fim em si próprio. Ou seja, um desenvolvedor de software preocupado única e exclusivamente no seu código, não importa a qualquer custo, é um péssimo profissional.

E aqui entra a diferença entre um profissional e um amador: ética profissional.

O profissional carrega responsabilidade moral adicional sobre a população em geral e a sociedade. Isso porque profissionais são capazes de realizar e agir em decisões informadas em situações onde o público em geral não conseguiria, porque não tiveram treinamento relevante. Por exemplo, uma pessoa normal do público não poderia ser responsável por falhar em agir em salvar a vítima de um acidente de carro porque ele não conseguiu realizar uma traqueostomia de emergência. Isso é porque ele não tinha conhecimento relevante. Em contraste, um médico totalmente treinado (com o equipamento correto) seria capaz de realizar o diagnóstico correto e realizar o procedimento e nós julgaríamos como incorreto se ele ficasse parado sem ajudar nessa situação. Você não pode ser julgado culpado por não realizar algo que não tem capacidade de fazer. Éticas são regras e valores usados em um ambiente profissional.

A tradição da medicina, por exemplo, está na herança do Juramento de Hipócrates, por milênios sendo atualizada e a seguinte a versão moderna:

  • Juro cumprir, o melhor que minha habilidade permitir, esta aliança:
  • Respeitarei os ganhos científicos duramente conquistados por aqueles médicos cujos passos eu sigo, e compartilharei tal conhecimento com prazer como é meu àqueles que seguirão.
  • Aplicarei, para benefício do doente, todas as medidas requeridas, evitando as facas de dois gumes do tratamento excessivo e niilismo terapêutico.
  • Lembrarei que existe arte à medicina assim como ciência, e que o calor, simpatia e entendimento pode superar o bisturi do cirurgião ou a droga do químico.
  • Não me envergonharei em dizer “Eu não sei” nem falharei em chamar meus colegas quando as capacidades de outros são necessários para o recuperamento do paciente.
  • Respeitarei a privacidade de meus pacientes, pois seus problemas não são reveladas para mim para que o mundo saiba. Mais especificamente devo tratar com cuidado em casos de vida ou morte. Se me é dada a tarefa de salvar uma vida, muitos agradecimentos. Mas também pode estar dentro do meu poder retirar uma vida; esta responsabilidade incrível deve ser encarada com grande humildade e consciência da minha própria fragilidade. Acima de tudo, eu não devo brincar com Deus.
  • Me lembrarei que eu não trato um gráfico de febre ou um câncer em crescimento, mas um humano doente, cuja doença pode afetar a família e estabilidade econômica da pessoa. Minha responsabilidade inclui esses problemas relacionados, para tratar adequadamente o doente.
  • Previnirei doença sempre que puder, pois prevenção é preferível à cura.
  • Me lembrarei que continuo sendo um membro da sociedade, com obrigações especiais com todos os meus companheiros humanos, aqueles sãos de mente e corpo, assim como os enfermos.
  • Se eu não violar este juramento, que eu possa desfrutar a vida e a arte, respeitado enquanto viver e lembrado com afeição após. Que eu aja somente para preservar as finas tradições do meu chamado e que eu aprecie por muito tempo a experiência de curar aqueles que procuram minha ajuda.

Não é nem de longe uma versão “definitiva”, mas vou aproveitar para adaptar de forma muito próxima ao Juramento de Hipócrates o que poderia ser um rascunho de juramento para programadores, apenas para deixar clara a idéia de que todo profissional tem responsabilidades maiores do que meramente sua atividade geral de trabalho:

  • Juro cumprir, o melhor que minha habilidade permitir, esta aliança:
  • Respeitarei os ganhos científicos duramente conquistados por aqueles programadores cujos passos eu sigo, e compartilharei tal conhecimento com prazer como é meu àqueles que seguirão.
  • Aplicarei, para benefício do cliente, todas as medidas requeridas, evitando as facas de dois gumes da aplicação excessiva de tecnologias ou preconceito por marcas ou tecnologias que desconheço.
  • Lembrarei que existe arte no desenvolvimento de software assim como ciência, e que o calor, simpatia e entendimento pode superar o código do programador ou a diagrama do analista.
  • Não me envergonharei em dizer “Eu não sei” nem falharei em chamar meus colegas quando as capacidades de outros são necessários para o benefício do projeto do cliente.
  • Respeitarei a privacidade de meus clientes, pois seus problemas não são reveladas para mim para que o mundo saiba. Mais especificamente devo tratar com cuidado projetos de minha empresa ou meus clientes. Se me é dada a tarefa de entregar um projeto, muitos agradecimentos. Mas também pode estar dentro do meu poder recuperar um projeto fracassando; esta responsabilidade incrível deve ser encarada com grande humildade e consciência da minha própria fragilidade. Acima de tudo, eu não devo brincar em serviço.
  • Me lembrarei que eu não lido com um arquivo de código ou uma ferramenta de edição, mas um projeto, cuja resultado pode afetar a estabilidade econômica do cliente, dos funcionários da empresa do cliente e suas famílias. Minha responsabilidade inclui esses problemas relacionados, para desenvolver adequadamente o projeto.
  • Previnirei bugs e problemas técnicos sempre que puder, pois prevenção é preferível à correção.
  • Me lembrarei que continuo sendo um membro da sociedade, com obrigações especiais com todos os tipos projetos, aqueles que eu posso começar do zero do meu jeito, ou os que herdar com estilo de outros.
  • Se eu não violar este juramento, que eu possa desfrutar a vida e a arte, respeitado enquanto viver e lembrado com afeição após. Que eu aja somente para preservar as finas tradições do meu chamado e que eu aprecie por muito tempo a experiência de desenvolver projetos àqueles que procuram minha ajuda.

Meu ponto com esse texto é relembrar o seguinte:

  • parem de usar “democracia” com conotações populistas. Não é meramente a “equipe” que deve ser “protegida” ou “beneficiada”, mas sim o resultado do cliente e seus projetos. Nunca se esqueçam disso.
  • certos princípios são invioláveis e não estão abertos à votação, objetivos de negócio numa ponta, ética profissional na outra.
  • todos tem direito a ter e expressar opiniões pessoais, mas opiniões são apenas isso: opiniões, não fatos. E votos jamais transformarão opiniões em verdades. 2 + 2 será 4 não importa quantas pessoas votem dizendo que é 5.
  • demonstrem um pouco de respeito e dignidade à sua profissão. Você trabalha, de fato, em benefício próprio, mas nunca causando prejuízo aos outros. Vou repetir isso ad nauseum: você só tem trabalho porque há alguém disposto a pagar por ela, seja ético, seja profissional.

Sinceramente, me incomoda muito pensar num mundo onde uma maioria ignorante pode decidir, por votação, que a terra é chata, que simpatias funcionam, que um funcionário “merece” um salário compulsoriamente maior do que uma empresa tem condições de pagar, que o divertimento de um “profissional” está acima de suas responsabilidades. Jurem a si mesmos – não a mim ou a um terceiro qualquer – que serão profissionais, ou desistam de trabalhar na mesma área que nós para parar de nos envergonhar, nós que levamos isso a sério.

comentários deste blog disponibilizados por Disqus