Você já fez o seu MVP, já validou algumas das principais hipóteses com os clientes e agora é hora de dar um passo importante: iniciar o desenvolvimento do produto real. Nessa hora é comum nos depararmos com algumas questões bem específicas e técnicas como: qual arquitetura adotar, qual linguagem de programação, quem contratar, etc.
Em se tratando de aplicações web temos algumas boas opções:
PHP. Uma das mais populares e tradicionais linguagens de programação para a Web. Segundo dados do Google, 75% de todos os sites são feitos em PHP, o que mostra sua popularidade e facilidade de uso. Essa facilidade também trouxe problemas no passado pois programadores com baixa qualidade fizeram uma má fama para a comunidade, mas tanto a linguagem quanto a comunidade de desenvolvimento evoluiu muito nos últimos anos fazendo com que esse estigma fosse passado. Com o advento dos frameworks a linguagem está apta para fazer bonito tanto em ambientes corporativos quanto em ambientes hostis e de rápida mudança como as Startups. Talvez o maior exemplo de uso do PHP seja o gigante Facebook.
> – Ruby. Uma linguagem de sintaxe elegante e desenvolvedores fiéis que teve um crescimento espantoso na última década, principalmente graças ao framework Ruby on Rails. A linguagem existe a bastante tempo mas o ponto de virada foi a popularização do framework Rails que revolucionou o desenvolvimento web e forneceu a velocidade que as Startups sempre precisaram. Dentre os exemplos pode-se citar os aplicativos da 37Signals, criadora do Rails, Slideshare e Twitter.
> – Python. Outra poderosa e elegante linguagem de programação que vem sendo usada em diversas áreas do conhecimento, desde aplicações científicas e médicas até Startups. Ganhou bastante espaço no mercado de aplicações web graças a seus frameworks, sendo o mais usado o Django. Dentre diversos exemplos os mais famosos são o Dropbox, DISQUS e diversos componentes do Google e Yahoo!.
> – Java. Linguagem de programação que tem mais adeptos no mundo corporativo devido a sua robustez e capacidade. No mundo das Startups ela perde bastante terreno devido a complexidade que a solução facilmente pode atingir. E isso dificulta a agilidade na hora de mudanças. Frameworks e bibliotecas mais modernas diminuem um pouco esse problema mas mesmo assim são poucos os exemplos de Startups usando a linguagem. Talvez os mais famosos sejam Linkedin e Amazon.
>
> Segundo Elton Minetto, CTO do Code Squad e da Coderockr, nos últimos anos todas as linguagens evoluiram rapidamente e atualmente é quase possível dizer que todas estão equiparadas em quesitos técnicos, com algumas pequenas vitórias em casos bem específicos. Mas outros fatores além dos técnicos devem ser levados em conta na hora da escolha da linguagem, como abundância de mão de obra e valor da mesma, facilidade de mudanças, crescimento e evolução da tecnologia.
>
> Outro ponto importante a ser frisado é o fato de ser muito comum hoje a integração entre diversas linguagens de programação. É praticamente impossível afirmar que Facebook, por exemplo, é feito somente em PHP pois os engenheiros da empresa vem criando componentes em diversas linguagens e as fazendo trabalhar juntas para melhorar a performance e escala das aplicações. Ou mesmo criam novas linguagens, com o Google vem fazendo com as linguagens Go e Dart. Isso deve ser levado em conta no momento da criação do seu produto pois em determinado momento sua equipe pode usar mais de uma linguagem de programação para poder resolver problemas bem específicos e cruciais. Por isso é cada vez mais comum as empresas montarem equipes formadas por profissionais com conhecimento em diversas linguagens e formas de programação. E você deve lembrar disso na hora de montar sua equipe.
>
> Ainda segundo Elton para a criação do Code Squad, plataforma de ensino à distância com conteúdo focado em programação e desenvolvimento de sistemas, foram usadas diversas tecnologias como PHP, Javascript e NodeJS. E os alunos do Code Squad em sua maioria consomem cursos de mais de uma linguagem de programação.
>
> Seja qual for a linguagem escolhida para o desenvolvimento é sempre importante levar em conta esses fatores para poder usar a tecnologia ao seu favor e diminuir os riscos na criação do seu produto.
>
>
> Abraços
>
> —
> Elton Minetto
> Coderockr
> http://eltonminetto.net
> http://coderockr.com
> http://code-squad.com