Coisas que aprendi participando de comunidades de SL

Atualizado: além de inúmeros erros de ortografia (estava usando uma máquina sem corretor ortográfico…) adicionei uma parte sobre a meritocracia, que julgo ser importante.

No ano passado ocorreu algo inusitado durante o PGCon Brasil 2007. Um dos palestrantes sumiu do mapa de repente e ficamos com um furo na grade do evento. Então, eis que o Sr. Diogo Biazus em tempo recorde prepara uma palestra intitulada “PostgreSQL Br – Manual de Uso“. A palestra foi um grande sucesso e abordou um assunto que me incomoda há tempos: como participar de comunidades de SL. Infelizmente os slides da palestra do Diogo não revelam a riqueza da palestra. É claro que em alguns minutos de preparação não seria possível fazer melhor, mas o fato é que eu gostaria de compartilhar um pouco do assunto com as pessoas que não estiveram no evento e combinar isso com a minha experiência pessoal.

<devaneio>
Este post começou com uma provocação de um grande colega, o mestre fike. Eu dizia no IRC que me sentia frustrado por ter encampado uma campanha desastrosa para numa ação específica da comunidade de PostgreSQL-BR. Aí veio a provocação: “E o que você aprendeu com isso?”. Eu tinha a resposta na ponta da língua. Na verdade eu ainda estou com as sábias palavras do Sr. Diogo Biazus ecoando na mente. Mas como diria o Beto Guedes: “A lição sabemos de cor, só nos falta aprender…”. E eu devo dizer que eu sou cabeça dura… então cá estou eu escrevendo novamente. Acredito que aprendo muito quando escrevo, já é uma prática antiga minha. Acho que todos deveriam escrever o que pensam. Ao escrever, (com suas próprias palavras, não copiando), compilamos uma série de idéias em algo que deve fazer sentido para quem lê. Ainda tenho muito o que aprender… acho que o dia em que eu conseguir traduzir o que penso com poucas e simples palavras, serei uma pessoa mais sabida. Menos é mais… sei disso, só não sei como fazer ainda. Quem sabe na minha próxima palestra no FISL não consigo diminuir o número de slides… falar menos e ensinar mais?
</devaneio>

Motivos para participar de uma comunidade de SL

A primeira coisa que aprendi é que existem vários motivos que levam as pessoas participar de uma comunidade. O que nem sempre é óbvio é que nem todos estão lá pelo mesmo motivo que você. Mais que isso, nem sempre você mesmo tem clareza dos seus motivos. Você pode entrar com um propósito, continuar por outros e sair por algo completamente alheio a tudo isso.

  1. Você quer aprender mais sobre a tecnologia X: este é o motivo que leva a maioria das pessoas a participar de uma comunidade. Veja que este não pode ser o único objetivo de todos, afinal, se todos quiserem apenas aprender, não haveria ninguém para ensinar. Mas a sede de conhecimento é algo que também tem as suas nuâncias. Há pessoas que querem aprender sobre determinada tecnologia por acreditarem que ela seja interessante por N motivos, há aqueles que são curiosos, há quem o faça por obrigação. Mais que isso, as pessoas estão acostumadas a aprender de formas diferentes. O conhecimento não é algo linear, não está contido em um livro ou em uma pessoa, ele existe e se recria a partir das relações humanas. Tarzan jamais aprenderia a falar, ler e escrever com livros numa ilha deserta. A relação entre os seres humanos é fundamental neste processo. Portanto as comunidades são espaços privilegiados para o aprendizado, pois é um ponto de encontro de pessoas dispostas a discutir sobre um assunto específico.
  2. Você quer conhecer gente que gosta da tecnologia X: fazer amizades com pessoas com interesses semelhantes é um bom motivo para se entrar numa comunidade. Isto pode significar querer aprender mais sobre a tecnologia X, mas pode significar encontrar pessoas com as quais você gostaria de tomar cerveja, conversar no IRC de madrugada ou filosofar a ermo por aí. Nerds, Geeks, Hackers, seja como se denomina ou se intitulam estas pessoas, elas gostam de se encontrar e se organizar em grupos, não apenas para aprender, mas para conviver. Este é um lado muito importante das comunidades que algumas vezes são subestimadas: a diversão. Algumas pessoas são atraídas pelo simples fato de ser divertido, pelo ponto de encontro privilegiado da comunidade.
  3. A vaidade, é um motivo muito comum. Você quer ser reconhecidas pelo seu talento, seu conhecimento, sua capacidade e seus feitos. Apesar da vaidade ser vista como um pecado, com um pouco de bom senso ela não chega a ser um problema e pode ser canalizada para uma grande virtude. O mundo perderia muito se os grandes gênios não compartilhassem com o mundo as suas grandes invenções. O fato é que a vaidade existe as comunidades convivem com ela o tempo todo. Há de se entender que um falso modesto pode ter uma presença parasitária enquanto um vaidoso sincero pode ser uma grande dádiva se alimentado corretamente. Por fim, lhes digo, o fato de montar um blog e exibi-lo ao mundo não tem uma ponta de vaidade?
  4. Você quer se projetar profissionalmente. Assim como o aprendizado é irmão da amizade e da diversão, a vaidade é quase que gêmea da ambição. Você quer melhorar de vida ou não? O segredo do sucesso profissional não está apenas no conhecimento ou na sua capacidade técnica, está também no seu networking. Não adianta ser puritano e achar que você não pensa em ter sucesso profissional. Uma boa comunidade sempre foi um espaço de livre trânsito entre profissionais de uma área específica. Ser conhecido entre os profissionais mais destacados de uma comunidade poder ser uma boa porta para novas oportunidades. De fato, quando alguém precisa de um profissional com um perfil específico, para um trabalho importante, buscar uma indicação de alguém de destaque da comunidade é um caminho seguro. Os profissionais chaves, assim como executivos, não são encontrados em classificados ou empresas de consultorias, são encontrados por indicação. Você nunca será indicado para uma posição assim se não for conhecido.
  5. Você quer ser altruísta e ajudar as pessoas de alguma forma. O Software Livre tem este chamariz que trás paz de espírito a pessoas de bom coração. Particularmente, este é um dos motivos mais citados ao se participar de uma comunidade e um dos menos realizados. Sejamos francos… numa lista de discussão de milhares de pessoas, quantos realmente ajudam com alguma coisa? Há no plano corporativo uma relação de “ganha-ganha”, que faz com que grandes empresas contribuam com algumas comunidades. Este tipo de investimento costuma ter retorno em termos de marketing interno e externo e também retorno em termos de redução de custos. Portanto, não podemos ignorar o fato de que o altruísmo tenha suas compensações. Mas de fato, ajudar pode ser gratificante, ainda mais se ele vier acompanhado com novas amizades e compartilhamento de conhecimento. É um trio realmente imbatível no plano do indivíduo.
  6. Você é um evangelizador e quer mudar o mundo. Isto é muito parecido com o altruísmo, mas tem diferenças notáveis. Os evangelizadores não querem apenas ajudar, eles querem mudar o mundo. O apelo do SL para este tipo de pessoa é muito comum. Discussões sobre patentes, licenças e coisas do gênero tem vazão plena entre os evangelizadores. Muitos acham os evangelizadores chatos, mas eles são importantes, pois são o contrapeso da comunidade. O evangelizador, se não se desgastar numa verborragia sem eco podem propor mudanças de qualidade significativas para a comunidade, podem humaniza-la. Sim, não se espantem, os chatos podem ser parte importante da humanidade.

Problemas comuns encontrados nas comunidades de SL

As pessoas estão no meio deste caldeirão fervilhante da comunidade. Muitas coisas bacanas e ruins acontecem neste meio. Cada vontade pode ter seu lado positivo e negativo, dependendo da sua dose, forma e momento histórico em que a comunidade se encontra. A fusão de forma e conteúdo é tão importante nas comunidades que deveriam haver estátuas erguidas em torno desta idéia. Você não pode ser vazio de conteúdo, você deve ter algo a dizer ou então se calar. Mais do mesmo não traz nada de interessante, assim trazer alguma informação nova é importante. Mas tão importante quanto a mensagem é como ela chega aos seus receptores. O mesmo conteúdo, quando lapidado em sua forma se traduz num recepção completamente distinta. Cada comunidade possui a sua própria etiqueta, suas regras e códigos de conduta. Estas regras nem sempre são uma camisa de força, podem até ser modificadas, mas devem ser seguidas.

Mesmo com forma e conteúdo em harmonia, exitem alguns problemas intrínsecos aos motivos que o levam a querer participar da comunidade:

  • Todos querem que você aprenda, mas você deve se esforçar um pouco para isso. Aprender exige esforço e disciplina. Se você não leu a documentação pertinente e não fez no mínimo uma busca no Google, então você não se esforçou. Não espere que as pessoas lhe ajudem sempre se você não dá valor ao esforço dos demais.
  • Pode acontecer de ninguém saber como lhe ajudar, ou não ter tempo para lhe ajudar no momento em que você precisou. Você não tem em absoluto o menor direito de reclamar se isso lhe acontecer. Mas se acontecer, pense antes de mais nada se você foi claro na sua mensagem, se se comunicou da FORMA adequada. Saber perguntar é uma arte. Formular uma pergunta é algo mais complexo do que parece. Paulo Freire dizia que “uma boa pergunta vale mais da metade da resposta”. Vale a pena ler o texto de Eric Raimond “How To Ask Questions The Smart Way“, ou sua versão traduzida.
  • O fato de você ter amigos na comunidade, não significa que você possa abrir mão de um mínimo de formalismo na comunicação. Quando você estiver apenas entre amigos, você pode relaxar, caso contrário, as regras da comunidade devem ser respeitadas. Utilizar a gramática minimamente correta, evitar gírias e muito respeito a todos é o mínimo que se espera. Cuidado com as brincadeiras, algumas pessoas certamente interpretarão você de forma equivocada. Em resumo, embora a descontração seja muitas vezes desejada, nem todos estão lá para brincar, muitos levam as coisas mais a sério.
  • A humildade costuma estar presente entre os grandes desenvolvedores. Mas os entusiastas muitas vezes se empolgam. Não banque o dono da verdade. Se deseja criticar um ponto de vista, o faça de forma fundamentada e com muito respeito. Jamais se autodenomine hacker, mestre jedi ou qualquer outro título honorífico. Se os outros o fizerem, muito bom, mas nunca se auto glorifique. Campanhas de autopromoção então, nem pensar. Mesmo que você consiga disfarçar, alguém vai descobrir e você será abominado.
  • Todos querem crescer profissionalmente, não apenas você. Não queira vender nada para ninguém, nem você mesmo. Você nunca será respeitado na comunidade se o fizer. Você pode divulgar seu currículo, produtos e serviços no seu blog pessoal, mas nunca em meio a comunidade, a não ser que você decida por exemplo patrocinar a comunidade. Banners em sites, quotas em eventos e outras formas de doações são válidos, mas é só.
  • Se você quer ajudar, o faça de forma competente. Ensinar por exemplo, exige um mínimo de preocupação com a didática, com forma e conteúdo. O seu receptor pode não estar entendendo patavinas daquilo que você quer explicar. Já que está ajudando alguém, o faça da melhor forma possível. Isto não significa que você tenha que dar tudo mastigado na boca, mas que sua mensagem tem de ser clara e elucidativa. Pode ser um link para um artigo ou um capítulo da documentação, mas tem de ser acompanhado de um pequeno comentário explicando o que esperar daquele link. É comum acompanhar longas conversas sem pé nem cabeça que poderiam ser resolvidas com uma pequena explicação um pouco mais clara.
  • Software Livre não é time de futebol. Se você gosta de determinada tecnologia, você não deve querer empurra-la em detrimento de outras. Você pode comparar, mostrar situações onde ela leva vantagens e desvantagens, mas não deve desmerecer as outras. Uma coisa é dizer que a tecnologia X é melhor e Y não presta. Outra coisa é dizer que num cenário A, a tecnologia X lhe atende com N vantagens. Veja, a forma é tudo. Se você simplesmente gritar que X é melhor que tudo, você não estará contribuindo com o ouvinte e ainda estará denegrindo a imagem da tecnologia X que terá fama de time de futebol.
  • Ajude com o que você pode. Se você não tem pique para dar conta de uma determinada tarefa, não se proponha a ela. As pessoas passarão a contar com você e se você não der conta, a comunidade será prejudicada se você não der conta do trabalho. Há um ditado para isso: “Prometa pouco, faça muito e você será lembrado. Prometa muito, não cumpra e você será esquecido… ou pior, será lembrado!”
  • A comunidade é como uma pessoa que nasce cresce, se multiplica, envelhece e morre. Você tem de saber avaliar o momento das coisas acontecerem. Por mais que você tenha uma visão além da comunidade, ela andará conforme o seu rítimo próprio e não há nada que você possa fazer contra isso. Você não pode apressar muitos as coisas, com o risco de desgastar a comunidade e causar um ataque cardíaco em plena adolescência. Um grupo muito novo precisa amadurecer e crescer de forma gradual. Por mais que você já tenha participado de outras comunidades mais maduras e tenha expectativas grandes, isto não se traduzirá em ação se você não encontrar um grupo de pessoas com expectativas semelhantes e mais: disposição para colocar em ação seus planos. Acredite, as pessoas crescem junto com a comunidade, você também crescerá.
  • Nunca espere o reconhecimento da comunidade. Não existe um momento onde a comunidade se reúne para saudar os mais valorosos membros da sua comunidade. Não existem prêmios, bailes de gala ou fogos de artifício. Não cobre dívidas de gratidão. Não espere sequer um “muito obrigado’. Apenas esteja lá e faça o melhor que você está disposto a fazer.
  • A maioria das comunidades tem uma estrutura muito informal. Pouquíssimas tem uma estrutura legal que a ampare, com cargos e eleições. Portanto não espere ser considerado um “membro oficial”. Algumas comunidades crescem a um ponto de criar uma estrutura burocrática maior, mas são poucas comunidades que o fazem e mesmo assim, você não deve esperar ser condecorado ou consagrado membro oficial. Alguns dos maiores e mais respeitados membros de comunidades tem um vínculo muito frágil ou até inexistente com o seu aparato burocrático.
  • Não brigue. Não alimente os trolls. Os conflitos aparecem com alguma frequência, mas o seu impacto é inversamente proporcional a capacidade das pessoas ignora-las. O tempo perdido com brigas poderia ser gasto com coisas muito mais úteis como tomar cerveja com os amigos, passar mais tempo com a família ou até ajudar mais a sua comunidade.
  • Conheça os meios de comunicação e saiba utiliza-los. A maioria das comunidades é geograficamente dispersa. Se você domina o Inglês, você está em contato com o mundo inteiro, o local onde você está não importa. A ferramenta mais importante de comunicação é o e-mail. Parece simples de usar, mas as pessoas cometem erros terríveis quando participam de listas. Alguns erros são até perdoáveis, mas em geral os erros afastam os seus leitores. Leia uma vez na vida a RFC 1855. Outras ferramentas como IRC, Wiki, TRAC, CVS, CMS e outros são fundamentais para você participar de forma efetiva. Aprenda, seja feliz e deixe os demais felizes também.
  • Os iniciantes costumam levar puxões de orelha quando começam a ajudar. Acontece que não basta ajudar, é imprescindível ajudar da forma correta. Revisar o código/documentação/tradução/whatever de um novato dá trabalho para os mais experientes. Um trabalho mal feito dá mais trabalho para o revisor do que se ele mesmo o tivesse feito des do início. Há regras severas para incorporar alterações num código complexo. Até o Sr. Marcelo Tosatti levou vários puxões de orelha antes de ter seus primeiros patches aceitos.

Participe

Se você é uma daquelas pessoas que está entrando agora, está com todas as boas intensões do mundo, saiba que há inúmeras formas de se colaborar com uma comunidade. A mais importante dela é sem dúvida ajudar a melhorar o software. Lembre-se que por mais que sejam importantes outras contribuições, a comunidade não existiria se o software não existisse. Esta deveria ser a meta de todos os membros da comunidade. No entanto segue algumas coisas que você pode fazer:

  • Ajude a escrever o software;
  • Se você não sabe programar, ajude a documentar;
  • Se não sabe documentar, ajude a traduzir,
  • Se não sabe traduzir, ajude outras pessoas a utilizar,
  • Se não sabe utilizar, ajude a divulgar,
  • Se não sabe divulgar ajude a testar.

Meritocracia é a chave da participação na comunidade. Meritocracia – em comunidades de SL – significa que quem faz tem mérito e quem não faz não tem. Simples assim. As decisões são tomadas por aqueles que fazem. É muito comum as pessoas ficarem esperando que algum líder, cacique, chefe, mentor, ou seja lá o que for, delegar uma tarefa para você. Surpresa… isso não acontece. Você deve se candidatar às tarefas e não esperar que alguém lhe escolha para isso. Na maioria das vezes você faz alguma coisa e só depois apresenta para a comunidade o resultado do seu trabalho. É simples assim:

  • Você tem uma idéia para fazer algo, ou verifica uma lista de coisas que a comunidade gostaria de fazer. A maioria das comunidades mantém um ‘todo list’, conheça ela, você pode ter algumas idéias a partir de lá. É comum também haver uma lista de coisas indesejadas, que não serão bem recebidas se você propor. Se a comunidade em que você quer atuar não tiver nenhum destes recursos, vale a pena consultar o histórico das suas listas de discussão ou fóruns para verificar se o assunto já foi debatido antes.
  • Verifique se já existe alguém fazendo isso. Se tiver, você pode ajudar a pessoa ou grupo que esta fazendo isso ou escolher outra coisa para fazer. Pesquise bem antes de se lançar a ação. É muito comum você achar que teve uma idéia nova e na verdade ela já estar implementada, mesmo que em algum canto obscuro da Internet. Há muitas pessoas querendo ajudar, mas a maioria quer ter a glória de fazer algo só seu, ao invés de ajudar em algo já existente – basta pensar nas centenas de distribuições Linux existentes que isto começa a fazer muito sentido. Isso é improdutivo e causa uma grande confusão na comunidade – pense que criar algo novo é mais fácil do que mantê-lo atualizado.
  • Faça! Se for uma tarefa que você pode cumprir sozinho, faça e só mostre quando você tiver algo funcional em mãos. Se a tarefa depende de outras pessoas, combine bem antes e tenha certeza que todos estão dispostos a faze-lo. Não divulgue a iniciativa se você não tiver certeza que terá condições de cumprir. Vale a máxima: “talk is cheap, show me the code”.
  • Antes de mostrar o que você fez, verifique o calendário da comunidade. Há momentos em que a comunidade não está aberta para determinadas contribuições. Há épocas em que algumas prioridades são estabelecidas. Quando a comunidade está prestes a lançar uma nova versão de um software, os testes são importantes e código novo é indesejado. A organização de grandes eventos também costuma movimentar grande parte da comunidade para algumas ações, em detrimento de outras ações de divulgação. Bom senso é fundamental.
  • Mostre o que você fez, esteja aberto a críticas e contribuições. Aqui você deve ser muito cuidadoso na forma de se comunicar. As pessoas devem entender exatamente o que você fez, devem se sentir confortáveis e estimuladas a analisarem e criticarem o seu trabalho. Seu trabalho só vai crescer se as pessoas incorporarem ele na comunidade, e isto depende da qualidade do seu trabalho e da forma como ele foi apresentado. Não estrague tudo com uma apresentação tosca ou arrogante.

É muito comum algumas pessoas participarem de várias ações ou se especializar em uma tarefa. Existem pessoas cuja participação vem em ondas, participando ativamente por um tempo e desaparecendo depois. Existem pessoas que gostam de algumas tarefas e odeiam outras. Uma coisa universal é que todos erram. Eu falhei miseravelmente em vários momentos. Acho que algumas pessoas já ficaram um tanto aborrecidas com os meus erros. Já venho errando há alguns anos… espero estar apto a acertar mais e cometer novos erros no futuro.

Compartilhe

Você pode gostar

pg_hba.conf

Introdução O arquivo pg_hba.conf (PostgreSQL Host-Based Authentication) é uma peça fundamental na configuração de segurança de qualquer instância PostgreSQL. Ele define as regras de autenticação

Tuning de SO (no Linux)

Introdução Tuning refere-se ao processo de ajustar e otimizar o desempenho de um sistema, software ou aplicação. A otimização do sistema operacional é uma etapa

Tipos de cargas dos bancos de dados

Introdução Cargas de dados referem-se aos diferentes tipos de operações e transações que um banco de dados deve processar. Essas cargas variam conforme o tipo

plugins premium WordPress