Πώς να Hackathon σε 5 εύκολα βήματα

Γιατί δεν μιλούν περισσότεροι για τους Hackathons; Πρόκειται για μια έκρηξη και συχνά προσφέρουν δωρεάν φαγητό και διασκέδαση. Αλλά το πιο σημαντικό είναι ότι είναι ένας πολύ καλός τρόπος για τους προγραμματιστές λογισμικού να βελτιώσουν τις δεξιότητές τους σε σύντομο χρονικό διάστημα, προσφέροντας παράλληλα στους μη τεχνικούς επαγγελματίες την ευκαιρία να εκτελέσουν ένα όραμα και να φέρουν μια ιδέα στη ζωή.

Αν ενδιαφέρεστε να εισέλθετε σε ένα, τα κολλέγια και οι οργανώσεις που σχετίζονται με την τεχνολογία τους κρατούν συνεχώς. Είμαι περήφανος που εργάζομαι για μια εταιρεία (Asurion) που χορηγεί ένα ετήσιο hackathon, το οποίο παράγει δεκάδες καινοτόμες ιδέες και εντυπωσιακές υλοποιήσεις. Κατά τη διάρκεια της φετινής διοργάνωσης, εκτός από τη δυνατότητα να περιβάλλω τον εαυτό μου με μεγάλους συμπαίκτες, ακολούθησα αυτά τα πέντε βήματα για να βελτιστοποιήσω την εμπειρία του hackathon μου.

1. Επιλέξτε κάτι επίκαιρο

Πολλά ενδιαφέροντα έργα έρχονται από hackathons, αλλά μετά από λίγους, θα αρχίσετε να βλέπετε μερικές επαναλήψεις. Για να μεγιστοποιήσετε την καινοτομία, δοκιμάστε να επιλέξετε μια σχετικά νέα τεχνολογία ή θέμα. Ακόμη και αν δεν κερδίσετε, θα μάθετε περισσότερα και θα επεκτείνετε τους περιορισμούς της ζώνης άνεσής σας.

Για παράδειγμα, λόγω της τεράστιας αύξησης της οικιακής βοηθού ιδιοκτησίας (129% ετησίως), η ομάδα μας αποφάσισε να χρησιμοποιήσει την Amazon Echo για την άμυνα μας. Η υπηρεσία μας, η Soluto, παρέχει άμεση υποστήριξη υψηλής ποιότητας για θέματα τεχνολογίας. Θεωρήσαμε ότι η Echo θα μπορούσε να είναι ένα βολικό σημείο εισόδου στην υπηρεσία μας.

Η ιδέα του hackathon δεν χρειάζεται πάντα να αλλάξει τον κόσμο. Μπορεί να είναι κάτι απλό και διασκεδαστικό που εμπνέεται από μια νέα συναρπαστική εκπομπή, ταινία ή παιχνίδι. Συμμετείχα στην πρώτη μου hackathon πριν από λίγα χρόνια όταν το 2048 βγήκε αρχικά. Επειδή ένας από τους χορηγούς μας ήταν η SendGrid, αποφάσισα να χαράξω ένα παιχνίδι 2048 με ηλεκτρονικό ταχυδρομείο. Ήταν ευπρόσδεκτη, λόγω της σχέσης της εκείνης της εποχής.

2. Καθορίστε ένα MVP

Οι περισσότεροι hackathons διαρκούν μεταξύ 24 και 72 ώρες. Αν και αυτό μπορεί να φαίνεται σαν να είναι πολύς χρόνος για να εργαστείτε, δεν είναι, ακόμα κι αν φέρνετε ένα υπνόσακο. Ως εκ τούτου, πρέπει να ορίσετε ένα ελάχιστα βιώσιμο προϊόν (MVP) που είναι εφικτό για τη δημιουργία της ομάδας σας, αφήνοντας σας περιθώρια για χαλάρωση.

Μπορείτε να το επιτύχετε περιορίζοντας το hack σας σε μερικά βασικά χαρακτηριστικά. Εάν ο hack σας είναι πολύ ευρύς, κάθε χαρακτηριστικό θα φαίνεται πιθανόν να μην έχει κατατεθεί. Αν έχετε ιδέες για το πώς να επεκτείνετε το hack σας στο μέλλον, συμπεριλάβετε τις στην παρουσίασή σας ως σημεία ομιλίας. Το ακροατήριο και οι δικαστές δεν θα σας συγχωρέσουν, ωστόσο, αν έχετε ένα μεγάλο γήπεδο πωλήσεων, αλλά τίποτα δεν μπορεί να το δείξει.

Τελετή απονομής βραβείων στο 2017 Asurion Hackathon (Nashville). Από αριστερά προς τα δεξιά: ο Barry Vandevier (δικαστής και πρόεδρος των επιχειρήσεων), ο Alex Hughes, ο Lucas Rudd, ο Jonathan Hughes, ο Daniel Cottone και ο Brandon Evans

3. Δοκιμάστε τις ολοκληρώσεις τρίτων μερών νωρίς

Πολλές hacks χρησιμοποιούν διεπαφές προγραμματισμού εφαρμογών (API) για να ενσωματώσουν την εφαρμογή τους σε άλλες υπηρεσίες που βασίζονται στον ιστό. Μπορείτε να συνδέσετε τους χρήστες σας μέσω του λογαριασμού τους στο Google, να στείλετε tweets που καταγράφουν τη δραστηριότητά τους εντός της εφαρμογής και πολλά άλλα. Η χρήση των API επεκτείνει το κοινό-στόχο σας, απλοποιεί τις εργασίες ανάπτυξης και εμπλουτίζει την εμπειρία των χρηστών σας.

Δυστυχώς, τα API, από το σχεδιασμό, έχουν τους περιορισμούς τους. Αυτά τα τρίτα μέρη εργάστηκαν πολύ σκληρά για τις βάσεις δεδομένων και τα χαρακτηριστικά τους και δεν θα σας αφήσουν να τα χρησιμοποιήσετε αμείωτα. Ορισμένα APIs απαιτούν πληρωμή, οι περισσότεροι περιορίζουν πόσες κλήσεις μπορείτε να κάνετε μέσα σε ένα δεδομένο χρονικό διάστημα, και όλοι περιορίζουν την πρόσβαση στα δεδομένα τους με κάποιο τρόπο. Για να αποφύγετε τυχόν παρερμηνείες, θα πρέπει να δοκιμάσετε νωρίτερα τη χρήση της ένταξής σας, ίσως πριν δημιουργήσετε οποιαδήποτε άλλη λειτουργικότητα.

Έμαθα αυτό με τον σκληρό τρόπο. Σε ένα προηγούμενο hackathon, η ομάδα μου έθεσε ως στόχο να δημιουργήσει μια εφαρμογή Facebook που έδειξε ποιους φίλους δεν έχετε αλληλεπιδράσει πρόσφατα και σας έδωσε την επιλογή να επανασυνδεθείτε μαζί τους. Κατασκευάσαμε ολόκληρη την εφαρμογή κατά το πρώτο μισό του hackathon πριν ξεκινήσουμε την ενσωμάτωση του API. Υπήρχε ένα μόνο πρόβλημα: το Facebook σας εμποδίζει να λαμβάνετε πληροφορίες σχετικά με τους φίλους σας, εκτός αν έχουν επίσης την εφαρμογή. Καθώς η εφαρμογή θα ήταν άχρηστη μέχρι να εγκατασταθεί ένα σημαντικό μέρος του πληθυσμού, θα έπρεπε να επεξεργαστούμε πλήρως την ιδέα μας με πολύ περιορισμένο χρόνο.

Στο Asurion Hackathon, επωφελήσαμε από τη δυνατότητα να χρησιμοποιήσουμε εσωτερικά API με τα οποία έχουμε εργαστεί στο παρελθόν. Ακόμη ακόμα, εργαζόμασταν πρώτα στις ενοποιήσεις, μόνο σε περίπτωση που κάτι προέκυψε κατά μήκος της πορείας. Αυτό μας επέτρεψε να εστιάσουμε το μεγαλύτερο μέρος της ενέργειας μας στη δημιουργία και τελειοποίηση της εμπειρίας των χρηστών.

4. Εάν δεν έχει σπάσει, μην το διορθώσετε

Εάν έχετε εφαρμόσει το MVP σας με το χρόνο για να διαθέσετε, μπορεί να μπείτε στον πειρασμό να το αλλάξετε με κάποιο τρόπο. Η ομάδα σας δεν πρέπει να λάβει αυτή την απόφαση ελαφρά. Ένα hack δεν είναι προϊόν έτοιμο προς πώληση. Ο επαναπροσδιορισμός κώδικα τελευταίας στιγμής δεν έχει θέση σε hackathon. Εάν ο hack σας μπορεί να χρησιμοποιήσει κάποιες πρόσθετες βελτιώσεις ή λειτουργίες που έχουν σχέση με το χρήστη, θα πρέπει να αξιολογήσετε ποιος είναι ο κίνδυνος έναντι ανταμοιβής αυτών των αλλαγών και δώστε στον εαυτό σας χρόνο να ανακάμψει αν κάτι πάει στραβά. Τουλάχιστον, θα απέφευγα να προβεί σε τροποποιήσεις στο hack εντός μίας ώρας από την τελική σας παρουσίαση. Σε κάποιο σημείο, πρέπει να σταματήσετε να σπάτε τα πράγματα!

Αυτό δεν σημαίνει ότι δεν πρέπει να δημιουργήσετε μια λίστα πιθανών αλλαγών για να αντιμετωπίσετε κάποια άλλη στιγμή. Όπως αναφέρθηκε προηγουμένως, ένα hack, αν γίνει σωστά, είναι απλά ένα MVP, όχι ένα τελικό προϊόν. Αλλά αυτό δεν πρέπει να σας εμποδίσει να σκεφτείτε τις μελλοντικές επαναλήψεις σχετικά με την έννοια. Ας ελπίσουμε ότι ο hack σας είναι κάτι στο οποίο πιστεύετε, οπότε αισθάνεστε ελεύθεροι να επιλέξετε το έργο που θα δημιουργηθεί μετά την ολοκλήρωση του διαγωνισμού. Απλά μην διακινδυνεύσετε να σπάσετε κάτι πριν από την παρουσίασή σας. Μιλώντας εκ των οποίων…

5. Παρουσιάστε όπως το hack σας εξαρτάται από αυτό (το κάνει)

Ορισμένοι hackathons έχουν διαδοχικές διαδηλώσεις, ενώ άλλοι έχουν βιτρίνες όπου οι δικαστές ελέγχουν έξω τα hacks στην αναψυχή τους. Είτε έτσι είτε αλλιώς, η παρουσίαση έχει σημασία, αν όχι περισσότερο, από τον ίδιο τον εαυτό. Εάν έχετε ένα εκπληκτικό έργο αλλά δεν μπορείτε να μεταφέρετε την αμηχανία του, ποιο είναι το θέμα; Βεβαιωθείτε ότι έχετε αφιερώσει σημαντικό μέρος του χρόνου σας στην προετοιμασία και την άσκηση της παρουσίασής σας.

Αυτό είναι όπου οι μη προγραμματιστές στην ομάδα σας μπορούν να είναι εξαιρετικά χρήσιμοι. Αφού καθορίσουν το MVP, αυτά τα μέλη της ομάδας μπορούν να προγραμματίσουν πώς να τα προωθήσουν καλύτερα παράλληλα με την ανάπτυξη - εφ 'όσον οι δύο ομάδες επικοινωνούν μεταξύ τους για οποιεσδήποτε σημαντικές αλλαγές. Οι προγραμματιστές μπορούν να βοηθήσουν να επικεντρωθούν στο "τι," ενώ οι άλλοι συμβάλλουν στην τελειοποίηση του "γιατί".

Πριν σχεδιάσετε το βήμα σας, πρέπει να προσδιορίσετε το κοινό σας. Εάν ο hackathon σας προσκαλέσει το κοινό να κρίνει, θα θελήσετε να τραβήξετε την προσοχή του και να το κρατήσετε ανοιχτό στο νιτρίτσα. Αν παρουσιάζετε στους ενδιαφερόμενους επιχειρηματίες, ενσωματώστε βασικές οικονομικές προβολές και παραδείγματα προστιθέμενης αξίας για τον οργανισμό. Τέλος, αν οι συνάδελφοι χάκερ σας αξιολογούν το έργο σας, μεταβείτε στην τεχνολογική στοίβα και αναδείξτε τις περιπλοκές της αρχιτεκτονικής σας.

Οι πιο αξιομνημόνευτες παρουσιάσεις είναι συνήθως οι πιο διαδραστικές. Είναι ένα πράγμα να δείτε ένα πρόγραμμα που χρησιμοποιείται? είναι άλλο να το βιώσετε μόνοι σας. Αν μπορείτε να βρείτε έναν τρόπο για να επιτρέψετε στο κοινό να κάνει demo του προϊόντος σας, πηγαίνετε για αυτό (εφ 'όσον γνωρίζετε τις πιθανές περιθώρια ακμής σας).

Αν ακολουθήσετε αυτά τα βήματα, θα πρέπει να αφήσετε τον hackathon με ένα ενδιαφέρον, μοναδικό και καλά εκτελεσμένο παραδοτέο. Αυτό δεν σημαίνει ότι είστε εγγυημένοι να κερδίσετε, αλλά αυτό είναι πολύ λιγότερο σημαντικό από τις δεξιότητες και την εμπειρία που κερδίζετε από τη συμμετοχή σε αυτά τα γεγονότα.

Αν ενδιαφέρεστε να συμμετάσχετε στην ομάδα μας, μπορείτε να δείτε τα ανοίγματα εργασίας στο Soluto Nashville και να μου στείλετε μια σημείωση!