domingo, 15 de julho de 2007

Google e a Apropriação dos Meios de Produção


Considerando alguns feedbacks em relação ao post anterior resolvi revisitar algumas idéias que achei que não ficaram muito claras e lançar um desafio para mim. Este desafio é mais ou menos um JUnit da minha visão sobre a apropriação dos meios de produção na informática: como o Google apropria os meios de produção? Mas antes de mais nada seguem as minhas novas considerações sobre o que foi dito:

Eu não disse, no post passado, que acho certo que as empresas dependam de um (1) funcionário, depender das pessoas é muito diferente de depender de uma pessoa! Você deve ler a minha visão desta dependência da seguinte forma: a qualidade dos produtos das empresas de informática depende principalmente da qualidade dos profissionais que trabalham na construção dos mesmos!

Isto não quer dizer que a empresa deve se sujeitar a todos os caprichos dos seus funcionários. O que deve existir é uma separação entre responsabilidades: à empresa cabe prover infraestrutura e um bom ambiente de trabalho e ao funcionário cabe produzir artefatos com qualidade e ele deve ser cobrado por isto.

É relativamente comum você encontrar desenvolvedores que não têm o mínimo de cuidado com o que produzem. Fazem implementações e não testam nem mesmo na sua estação. Em uma situação como esta se você estiver contaminado com uma visão de processo industrial vai pensar que esta é uma falha no processo. Se a falha está na não verificação da implementação então basta criar um processo "verificar implementação". Isto porque, como os processos são impessoais, a culpa não pode ser do implementador! Se quem garante a qualidade é o processo então é óbvio que a falha é dele e não das pessoas. Será mesmo? Vale a pena ter uma pessoa que não tem compromisso nenhum com a qualidade na sua empresa? Sinceramente, se for diagnosticado que determinado profissional não tem este compromisso e não se mostra receptivo a mudar esta atitude ele tem que ser demitido! Os piores profissionais vão se esconder debaixo da tonelada de processos e vão fazer exatamente o que a empresa quer: vão transferir a responsabilidade da qualidade para os processos!

Também é incorreto interpretar que eu sou contra processos e documentação. As pessoas estão tão embotadas com a idéia de que os processos definem a qualidade que vêem quem pensa diferente como anarquistas que não gostam de se sujeitar a nenhuma regra e que não se importam com a qualidade do que fazem. Acredito nos processos e na documentação como formas muito eficientes para organizar o trabalho e facilitar a comunicação, mas acho que o máximo que a dobradinha processos/documentação pode fazer é evitar que trabalho seja desperdiçado. Na minha visão o máximo que esta dobradinha pode oferecer na informática é aproveitar bem o capital humano, mas você nunca vai conseguir criar um produto de informática que agregue mais qualidade do que a que as pessoas que trabalharam nele podem agregar. Não é possível criar qualidade do nada.

Quando questiono a alienação causada pela divisão do trabalho não quero dizer que todas as pessoas devem fazer de tudo no projeto, o trabalho pode e deve ser dividido; cada um tem as suas habilidades e deficiências. O que não se pode perder é a visão do todo. A frustração não vem da divisão em si, mas da perda de objetivo do trabalho. Para se ter uma idéia do quanto o trabalho transformador é importante para o ser humano basta dizer que uma das possíveis interpretações para representação de inferno na mitologia grega é a de um lugar onde se realizam trabalhos infrutíferos. Sísifo foi um dos mortais mais astutos e rebeldes contra os deuses. Ele conseguiu enganar e aprisionar até a morte, mas teve uma punição severa: foi condenado a rolar uma enorme pedra de mármore com suas mãos até o cume de uma montanha. Sempre que ele estava quase conseguindo cumprir a sua tarefa a pedra rolava para a base da montanha impulsionada por meio de uma força irresistível e o trabalho começava de novo. Não pode existir alegoria mais significativa para o trabalho alienado.

Devemos sempre tentar combater esta alienação no nosso trabalho. Se você é gerente, mostre aos seus funcionários como eles contribuirão para a sua estratégia gerencial; se você levanta requisitos explique para o seu analista projetista quais as expectativas do seu cliente; se você é analista projetista converse com o seu desenvolvedor sobre como o desenvolvimento está contextualizado dentro do sistema. Faça também o caminho inverso: cobre este tipo de posicionamento do seu gerente, do seu analista, etc. É este envolvimento que vai fazer com que o seu trabalho seja diferente do trabalho de Sísifo. O fim da alienação não quer dizer que você vai deixar de carregar pedras todo dia, a grande diferença é que Sísifo as carregava e não produzia nada e você vai produzir.

Agora retornando ao que motivou o post passado e este: a apropriação dos meios de produção na informática. A minha crítica não foi ao modelo capitalista ou a apropriação dos meios de produção. A minha crítica foi direcionada à apropriação dos meios de produção na informática com a definição de processos com uma visão industrial. A apropriação dos meios de produção é um fundamento do sistema capitalista. Em uma visão simplificada seria o diferencial que a empresa apresenta sobre o seu contingente de funcionários. É algo que a empresa oferece que o grupo de pessoas que trabalham para ela não pode oferecer se trabalhassem por conta própria. Bom, aí entra o desafio: como o Google apropria os meios de produção? O que o Google oferece que é mais do que simplesmente a soma das pessoas que trabalham para ele?

Bem, eu não conheço ninguém que trabalhe lá, então não dá para perguntar para os funcionários. Mas isto não é o mais relevante. Acho que dá pra ir pelo que ele vende junto com a sua marca e pela forma como ele se vende para a imprensa. Em nenhuma das duas fontes você encontra alguma referência a processos garantidores de qualidade, modelos de qualidade, etc.; o que já serve de base para concluir que não é pelo caminho dos processos com visão industrial. Mas por outro lado o ambiente de trabalho é sempre propagandeado como muito livre e incentivador da criatividade; e é nesta linha que vai o meu palpite. Eu acho que o Google apropria os meios de produção vendendo a idéia de que ele criou um ambiente de trabalho tão bom que vai atrair os melhores cérebros e que, somente em um ambiente como esse, eles vão poder exercer todo o seu potencial criativo.

Imaginando que você é um excelente profissional, onde você gostaria de trabalhar? Em um lugar onde os processos "garantem" a qualidade e o seu trabalho pode ser facilmente substituído? Ou em um lugar onde as condições para que o seu trabalho seja bem realizado sejam maximizadas? E você acha que as empresas que tem CMMI nível 5 são capazes de produzir os softwares que o Google produz?

2 comentários:

shikida disse...

oi

blog legal, boa proposta. continue firme!

muitas idéias e pouco tempo para tentar argumentar (é um post denso! será que eu escrevo um post de resposta e dialogamos de blog em blog?)

só uma pincelada

alguns processos ágeis sugerem que o código tenha um "dono" (como crystal clear por exemplo), justamente para compartimentar a responsabilidade em trechos de código

abraço

Kenji

Unknown disse...

Relendo as respostas do tema anterior, fico impressionado com a incapacidade de abstração dos leitores.
Essa análise marxista, no excelente sentido, da produção de software é por demais abrangente para ser simplesmente "aceita" ou "rejeitada". Constitui, na verdade, uma faceta da realidade importante demais para ser ignorada.