Dois amigos no trabalho e eu vamos montar uma pequena startup / criar nosso próprio software, provavelmente ao luar no início, já que ainda não podemos nos dar ao luxo de deixar nossos empregos diários.
Nenhum de nós teve essa experiência, todos já trabalhamos para outras empresas, onde um conjunto de diretrizes é definido e acho que é hora de estabelecer boas práticas a serem seguidas (como evitar o encontro).
Para as pessoas que seguiram esse caminho, que conselho você nos daria?
Estou procurando mais pelo lado técnico das coisas, como:
Vale a pena ter algum tipo de servidor de compilação ou isso está indo muito à frente?
Você faria TDD extenso ou acha que seria muito caro para uma equipe pequena que não tem muita experiência com isso?
Mas não se importaria em ouvir o lado gerencial das coisas.
O projeto é um aplicativo da Web feito no ASP.NET MVC, estou pensando em usar o Mercurial e BitBucket ou Kiln + FogBugz ou alguma outra ferramenta de rastreamento de projeto on-line, pois trabalharemos remotamente.
fonte
3
parte dela - não é útil / construtivo colocar um limite arbitrário de quantas coisas as pessoas deveriam sugerir (e provavelmente a maioria das pessoas ignoraria isso de qualquer maneira).Respostas:
Solte o mais rápido possível . As chances são de 90% do código com o qual você começa não passará pelos primeiros 6 meses. Portanto, não faz sentido projetá-lo como um louco. Codifique o mais rápido possível para chegar ao mercado e deixe seus usuários decidirem como desenvolvê-lo ainda mais. Se TDD é como você codifica mais rapidamente, use TDD. Caso contrário, apenas corte-o. Os usuários que adotam precocemente perdoam alguns bugs quando seu produto está na versão beta.
Não perca seu tempo sendo administrador de sistemas. Você tem a idéia certa com plataformas hospedadas para rastreamento de erros (por exemplo, FogBugz) e controle de origem. Use um repositório de documentos online, como o Google Docs . Se você armazenar algo localmente, use um serviço de backup em nuvem online, como o Carbonite . No seu ambiente ao vivo, alugue uma solução de hospedagem totalmente gerenciada, se você puder pagar. Tente evitar ter que manter seus próprios servidores.
Concentre-se no que o torna único . Se você escrever um código que parece que já deveria ter sido feito antes, use o que já está lá. Torne-se especialista na solução de seu problema comercial e não se distraia com problemas fora do seu domínio.
fonte
se a equipe é mais do que você, os padrões são importantes. Eles não precisam ser complicados ("use nomes de variáveis significativos, CamelCase e não quebre a construção"). TDD balança porque funciona, use-o. Os testes que você faz também são uma excelente base para demonstrações de uma só vez. Um servidor de compilação pode estar ao mar, ou não; comece sem um e veja como vai. Ferramentas de rastreamento da mesma forma; pode adicionar mais tarde, conforme necessário.
Supondo que este produto seja vendido, faça uma pesquisa de mercado agora para garantir que você esteja criando algo que as pessoas realmente desejam. Delinear um plano de negócios para ir do zero ao mercado, dividir responsabilidades e patrimônio e responsabilizar-se mutuamente.
Boa sorte!
fonte