Jak hackathon w 5 łatwych krokach

Dlaczego więcej osób nie mówi o hackathonach? Są świetni i często dostarczają darmowe jedzenie i błystki. Ale co najważniejsze, są świetnym sposobem dla programistów na podniesienie swoich umiejętności w krótkim czasie, oferując jednocześnie specjalistom nietechnicznym możliwość zrealizowania wizji i realizacji pomysłu.

Jeśli chcesz się do niego przyłączyć, uczelnie i organizacje związane z technologią utrzymują je przez cały czas. Z dumą pracuję dla firmy (Asurion), która sponsoruje coroczny hackathon, który produkuje dziesiątki innowacyjnych pomysłów i imponujących wdrożeń. Podczas tegorocznej imprezy, poza tym, że udało mi się otoczyć wspaniałymi kolegami z drużyny, podążyłem tymi pięcioma krokami, aby zoptymalizować swoje doświadczenia związane z hackatonem.

1. Wybierz coś aktualnego

Wiele ciekawych projektów pochodzi z hackathonów, ale po kilku z nich zaczniesz widzieć kilka powtórzeń. Aby zmaksymalizować nowość, spróbuj wybrać stosunkowo nową technologię lub motyw. Nawet jeśli nie wygrasz, dowiesz się więcej i rozszerzysz ograniczenia swojej strefy komfortu.

Na przykład, ze względu na ogromny wzrost liczby asystentów domowych (129% rok do roku), nasz zespół postanowił wykorzystać Amazon Echo do naszego włamania. Nasza usługa Soluto zapewnia natychmiastowe wsparcie premium w kwestiach technologicznych. Pomyśleliśmy, że Echo może być wygodnym punktem wejścia do naszej usługi.

Twój pomysł na hackaton nie zawsze musi zmieniać świat. Może to być coś prostego i zabawnego, zainspirowanego wciągającym nowym programem, filmem lub grą. Brałem udział w moim pierwszym hackathonie kilka lat temu, kiedy pierwotnie wyszło 2048. Ponieważ jednym z naszych sponsorów był SendGrid, postanowiłem zhakować grę opartą na poczcie elektronicznej 2048. Został dobrze przyjęty ze względu na swoje znaczenie w tym czasie.

2. Zdefiniuj MVP

Większość hackathonów trwa od 24 do 72 godzin. Chociaż może wydawać się, że to dużo czasu na pracę, tak nie jest, nawet jeśli weźmiesz śpiwór. W związku z tym musisz zdefiniować minimalnie opłacalny produkt (MVP), który zespół będzie w stanie stworzyć, pozostawiając Ci czas do stracenia.

Możesz to osiągnąć, ograniczając swój hack do kilku podstawowych funkcji. Jeśli Twój hack jest zbyt szeroki, każda funkcja prawdopodobnie będzie wyglądać na niedokładną. Jeśli masz pomysły, jak rozwinąć swój hack w przyszłości, dołącz je do prezentacji jako punkty do dyskusji. Publiczność i sędziowie ci nie wybaczą jednak, jeśli masz świetną ofertę sprzedaży, ale nic namacalnego.

Ceremonia wręczenia nagród podczas 2017 Asurion Hackathon (Nashville). Od lewej do prawej: Barry Vandevier (sędzia i prezes operacyjny), Alex Hughes, Lucas Rudd, Jonathan Hughes, Daniel Cottone i Brandon Evans

3. Wcześniej przetestuj integracje innych firm

Wiele hacków wykorzystuje interfejsy programowania aplikacji (API) do integracji aplikacji z innymi usługami internetowymi. Możesz poprosić użytkowników o zalogowanie się za pośrednictwem konta Google, wysyłanie tweetów opisujących ich aktywność w aplikacji i wiele więcej. Korzystanie z interfejsów API rozszerza grupę docelową, upraszcza prace programistyczne i wzbogaca wrażenia użytkownika.

Niestety interfejsy API z założenia mają swoje ograniczenia. Te firmy zewnętrzne bardzo ciężko pracowały nad swoimi bazami danych i funkcjami i nie pozwolą ci korzystać z nich bez przerwy. Niektóre interfejsy API wymagają płatności, większość ogranicza liczbę połączeń, które można wykonać w określonym czasie, a wszystkie w pewien sposób ograniczają dostęp do ich danych. Aby uniknąć nieporozumień, powinieneś przetestować przypadek użycia integracji wcześniej, być może przed utworzeniem innej funkcjonalności.

Nauczyłem się tego na własnej skórze. Podczas poprzedniego hackatonu mój zespół postanowił stworzyć aplikację na Facebooku, która zidentyfikowałaby znajomych, z którymi ostatnio nie współpracowałeś, i dała ci możliwość ponownego połączenia się z nimi. Zbudowaliśmy całą aplikację w pierwszej połowie hackathonu przed rozpoczęciem integracji API. Był tylko jeden problem: Facebook nie pozwala ci uzyskać informacji o swoich znajomych, chyba że mają oni również aplikację. Ponieważ aplikacja byłaby bezużyteczna do momentu zainstalowania jej przez znaczną część populacji, musieliśmy całkowicie przerobić nasz pomysł w bardzo ograniczonym czasie.

Podczas Asurion Hackathon skorzystaliśmy z możliwości korzystania z wewnętrznych interfejsów API, z którymi pracowaliśmy w przeszłości. Mimo to najpierw pracowaliśmy nad integracjami, na wypadek, gdyby po drodze coś się pojawiło. To pozwoliło nam skoncentrować większość naszej energii na tworzeniu i udoskonalaniu wrażeń użytkownika.

4. Jeśli się nie zepsuł, nie naprawiaj go

Jeśli wdrożyłeś MVP z czasem do stracenia, możesz ulec pokusie, aby go w jakiś sposób zmienić. Twój zespół nie powinien lekko podejmować tej decyzji. Hack nie jest produktem gotowym do wprowadzenia na rynek. Refaktoryzacja kodu w ostatniej chwili nie ma miejsca na hackathonie. Jeśli Twój hack może skorzystać z dodatkowych usprawnień lub funkcji skierowanych do użytkownika, musisz ocenić ryzyko i korzyści wynikające z tych zmian i dać sobie czas na powrót do zdrowia, jeśli coś pójdzie nie tak. Przynajmniej powstrzymałbym się od dokonywania jakichkolwiek modyfikacji hacka w ciągu godziny od ostatecznej prezentacji. W pewnym momencie musisz przestać niszczyć rzeczy!

Nie oznacza to, że nie powinieneś tworzyć listy możliwych zmian do rozwiązania w innym momencie. Jak wcześniej wspomniano, włamanie, jeśli wykonane poprawnie, jest tylko MVP, a nie gotowym produktem. Ale to nie powinno Cię powstrzymywać od myślenia o przyszłych iteracjach dotyczących tej koncepcji. Mamy nadzieję, że twój hack jest czymś, w co wierzysz, więc śmiało powróć do projektu po zakończeniu konkursu. Po prostu nie ryzykuj zniszczenia niczego przed prezentacją. A propos…

5. Prezentuj tak, jak twój hack zależy od niego (tak jest)

Niektóre hakatony odbywają się w sposób sekwencyjny, podczas gdy inne pokazują, gdzie sędziowie sprawdzają hacki w czasie wolnym. Tak czy inaczej, prezentacja ma takie samo znaczenie, jeśli nie większe, niż sam hack. Jeśli masz niesamowity projekt, ale nie potrafisz wyrazić jego grozy, po co? Poświęć dużo czasu na przygotowanie i ćwiczenie prezentacji.

W tym miejscu niezwykle pomocna może być obecność programistów w zespole. Po zdefiniowaniu MVP, członkowie zespołu mogą zaplanować, jak najlepiej promować go równolegle z rozwojem - o ile obie grupy komunikują się ze sobą o wszelkich istotnych zmianach. Programiści mogą pomóc skupić się na „co”, podczas gdy inni pomagają doprecyzować „dlaczego”.

Przed zaprojektowaniem boiska musisz zidentyfikować odbiorców. Jeśli Twój hackaton zachęci publiczność do osądzenia, będziesz chciał przyciągnąć ich uwagę i sprawić, by zwrócił uwagę na drobiazgi. Jeśli prezentujesz się interesariuszom biznesowym, dołącz kluczowe prognozy finansowe i przykłady wartości dodanej dla organizacji. Na koniec, jeśli twoi koledzy hakerzy oceniają twój projekt, przejrzyj stos technologii i pochwal się zawiłościami swojej architektury.

Najbardziej niezapomniane prezentacje są zwykle najbardziej interaktywne. Jedną rzeczą jest obserwowanie używanego programu; to kolejna rzecz, której możesz doświadczyć. Jeśli możesz znaleźć sposób, aby umożliwić widzom pokazanie Twojego produktu, skorzystaj z niego (pod warunkiem, że znasz potencjalne przypadki).

Jeśli wykonasz te kroki, powinieneś opuścić hackaton z ciekawym, unikalnym i dobrze wykonanym rezultatem. Nie oznacza to, że masz gwarancję wygranej, ale jest to o wiele mniej ważne niż umiejętności i doświadczenie zdobyte podczas uczestnictwa w tych wydarzeniach.

Jeśli chcesz dołączyć do naszego zespołu, sprawdź oferty pracy w Soluto Nashville i wyślij mi notatkę!