Anunciando

Uma vez que o projeto esteja apresentável—não perfeito, apenas apresentável—você está pronto para anunciá-lo ao mundo. Isto é na verdade um processo muito simples: vá para http://freshmeat.net/, clique em Submit new Project na barra superior de navegação, e preencha o formulário anunciando o seu novo projeto. Freshmeat é o local onde todos olham por anúncios de novos projetos. Você só precisa chamar a atenção de alguns para o seu projeto para que ele se espalhe pelo boca a boca.

Se você sabe de listas de e-mails ou grupo de notícias onde o anúncio do seu projeto esteja dentro do tópico e seja de interesse da lista, então anuncie lá, mas seja cuidadoso para colocar exatamente um anúncio por fórum, e direcione as pessoas para o fórum do seu projeto para continuar a discussão (configurando o cabeçalho Responder a). Os posts devem ser pequenos e ir direto ao ponto:

Para: discuss@lists.example.org
Assunto: [ANN] Projeto Scanley full-text indexer
Responder a: dev@scanley.org

Este é um post único para anunciar a criação do projeto Scanley,
um indexador de texto completo e um motor de busca com uma API
rica, para uso de programadores para prover serviços de busca
para grandes coleções de arquivos de texto. O Scanley está com 
o código executável, está sob desenvolvimento ativo, e está
em busca de desenvolvedores e testadores.

Home page: http://www.scanley.org/

Funcionalidades:
   - Busca em texto plano, HTML, e XML
   - Busca por palavra ou frase
   - (planejado) Correspondência fuzzy
   - (planejado) Atualização incremental dos índices
   - (planejado) Indexação de web sites remotos

Requerimentos:
   - Python 2.2 ou superior
   - Espaço em disco suficiente para armazenar os índices 
     (aproximadamente 2x o tamanho original dos dados)

Para maiores informações, visite scanley.org por favor.

Obrigado,
-J. Random

(Veja “Publicity” no Capítulo 6, Communications para conselhos ao anunciar novos lançamentos e outros eventos do projeto.)

Existem discussões no mundo do software libre sobre ser necessário começar um projeto com um código executável, ou se um projeto pode se beneficiar sendo aberto mesmo durante o estágio de design e discussão. Eu costumava pensar que iniciar com um código executável fosse o fator mais importante, que era o que separava projetos de sucesso dos brinquedos, e que desenvolvedores sérios só seriam atraídos para softwares que já possuiam algo de concreto.

Isso se revelou não ser o caso. No projeto Subversion, nós iniciamos com um documento de design, um núcleo de desenvolvedores interessados e bem relacionados, um monte de festa, e nenhum código executável. Para minha completa surpresa, o projeto adquiriu novos participantes logo no início, e quando apareceu algo executando, já haviam alguns desenvolvedores voluntários profundamente envolvidos. Subversion não é o único exemplo; o projeto Mozilla também foi lançado sem um código executável, e é agora um navegador web bem sucedido e popular.

A frente de tal evidência, eu tive de voltar atrás da premissa que um código executável é absolutamente necessário para lançar um projeto. Um código executável ainda é a melhor base para o sucesso, e uma boa regra de ouro seria esperar até que você o tenha antes de anunciar seu projeto. Entretando, podem haver circunstâncias onde anunciá-lo mais cedo faz sentido. Eu realmente penso que ao menos um documento de design bem desenvolvido, ou talvez algum tipo de framework codificado, se faz necessário—é claro que ele poderá ser revisado baseado no feedback público, mas é preciso que se tenha algo concreto, algo mais tangível que apenas boas intenções, para que as pessoas possam fincar os seus dentes.

Independente de quando você o anuncie, não espere que uma horda de voluntários se junte ao projeto imediatamente após o anúncio. Geralmente, o resultado do anúncio é que você receba algumas perguntas casuais, algumas pessoas entrando nas listas de e-mail, e fora isso, tudo continua muito parecido como anteriormente. Mas com o tempo, você notará um aumento gradual na participação na contribuição de novos códigos e de usuários. Anunciar é meramente plantar a semente. Pode-se levar um bom tempo até a notícia se espalhar. Se o projeto recompensa consistentemente aqueles que se envolvem, a notícia irá espalhar, porque as pessoas querem compartilhar algo de bom que elas encontram. Se tudo andar bem, a dinâmina de comunicações em rede exponenciais irão lentamente transformar o projeto em uma comunidade complexa, onde você não terá necessariamente de conhecer o nome de todos e não poderá mais seguir cada conversa. Os próximos capítulos tratam do trabalho neste ambiente.