Como promover um projeto de código aberto?


29

Antes de tudo, peço desculpas se esta é a seção errada da rede para postar esta pergunta. Se for, sinta-se à vontade para movê-lo para um local mais apropriado ...

Pergunta: Gostaria de ouvir suas idéias sobre as maneiras de os projetos de código aberto serem iniciados e executados. Eu tenho um projeto de sistema de gerenciamento de conteúdo de código aberto e aqui surgem algumas perguntas: Como devo agir? Devo apresentar uma edição pré-alfa viável, trabalhando primeiro com os front-ends e back-ends e depois anunciar o projeto publicamente? Ou devo anunciá-lo imediatamente do zero? Como desenvolvedor, eu sei que é preciso usar um sistema de controle de versão como Git ou SVN, o que eu faço, sem problemas por lá. E o mérito do teste de unidade também é algo a ser lembrado, que, para ser franco, não gosto de nada ... Gerenciamento de projetos - sou iniciante nisso, na melhor das hipóteses. Técnicas de codificação e experiências como desenvolvimento ágil é algo que eu quero explorar ...

Em resumo, qualquer idéia para um desenvolvedor que seja novo no mundo de código aberto é bem-vinda.


1
Adendo: responda se você tem experiência em projetos de larga escala / projetos de código aberto e tente não fornecer idéias hipotéticas / teóricas, mas práticas e comprovadas.
Shahriyar Imanov

Comece a codificar para algo que resolve um problema. Uma vez que resolva esse problema da maneira mais básica; encontre uma rede de pessoas que compartilhem o problema e peça para experimentarem. "Se você construir, eles virão."
Jake Berger

Respostas:


31

Eu começaria a parar para escrever coisas como esta:

Adendo: responda se você tem experiência em projetos de larga escala / projetos de código aberto e tente não fornecer idéias hipotéticas / teóricas, mas práticas e comprovadas.

Esse tipo de atitude arrogante realmente mata mais projetos de código aberto do que qualquer outra coisa. O código aberto é menos sobre fonte e mais sobre colaboração. Sejam bem-vindos a todos que desejam ajudar, mesmo quando não têm experiência prática para fazer isso - ajudar os projetos de código aberto a ganhar experiência é uma prática comum, como você provavelmente sabe.

O segundo ponto é não se preocupe em promover se você não tiver um código de trabalho. Dê uma olhada no sourceforge ou no Google Code ou em qualquer outro lugar e veja o mar de projetos mortos com nada mais do que algumas linhas de código e muitas boas intenções. Codifique primeiro, fale depois.

A melhor promoção é ter um "cliente": ter alguém usando seu produto para que as pessoas possam vê-lo realmente em produção. Se for um CMS: use-o no site do projeto, por exemplo.

Se você tem tudo isso, sua melhor aposta na promoção é o boca a boca. Peça aos amigos que usem seu projeto nos sites deles, por exemplo. Crie um blog e envie o artigo para sites agregadores, como Digg ou Slashdot, mas não faça isso se o projeto não estiver pronto para o horário nobre. Ninguém quer ler sobre vapourware.

Boa sorte com seu projeto.


Essa foi minha ideia: criar algo viável, sólido, para que as pessoas possam vê-lo em ação e sentir que algo real está no lugar. No entanto, um amigo meu sugeriu convidar outros desenvolvedores a partir do dia 1, a fim de evitar muitas mudanças no roteiro posteriormente.
Shahriyar Imanov

11
@Shehi Por que alguém participaria de um projeto sem uma única linha de código escrita e apenas vaporware? Eu já vi projetos com produtos de trabalho lutando para conseguir mais desenvolvedores. Eu não perderia tempo tentando encontrar desenvolvedores sem algo para mostrar.
Vitor Py

4

Sua pergunta é vaga, mas tentarei uma resposta da melhor maneira possível. Suponho que você queira atrair desenvolvedores para o projeto, para que você não seja a única pessoa trabalhando no projeto.

Nesse caso, você provavelmente desejará obter uma conta no Github e / ou no Source forge para que qualquer pessoa possa ter acesso a ela e fazer alterações. Para começar, você será o único desenvolvedor que trabalha nele, portanto não precisa se preocupar com o gerenciamento de projetos, mas assim que houver várias pessoas envolvidas, instale as análises de código, defina metas etc.

As metas podem ser reunidas em um sistema de rastreamento de problemas, como o bugzilla, adicionadas como bugs que precisam ser corrigidos e permitir que as pessoas se atribuam a elas, ou mandam um e-mail para uma pessoa central que aloca pessoas para problemas.

Você vai querer atrair uma multidão de desenvolvedores para precisar de um site que descreva o projeto, e onde ele se encontra no curto, médio e longo prazo, além de capturas de tela etc.

Um blog / twitter do projeto que permite aos usuários acompanhar onde você está, se também for útil.


Para responder à sua primeira pergunta: Sim, essa é a intenção.
Shahriyar Imanov

4

Se você ainda não leu, sugiro A Catedral e o Bazar , de Raymond , e preste atenção especial à sua experiência com o Fetchmail.

Com base nisso e em minha própria experiência, sugiro liberar código assim que resolver um problema que outras pessoas possam ter . Sim, você deve usar algum controle de origem do fluxo principal e publicá-lo em um servidor em algum lugar. Você precisa escolher uma licença, e isso pode ser um grande negócio, dependendo de seus objetivos. Mas em termos de o que publicar e quando, "libere cedo, libere com frequência".


Vou verificar isso. THX!
Shahriyar Imanov
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.