A insustentável leveza de encarar um Hackathon Online
Em 2016 eu falei um pouco sobre o quanto a síndrome do impostor era nociva pra nós desenvolvedores. Naquele artigo, uma das minhas sugestões pra escapar dessa armadilha foi participar de alguns hackatons.
Como possivelmente você já deve saber, os benefícios de participar destas competições são bem fáceis de identificar:
- Aprender coisas novas
- Conhecer desenvolvedores de outros contextos (idade, linguagem de programação, localidade)
- E no caso de competições online, poder demonstrar habilidade de trabalhar em equipe de forma remota.
Além de tudo isso, há um ganho pessoal que a maioria das pessoas não contabiliza: a sensação indescritível de receber um desafio, modelar a sua solução e entregá-la com qualidade.
Parece pouco, mas nem sempre vai ser possível alcançar essa proeza na sua vida profissional. Alguns projetos simplesmente vão falhar por uma série de motivos, por melhor desenvolvedor de software que você seja.
Nas minhas experiências de hackathons essa façanha era sempre difícil de ser alcançada. Mesmo gerando resultados legais como este abaixo:
Por conta isso, gostaria de compartilhar aqui alguns detalhes que envolveram a nossa (ao meu ver, muito bem sucedida) participação no Music Hackathon. Competição Online promovida pela HackerEarth.
Especificação e Modelagem
Após o fim do Hackathon do Observatório Social, continuei mantendo o contato com alguns dos participantes e montamos a Brazil Hack’s.
Basicamente, o primeiro desafio da nossa equipe foi encontrar um tema que não fosse complexo demais pra não dar tempo de ser realizado e que não fosse simples ao ponto de não ter o mínimo de competitividade.
O tema escolhido pra nossa implementação foi: “ferramentas pra facilitar o aprendizado musical” e a nossa tarefa iria consistir em construir um site para auxiliar as pessoas a treinarem campos harmônicos.
Num primeiro momento, ajudei a equipe com uma habilidade que foge um pouco do meu dia a dia: especificar domínio e arquitetura da aplicação.
Pra explicar como eu imaginava que seriam feitas as integrações, do nosso sistema fiz o seguinte diagrama:
E apesar do escopo ter se alterado um pouco durante o desenrolar do projeto, me senti bem satisfeito com essa pequena modelagem.
Tomei até a liberdade de gravar um vídeo pra tentar explicar para um dos componentes do grupo, o que eu sabia da teoria por trás do conceito de campo harmônico.
Colocando a mão na massa
A implementação ficou bem interessante.
A stack escolhida foi: mongodb + nodejs e angular. Algo que me agradou bastante, pois além de alinhar com as habilidades de todos os desenvolvedores, tornava o projeto bastante atual em termos de tecnologia.
Porém, me surpreendeu um pouco a complexidade de integrar essas novas tecnologias com as api’s dos serviços Deezer e Spotify.
Apesar da extensa documentação e grande quantidade de features destas api’s, acabamos optando por utilizar a do YouTube pra tocar as músicas.
Aqui vem a cabeça uma dica batida, mas que não custa lembrar: não existe bala de prata.
E sempre quando possível e negociável, vale a pena mudar de direção durante o desenvolvimento de uma solução.
Resultado final
O resultado final não poderia ter sido ser melhor!
Um jogo super simples de usar, feito com novas tecnologias e o mais legal: com uma apresentação e usuabilidade excelente.
Vendo o vídeo de apresentação, é realmente surpreendente ver que o esforço de pessoas geograficamente distantes, atuando nas horas vagas e competindo com diversos outros compromissos pessoais, tenha gerado um resultado tão bom.
Ainda não sei qual será o resultado do nosso projeto (o concurso possui mais de 500 equipes inscritas de todas as partes do mundo).
Mas só de encontrar 3 malucos dispostos a usar o seu tempo livre pra encarar um desafio tão interessante, com tanta vontade de aprender e até de seguir com o projeto após o hackathon, já me sinto bem vitorioso.
É recompensador, porque já trabalhei com gente jovem, bem remunerada, que não tinha metade do engajamento que foi mostrado aqui.
Se quiser ver o app funcionando, clique aqui.
Visite Startups & Encontre Videos, Livros, Escolas, Professores, Eventos, Cursos, Faculdades, Meetups, Bootcamps, Artigos, Podcasts de Design, Tecnologia, Negócios e Inovação.