Pratique o Egoless Architecting - Você não é sua Arquitetura

Olá pessoal, tudo certo?

Recentemente li um artigo do autor Ted Neward, da revista CODE, que gostei muito! No artigo, Ted comenta sobre algumas recomendações para o novo desenvolvedor, depois de alguns anos longe do mundo do código.

Imagine-se entrando no mercado de desenvolvimento hoje, após 3, 5 ou 7 anos distante. O que você deve focar primeiro para retomar suas atividades?

Existem diversas boas dicas de assuntos que devem ser vistos, como Testing, Dynamic Languages, Metodologias Ágeis, Programação em Pares, SCRUM, Orientação a Serviços, entre outras. Nos últimos anos, vimos realmente uma mudança de paradigma em todos esses tópicos, o que mudou o comportamento de muitos desenvolvedores do mercado, independente da plataforma alvo (seja Microsoft, Java ou outra).

Por exemplo, em um projeto recente no qual participei, fiquei impressionado com a qualidade dos projetos de teste que a equipe de desenvolvimento criou. Não interessava se a empresa colocava o teste como regra a ser seguida, percebi uma certa “naturalidade” em todos os desenvolvedores participantes. Hoje, algumas empresas exigem até que o desenvolvedor justifique por que não fazer baterias de testes para um certo projeto. Tempos atrás, o teste era algo visto como caro e mesmo “chato” para muitos desenvolvedores.

Mas o que achei genial no artigo foi o comentário sobre Egoless Programming. O que um novo desenvolvedor deve aprender antes de entrar no mercado? Ele deve praticar o Egoless Programming!

O termo foi definido por Jerry Weinberg em seu livro “The Psychology of Computer Programming”.

The Psychology of Computer Programming
Ref.: https://www.amazon.com/exec/obidos/ASIN/0932633420/codinghorror-20

Pessoalmente, antes de entrar para a Microsoft, participei de diversos projetos como desenvolvedor e em alguns deles, o egoless programming era uma orientação, seja pelo conhecimento do gestor ou pela integração da equipe. O que era importante era o código, não o codificador! O que precisava ser dito sobre o código era dito, sem ofender o codificador!

E essas eram regras presentes nos 10 mandamentos do egoless programming, que vemos a seguir:

1. Entenda e aceite que você irá cometer erros.

2. Você não é seu código.

3. Não importa o quanto seja bom seu "karate", alguém sempre irá saber mais do que você.

4. Não reescreva código sem consultar outras pessoas.

5. Trate as pessoas que sabem menos do que você com respeito, deferência e paciência.

6. A única constante no mundo é a mudança.

7. A única verdadeira autoridade fundamenta-se no conhecimento, não na posição.

8. Lute pelo que você acredita, mas graciosamente aceite a derrota.

9. Não seja "o cara na sala".

10. Critique o código ao invés da pessoa. Seja gentil com o codificador, não com o código.

Se você não conhecia essas regras, acredite: elas devem ser praticadas por todo desenvolvedor que pretende trabalhar bem em equipe e com colaboração, características muito valorizadas hoje em dia pelo mercado.

Aproveitando o post, gostaria de propor uma nova prática: a “Egoless Architecting”. (nada muito original, certo?)

Mas creio que os mesmos princípios do egoless programming são válidos para o egoless architecting, seja para arquitetos de TI, soluções, software, infraestrutura ou corporativos.

Assim, segue aqui os 10 novos mandamentos do Egoless Architecting”:

1. Entenda e aceite que você irá cometer erros.

2. Você não é sua arquitetura.

3. Não importa o quanto seja bom seu "karate", alguém sempre irá saber mais do que você.

4. Não refaça sua arquitetura sem consultar outras pessoas.

5. Trate as pessoas que sabem menos do que você com respeito, deferência e paciência.

6. A única constante no mundo é a mudança.

7. A única verdadeira autoridade fundamenta-se no conhecimento, não na posição.

8. Lute pelo que você acredita, mas graciosamente aceite a derrota.

9. Não seja "o cara na sala".

10. Critique a arquitetura ao invés do arquiteto. Seja gentil com o arquiteto, não com a arquitetura.  

Brincadeiras a parte, o que você acha? Pratique você também o Egoless Architecting e seja feliz! Smile
e leia Jerry Weinberg.

Por enquanto é só! Até o próximo post :)

Waldemir.