Criação de comunidades OpenSolaris

OpenSolaris é uma comunidade de comunidades, e a criação dessas comunidades requer tempo e esforço. Não existe outra maneira. Passar código adiante e afastar-se é perder a oportunidade de envolver desenvolvedores e usuários do mundo todo. No momento, a maior comunidade OpenSolaris se encontra no opensolaris.org, mas até mesmo ela agora é composta de muitas comunidades menores, na forma de grupos de comunidades, projetos e grupo de usuários. Também existem outras comunidades florescentes que estão iniciando suas atividades com sites em mercados emergentes e mesmo distribuições inteiras, que não têm necessariamente conexões diretas com as operações do opensolaris.org. A comunidade OpenSolaris já não é mais monolítica e baseada em uma única região geográfica. Ela está crescendo e se diversificando em todo o mundo.

À medida que a Sun faz a transição de projetos de desenvolvimento fechados para abertos no opensolaris.org ou simplesmente inicia novos projetos abertos desde o início, muitas pessoas perguntam: "Como criar uma comunidade?" e/ou "Por que criar uma comunidade?" e/ou "Como podemos crescer?". Bem, eis aqui minha tentativa de responder a essas perguntas de um ponto de vista não técnico. A lista de questões abaixo não é necessariamente exaustiva (e não somos necessariamente grandes especialistas em algumas dessas atividades). Trata-se apenas de um conjunto de questões para consideração caso você deseje criar uma comunidade de pessoas em torno do seu projeto.

Criação de uma comunidade
  1. Planejamento e criação: a primeira coisa a ter em mente é que a criação de uma comunidade é um processo ativo e cíclico de planejamento e de implementação. Algumas pessoas se mostram renitentes a essa noção, porque acham que as comunidades devem crescer de maneira orgânica. Porém, suspeito que, na verdade, a maioria das comunidades cresce em função da mobilização direta dos participantes ativos para atrair novas pessoas, bem como do gerenciamento de recursos de diversas fontes, sejam elas corporações, fundações ou indivíduos. Além disso, acredito que o conceito de criação de comunidade se baseia fundamentalmente em dois princípios simples: (1) comunicações abertas e (2) desenvolvimento aberto. Basicamente, trabalhar de modo aberto e falar de modo aberto. E, se você realmente desejar crescer, precisará fazer três coisas muito bem: (1) conversar com muitas pessoas o tempo todo, (2) incluir essas pessoas no seu trabalho e (3) proporcionar os meios necessários para que elas possa contribuir criando e compartilhando seu trabalho com outras pessoas. Dessa forma, o próprio processo de trabalho ajudará a criar a comunidade porque gera mais comunicações e mais trabalho. E tudo em torno de um projeto. Mas toda criação ativa começa com um plano. Escreva um. Depois, comece a criar. Em seguida, atualize o plano. Repita o processo.

  2. Transparência: saia em campo. Não é possível criar uma comunidade atrás de um firewall. Conversas, listas, código-fonte, binários, documentação, ferramentas, pessoas, infra-estrutura, arte-final -- disponibilize tudo isso para que cada pessoa tenha uma boa oportunidade de participar e contribuir. Se não houver nada em torno do que juntar forças, ninguém se concentrará para um esforço e você não terá uma comunidade. E, se você se limitar a conversar apenas com o pessoal interno, ninguém de fora saberá sequer da sua existência. Esse é o único grande erro que as pessoas da Sun cometem. Elas tentam viver em dois mundos. E isso não é possível. É preciso decidir-se: ser aberto ou não.

  3. Participação: as comunidades se baseiam na participação direta e na criação de relações de confiança. Isso significa que as pessoas conquistam seu espaço em função de suas contribuições, e existem expectativas em termos de oportunidades e de abertura. Também podemos analisar essa questão como a distinção entre uma comunidade e um programa. A maioria dos programas são unidirecionais, geralmente de uma empresa para um mercado. As comunidades, por outro lado, são bidirecionais (multidirecionais, na verdade) e envolvem tanto aceitar quanto dar contribuições. Além disso, participação é, na verdade, uma questão de fazer, e não de falar. Aqueles que fazem chegam à liderança, e essas são as pessoas que se destacam das demais. Você ganha credibilidade com base no trabalho que contribui para a comunidade, e não no cargo que ocupa na sua empresa. Se desejar manter as pessoas ao seu redor, você precisará adotar esse conceito e viabilizar a participação delas.

  4. Contribuições: defina as contribuições que você está procurando. Forneça categorias gerais e exemplos específicos e espere que a comunidade ofereça mais exemplos e elementos nos quais você não tinha nem pensado (esse é o real objetivo). Aqui está uma lista de contribuições nas quais os membros da comunidade OpenSolaris estão envolvidos: código, scripts, testes, ajuda, apresentações, grupos de usuários, gerenciamento de conferências, portais de idiomas, traduções, cursos universitários, elementos gráficos, anúncios, material de treinamento, screencasts, vídeos, sites, wikis, evangelização, documentação, artigos, blogs, podcasts, processos de desenvolvimento, tutoriais, métodos de entrada, feedback, ferramentas de compactação de linguagem, ferramentas de SCM, regravação de binários fechados, sistema de rastreamento de defeitos, shells, distribuições, manuais, portas, governança etc. Embora muitos desses itens sejam técnicos, alguns não são, e a maioria não envolve código de kernel. Em outras palavras, pense em uma variedade de contribuições que você deseja estimular e deixe essa lista crescer abertamente. Depois, quando os resultados começarem a aparecer, destaque as pessoas que estão dando contribuições. Convém sempre chamar a atenção para as contribuições, mas fazer isso com discrição. Na maioria das comunidades, todos sabem quem está realmente contribuindo porque o trabalho fala mais alto do que as palavras e, de modo geral, os colaboradores trabalham em conjunto abertamente. Mas não custa nada agradecer às pessoas de vez em quando.

  5. Apresentações: o maior problema com a maioria das apresentações técnicas é que são exageradamente longas e se concentram demais em descrever a própria tecnologia. Isso funciona bem em uma sala de aula ou sessão de tutorial interativo. Mas o ato de criar uma comunidade não tem, na realidade, nada a ver com tecnologia. Tem a ver com pessoas. Dessa maneira, explique a tecnologia, é claro, mas se concentre mais em como conseguir que desenvolvedores e usuários participem e contribuam para a tecnologia e a comunidade, e em como isso beneficia a todos. A maioria das apresentações técnicas tem um slide no final com uma relação de listas às quais você pode se associar. Isso não basta. Não pode ser algo para consideração posterior. Deve ser uma prioridade.

  6. Conferências: você precisa freqüentar conferências. A Sun realiza várias conferências, mas você também precisa participar de eventos FOSS não realizados pela Sun. Ambos têm valor, mas são diferentes. Além disso, não se sinta na obrigação de sempre fazer apresentações em conferências. Participar de sessões, conversas no saguão, BOFs e festas é tão importante quanto apresentar artigos formais. A sua mera presença é fundamental. É preciso uma combinação de interações on-line e pessoais para criar um sentimento de comunidade. Mas não perca a oportunidade de travar conversas rápidas! A maioria das boas conferências oferecem essas oportunidades. Além disso, inclua grupos de usuários na sua lista de conferências. Vá até eles, dê início a eles ou faça as duas coisas. Ao iniciar um grupo de usuários, faça isso em um bar, café ou algo do gênero. Comece aos poucos e de uma forma social e deixe as apresentações técnicas crescerem lentamente à medida que mais pessoas trouxerem suas próprias experiências para o grupo. Além disso, não se sinta na obrigação de fazer sempre uma grande apresentação técnica com 100 pessoas na sala a cada mês. Isso está fora da realidade. Experimente realizar sessões técnicas trimestrais, mas se reúna mensalmente em um bar para comer e beber cerveja e, entre as reuniões, discuta os assuntos da pauta. Comece aos poucos e procure maneiras de criar uma tradição por meio de experiências repetidas. Uma pequena cultura logo se desenvolverá ao longo do tempo, e esse é o elo que manterá seu grupo de usuários unido.

  7. Infra-estrutura e processo de desenvolvimento: se for criar uma comunidade, você precisará passar algum tempo averiguando a infra-estrutura física necessária para dar suporte a todas as pessoas desejadas. Ela se expandirá? Que processo de desenvolvimento é necessário para aceitar contribuições? Quais testes são necessários? Você oferece uma sandbox para experimentação? Que ferramentas são necessárias para hospedar os artefatos do projeto? Quem tem acesso? Isso tudo depende de você querer hospedar no opensolaris.org ou em outro site, e se administrará um grupo de comunidades, um grupo de usuários ou um projeto de desenvolvimento. O número de colaboradores de código mais avançado será sempre pequeno, mas são justamente essas pessoas que precisam descobrir as ferramentas de que necessitam. No entanto, não-codificadores devem participar dessas discussões, pelo menos parcialmente, para que a infra-estrutura seja criada de forma a acomodar uma ampla variedade de contribuições.

  8. Liderança, governança, cultura: quais são os valores da sua comunidade? Como será a estrutura social? Como a comunidade se administrará? Como você tomará decisões? Qual é o seu modelo de liderança? Como você chamará a atenção dos colaboradores? Como você resolve conflitos? Essas são perguntas que precisam ser respondidas sempre que qualquer grupo grande de pessoas se reúne para colaborar em algo. Quando você é pequeno, consegue gerenciar isso com facilidade de cabeça, mas quando atinge um crescimento global, precisa documentar o comportamento que deseja incentivar, bem como definir algumas regras com relação a como gerenciar tudo isso. Esse processo não precisa ser prolixo e burocrático, mas as pessoas precisam saber o que você pretende e espera. Talvez um único líder forte seja adequado, mas convém considerar também outras opções de mecanismos de liderança distribuída. Procure exemplos em outras comunidades como Mozilla, Linux, Apache, Ruby, Java e BSDs. Na verdade, existem muitas outras, mas essas são algumas das maiores comunidades de software de código-fonte aberto.

  9. Universidades: se desejar crescer, você precisará voltar à escola e passar o tempo com jovens. Primeiramente, apresente seu projeto a alunos e professores universitários de mercados emergentes. Por motivos óbvios, comece pela Índia e pela China. Mas não se esqueça dos mercados estabelecidos. Visitas a universidades talvez sejam a melhor maneira de garantir que seu projeto tenha possibilidades de sobreviver no futuro. Negligenciar universidades está fora de questão. Isso precisa ter prioridade máxima. A propósito, essa será provavelmente a parte mais divertida das operações de criação da comunidade.

  10. Global: crie sua comunidade com uma perspectiva global em mente. Onde estão os desenvolvedores que estariam interessados no seu projeto? Vá até eles. Inúmeras vezes. Contudo, ao se tornar global, você se deparará com todos os tipos de questões culturais e lingüísticas interessantes que irão desacelerar o processo. Isso é esperado. Procure pessoas que possam ajudar a criar a comunidade em um determinado local e, depois, trabalhe para conectar vários locais entre si. Você não terá uma "única" comunidade no mundo todo, portanto, não espere que todos simplesmente o sigam (ou mesmo o entendam). Você terá muitas comunidades e elas expressarão sua própria independência de formas bem diferentes. Seu trabalho consiste em incentivá-las a ser independentes na medida necessária, mas também ajudá-las a se conectarem a outras regiões, de forma que possam participar da metacomunidade. Isso não é, por sinal, nada fácil, mas é necessário, além de poder ser uma fonte de contribuições realmente inovadores à medida que os mercados emergentes se desenvolvem.

  11. Marketing: conheça sua equipe de marketing. Ela pode ajudar a divulgar o seu projeto formalmente em conferências, na imprensa, junto a analistas ou em reuniões com clientes. Além disso, essas pessoas podem oferecer uma perspectiva que você talvez não tenha considerado com relação a problemas importantes, como marcas comerciais, branding, lançamentos, anúncios, vazamentos e instabilidades do mercado. Você não sabe necessariamente o que a imprensa está dizendo a seu respeito, certo? Será que uma maior exposição ajudaria? Quais são as questões competitivas que o marketing consegue perceber e você, não? Além disso, participe de programas especiais que a Sun realiza ocasionalmente, como eventos e concursos de codificação. A Sun tem outros programas para desenvolvedores e sites que aceitam conteúdo e participação de bom grado. Aproveite os recursos globais da empresa nesse sentido. A propósito, humildade e honestidade são as melhores técnicas para um marketing eficaz do código-fonte aberto. Lembre-se disso ao divulgar seus projetos.

  12. Promoção: isso é algo muito maior do que o marketing, além de ser também um pouco diferente. Não se trata de disciplinas de marketing específicas, como propaganda, comercialização, branding, RP ou AR. Em vez disso, tudo gira em torno do envolvimento direto não filtrado em um nível que leva à contribuição e à participação ativas. Trata-se da criação de uma comunidade por meio de comunicações abertas. Agora, isso certamente inclui marketing, mas também inclui gerentes de projetos e de engenharia, bem como qualquer outra pessoa que deseje se envolver. Além disso, você é o melhor promotor do seu trabalho, logo, precisa assumir a responsabilidade direta pela comunicação da sua própria maneira. Você aproveitará outros recursos para isso, mas, em última análise, você é responsável pelos seus próprios resultados, o que, nesse caso, significa expandir sua comunidade e promover sua tecnologia. Não se limite a simplesmente atribuir essa função a outra pessoa e afastar-se. Envolva-se.

  13. Assuntos legais: essa é, predominantemente, uma questão interna à Sun, à medida que você abre ferramentas e códigos anteriormente fechados. Mas mesmo quando um projeto é aberto, é preciso considerar marcas comerciais, direitos autorais, acordos com colaboradores, licenciamento, análise de fontes etc. Esses itens não ajudarão necessariamente a comunidade a crescer, mas sem dúvida poderão parar tudo rapidamente caso não sejam levados em consideração. Conheça seus advogados. Informe a eles as necessidades da comunidade e peça-lhes que lhe mostrem as realidades da lei. A informação aqui deve ser bidirecional.

  14. Gerência de projetos: à medida que sua comunidade crescer, ela certamente envolverá vários projetos de engenharia e atividades de usuários do mundo todo. Quem administrará essas operações tão complexas? Quem gerenciará o plano e manterá os indicadores e os planos de ação atualizados? Quem o alertará para a política organizacional com a qual você certamente se defrontará? Assim, convém procurar um bom gerente de projetos para ajudar a facilitar o processo. Da mesma forma que engenheiros devem criar a comunidade abertamente, os gerentes de projetos também devem fazer o mesmo. Se analisar seu projeto no contexto mais amplo possível, você verá que envolve as mais diversas disciplinas, dentro e fora do firewall, e isso afetará a sua maneira de criar a comunidade. 

  15. Divirta-se: por fim, criar uma comunidade é, no final das contas, um exercício social, em que a participação deve ser uma diversão para as pessoas. Você deseja atrair pessoas para sua comunidade, certo? Deseja incentivar as pessoas para que permaneçam na sua comunidade, certo? Torne a participação uma diversão. Ofereça às pessoas a oportunidade de se divertirem, e elas se divertirão.



Referências do OpenSolaris:

Constituição | Grupos de comunidades | Projetos | Referência de sites de liderança | Contribuição | Valores | Processo de desenvolvimento | Referência de desenvolvimento | Promoção e grupos de usuários | Contribuições de código

Livros sobre código-fonte aberto, licenciamento e desenvolvimento de comunidade

The Cathedral and the Bazaar Eric Raymond | Innovation Happens Elsewhere Ron Goldman, Richard P. Gabriel | Open Source & Free Software Licensing Andrew M. St. Laurent | Open Source Licensing: Software Freedom & Intellectual Property Law Lawrence Rosen | Open Sources: Voices from the Open Source Revolution Oreilly | Open Sources 2.0 The Continuing Evolution Oreilly | Free as in Freedom Richard Stallman

Atualizações posteriores: 12/26/07, 12/27/07, 4/28/08, 5/16/08
Comments:

Is that SPANISH? So let me get this straight. Your living in Japan for a company based out of the US, you grew up in the US, and your father was stationed in Japan after the war, and now your posting in Spanish? I am confused......

Posted by David Vasta on June 02, 2008 at 05:50 PM JST #

No, it's not Spanish. This is Portuguese. All I can say is that I could not find any critical writing or understanding error! It's incredible, because normally people have troubles writing or expressing themselves in Portuguese.

Congratulations, not only the article have clever and well presented ideas, but also they are very well expressed in Portuguese!

Posted by Edson Richter on June 03, 2008 at 02:04 PM JST #

See, another thing I have learned because of JIM! Looks like greek to me.....lol

Posted by David Vasta on June 04, 2008 at 02:18 AM JST #

yah, I learned 5 languages recently. :) No, actually, it's Sun's g11n guys that manged it all for me. I'm trying to talk to more people.
http://blogs.sun.com/jimgris/entry/building_opensolaris_communities_multilingual

Posted by Jim Grisanzio on June 06, 2008 at 05:25 AM JST #

escreveu não leu o pau comeu

Posted by blander on November 30, 2008 at 12:46 PM JST #

Teşekür eder saygılar sunarız.

Posted by güvenlik on January 06, 2009 at 10:26 AM JST #

Post a Comment:
Comments are closed for this entry.
About


Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today
Bookmarks

No bookmarks in folder