Como Hackathon em 5 etapas fáceis

Por que não há mais pessoas falando sobre Hackathons? Eles são ótimos e frequentemente fornecem comida grátis e fidget spinners. Mas o mais importante é que eles são uma ótima maneira de os desenvolvedores de software melhorarem seu conjunto de habilidades em um curto período de tempo, oferecendo aos profissionais não técnicos a oportunidade de executar uma visão e dar vida a uma ideia.

Se você estiver interessado em entrar em uma, faculdades e organizações relacionadas à tecnologia as mantêm o tempo todo. Tenho orgulho de trabalhar para uma empresa (Asurion) que patrocina um hackathon anual, que produz dezenas de idéias inovadoras e implementações impressionantes. Durante o evento deste ano, além de me cercar de ótimos colegas de equipe, segui essas cinco etapas para otimizar minha experiência no hackathon.

1. Escolha algo tópico

Muitos projetos interessantes surgem dos hackathons, mas depois de alguns, você começa a ver algumas repetições. Para maximizar a novidade, tente escolher uma tecnologia ou tema relativamente novo. Mesmo se você não vencer, aprenderá mais e expandirá as restrições da sua zona de conforto.

Por exemplo, devido ao grande aumento na propriedade de assistentes domiciliares (129% ano a ano), nossa equipe decidiu utilizar o Amazon Echo para nosso hack. Nosso serviço, Soluto, fornece suporte premium instantâneo a problemas de tecnologia. Pensamos que o Echo poderia ser um ponto de entrada conveniente para o nosso serviço.

Sua ideia do hackathon nem sempre precisa mudar o mundo. Pode ser algo simples e divertido inspirado em um novo programa, filme ou jogo envolvente. Eu participei do meu primeiro hackathon alguns anos atrás, quando 2048 foi lançado originalmente. Como um de nossos patrocinadores era o SendGrid, decidi criar um jogo de 2048 com e-mail. Foi bem recebido, devido à sua relevância na época.

2. Defina um MVP

A maioria dos hackathons dura entre 24 e 72 horas. Embora possa parecer muito tempo para trabalhar, não é, mesmo que você traga um saco de dormir. Como tal, você precisa definir um produto minimamente viável (MVP) que seja viável para a sua equipe criar, deixando tempo de sobra para você.

Você pode fazer isso limitando seu hack a alguns recursos principais. Se o seu hack for muito amplo, cada recurso provavelmente parecerá polido. Se você tiver idéias de como expandir seu hack no futuro, inclua-as na sua apresentação como pontos de discussão. O público e os juízes não o perdoarão, se você tiver um ótimo discurso de vendas, mas nada tangível para mostrar.

Cerimônia de premiação na Asurion Hackathon 2017 (Nashville). Da esquerda para a direita: Barry Vandevier (juiz e presidente de operações), Alex Hughes, Lucas Rudd, Jonathan Hughes, Daniel Cottone e Brandon Evans

3. Teste integrações de terceiros antecipadamente

Muitos hacks utilizam interfaces de programação de aplicativos (APIs) para integrar seus aplicativos a outros serviços baseados na Web. Você pode fazer com que seus usuários façam login na conta do Google, enviem tweets descrevendo suas atividades no aplicativo e muito mais. O uso de APIs expande seu público-alvo, simplifica o trabalho de desenvolvimento e enriquece sua experiência do usuário.

Infelizmente, as APIs, por design, têm suas limitações. Esses terceiros trabalharam muito para seus bancos de dados e recursos e não permitirão que você os use inabalável. Algumas APIs exigem pagamento, a maioria limita quantas chamadas você pode fazer dentro de um determinado período de tempo e todas restringem o acesso aos dados de alguma forma. Para evitar equívocos, você deve testar seu caso de uso de integração mais cedo, talvez antes de criar qualquer outra funcionalidade.

Eu aprendi isso da maneira mais difícil. Em um hackathon anterior, minha equipe decidiu criar um aplicativo no Facebook que identificava com quais amigos você não interagia recentemente e ofereceu a opção de se reconectar com eles. Criamos o aplicativo inteiro durante a primeira metade do hackathon antes de iniciar a integração da API. Havia apenas um problema: o Facebook impede que você obtenha informações sobre seus amigos, a menos que eles também tenham o aplicativo. Como o aplicativo seria inútil até que uma parte significativa da população o instalasse, tivemos que refazer completamente nossa idéia com tempo muito limitado.

No Asurion Hackathon, nos beneficiamos de poder usar APIs internas com as quais trabalhamos no passado. Mesmo assim, trabalhamos primeiro nas integrações, para o caso de surgir alguma coisa ao longo do caminho. Isso nos permitiu concentrar a maior parte de nossa energia na criação e aprimoramento da experiência do usuário.

4. Se não estiver quebrado, não conserte

Se você implementou seu MVP com tempo de sobra, pode ficar tentado a alterá-lo de alguma forma. Sua equipe não deve tomar essa decisão de ânimo leve. Um hack não é um produto pronto para o mercado. A refatoração de código de última hora não tem lugar em um hackathon. Se o seu hack pode usar algumas melhorias ou recursos adicionais voltados para o usuário, você precisa avaliar qual é o risco versus a recompensa dessas alterações e ter tempo para se recuperar se algo der errado. No mínimo, evitaria fazer modificações no hack dentro de uma hora da sua apresentação final. Em algum momento, você precisa parar de quebrar as coisas!

Isso não significa que você não deve criar uma lista de possíveis alterações para resolver em outro momento. Como mencionado anteriormente, um hack, se feito corretamente, é apenas um MVP, não um produto acabado. Mas isso não deve impedir você de pensar em iterações futuras sobre o conceito. Felizmente, seu hack é algo em que você acredita, portanto, fique à vontade para retomar o projeto após o término da competição. Apenas não arrisque quebrar nada logo antes da sua apresentação. Falando nisso…

5. Apresente-se como se seu hack dependesse disso (depende)

Alguns hackathons têm demonstrações sequenciais, enquanto outros têm mostras onde os juízes conferem os hacks à vontade. De qualquer maneira, a apresentação importa tanto, se não mais, que o próprio hack. Se você tem um projeto incrível, mas não consegue transmitir sua grandiosidade, qual é o objetivo? Certifique-se de dedicar uma quantidade significativa de seu tempo para preparar e praticar sua apresentação.

É aqui que ter não desenvolvedores em sua equipe pode ser extremamente útil. Após definir o MVP, esses membros da equipe podem planejar a melhor forma de comercializá-lo em paralelo com o desenvolvimento - desde que os dois grupos se comuniquem entre si sobre quaisquer mudanças importantes. Os desenvolvedores podem ajudar a focar no "o quê", enquanto os outros ajudam a refinar o "por quê".

Antes de projetar seu discurso, você deve identificar seu público. Se o seu hackathon convida o público a julgar, convém capturar a atenção deles e mantê-lo claro sobre o âmago da questão. Se você estiver apresentando às partes interessadas da empresa, incorpore importantes projeções financeiras e exemplos de valor agregado para a organização. Por fim, se seus colegas hackers estão classificando seu projeto, repasse a pilha de tecnologia e mostre os meandros de sua arquitetura.

As apresentações mais memoráveis ​​são geralmente as mais interativas. Uma coisa é testemunhar um programa sendo usado; é outra a experimentar por si mesmo. Se você puder encontrar uma maneira de permitir que o público faça uma demonstração do seu produto, siga em frente (desde que conheça seus possíveis casos extremos).

Se você seguir estas etapas, deverá deixar o hackathon com uma entrega interessante, única e bem executada. Isso não quer dizer que você tenha a certeza de ganhar, mas isso é muito menos importante do que as habilidades e a experiência que você ganha ao participar desses eventos.

Se você estiver interessado em fazer parte da nossa equipe, verifique as vagas de emprego em Soluto Nashville e envie-me uma nota!