
Vor etwa anderthalb Jahren begann ich, an Hackathons teilzunehmen. In diesem Zeitraum habe ich an ĂŒber 20 Veranstaltungen verschiedener GröĂen und Themen in Moskau, Helsinki, Berlin, MĂŒnchen, Amsterdam, ZĂŒrich und Paris teilgenommen. Bei allen Veranstaltungen war ich in irgendeiner Form mit der Datenanalyse beschĂ€ftigt. Ich liebe es, in neue StĂ€dte zu reisen, neue Kontakte zu knĂŒpfen, frische Ideen zu entwickeln, alte Konzepte in kurzer Zeit umzusetzen und den Adrenalinkick wĂ€hrend der PrĂ€sentation und Bekanntgabe der Ergebnisse zu erleben.
Dieser Beitrag ist der erste von drei BeitrĂ€gen zum Thema Hackathons, in dem ich erklĂ€ren werde, was Hackathons sind und warum Sie damit beginnen sollten, an Hackathons teilzunehmen. Der zweite Beitrag wird sich mit der dunklen Seite dieser Veranstaltungen beschĂ€ftigen â wie die Organisatoren bei der DurchfĂŒhrung Fehler gemacht haben und was daraus resultierte. Der dritte Beitrag wird Antworten auf Fragen zum Thema rund um Hackathons geben.
Was ist ein Hackathon?
Ein Hackathon ist eine Veranstaltung, die ĂŒber mehrere Tage stattfindet und das Ziel hat, ein bestimmtes Problem zu lösen. In der Regel gibt es beim Hackathon mehrere Probleme, die jeweils in Form eines separaten Tracks prĂ€sentiert werden. Das sponsoring Unternehmen stellt eine Aufgabenbeschreibung, Erfolgskriterien (diese können subjektiv wie âNeuheit und KreativitĂ€tâ oder objektiv â wie die Genauigkeit der Klassifizierung auf einem Testdatensatz â sein) und Ressourcen zur VerfĂŒgung, um den Erfolg zu erreichen (API des Unternehmens, Datensets, Hardware). Die Teilnehmer mĂŒssen innerhalb der gegebenen Zeit ein Problem formulieren, eine Lösung vorschlagen und einen Prototyp ihres Produkts prĂ€sentieren. Die besten Lösungen erhalten Preise vom Unternehmen und die Möglichkeit zur weiteren Zusammenarbeit.
Phasen eines Hackathons
Nach der Bekanntgabe der Aufgaben schlieĂen sich die Teilnehmer des Hackathons in Teams zusammen: Jeder "EinzelkĂ€mpfer" erhĂ€lt ein Mikrofon und spricht ĂŒber die gewĂ€hlte Aufgabe, seine Erfahrungen, Ideen und welche Art von Fachleuten er zur Umsetzung benötigt. Manchmal kann ein Team aus nur einer Person bestehen, die das gesamte Projekt eigenstĂ€ndig auf einem ausreichend hohen Niveau umsetzen kann. Dies ist relevant fĂŒr Hackathons zur Datenanalyse, wird jedoch oft untersagt oder ist unerwĂŒnscht bei Produktveranstaltungen â die Organisatoren sind darauf aus, die Arbeit an dem Projekt fortzusetzen, jedoch bereits im Unternehmen; das gebildete Team hat gegenĂŒber den Teilnehmern, die einen Produkt allein erstellen möchten, eine Reihe von Vorteilen. Ein optimales Team besteht normalerweise aus 4 Personen und umfasst: Frontend-Entwickler, Backend-Entwickler, Data Scientist und einen GeschĂ€ftsverantwortlichen. Das MissverstĂ€ndnis ĂŒber Datenwissenschaft- / Produkt-Hackathons ist ziemlich einfach â wenn es einen Datensatz mit einer klaren Metrik und einer Rangliste gibt oder man mit Code in einem Jupyter-Notebook gewinnen kann, handelt es sich um einen Datenwissenschafts-Hackathon; alles andere â wo eine Anwendung, Webseite oder etwas Fesselndes erstellt werden muss â ist produktorientiert.
In der Regel beginnt die Arbeit an einem Projekt am Freitagabend um 21 Uhr, und die Frist ist am Sonntagmorgen um 10 Uhr. Ein Teil dieser Zeit muss fĂŒr Schlaf aufgewendet werden (nicht zu schlafen und zu codieren ist der sichere Weg zum Scheitern, ich habe es ausprobiert), was bedeutet, dass die Teilnehmer nicht viel Zeit haben, um etwas von hoher QualitĂ€t zu erstellen. Um die Teilnehmer zu unterstĂŒtzen, sind Vertreter des Unternehmens und Mentoren vor Ort.
Die Arbeit an dem Projekt beginnt mit der Kommunikation mit den Vertretern des Unternehmens, da sie die Spezifik der Aufgabe und die Metriken besser verstehen und wahrscheinlich am Ende Ihre Arbeiten beurteilen werden. Ziel dieser Kommunikation ist es zu verstehen, welche Bereiche am relevantesten sind und worauf man seine Aufmerksamkeit und Zeit konzentrieren sollte.
Bei einem Hackathon wurde die Aufgabe einer Regression mit einem Datensatz aus tabellarischen Daten und Bildern sowie einer klaren Kennzahl â RMSE â gestellt. Nachdem ich mit dem Datenwissenschaftler des Unternehmens gesprochen hatte, wurde mir klar, dass sie keine Regression, sondern Klassifikation benötigten, doch jemand aus dem Management hatte entschieden, dass die Aufgabe am besten so gelöst werden sollte. Die Klassifikation ist nicht dazu da, um einen Anstieg der finanziellen Kennzahlen zu erzielen, sondern um zu verstehen, welche Parameter bei Entscheidungen am wichtigsten sind, und sie anschlieĂend manuell zu verarbeiten. Das bedeutet, dass die ursprĂŒngliche Aufgabe (Regression mit RMSE) jetzt in Klassifikation umgewandelt wird; die PrioritĂ€t der Bewertung wechselt von der erreichten Genauigkeit zur Möglichkeit, das Ergebnis zu erklĂ€ren. Dies schlieĂt die Nutzung von Stacking und Black-Box-Algorithmen aus. Ein solches GesprĂ€ch hat mir viel Zeit gespart und meine Chancen auf den Sieg erhöht.
Nachdem Sie verstanden haben, was Sie tun mĂŒssen, beginnt die eigentliche Arbeit am Projekt. Sie sollten Checkpunkte festlegen â Zeiten, bis zu denen die festgelegten Aufgaben erledigt sein mĂŒssen; es ist auch ratsam, den Austausch mit Mentoren â Vertretern des Unternehmens und technischen Spezialisten â fortzusetzen, da dies hilfreich ist, um den Kurs Ihres Projekts zu justieren. Ein frischer Blick auf das Problem kann auf eine interessante Lösung hinweisen.
Da an Hackathons viele AnfĂ€nger teilnehmen, gehört es sich fĂŒr die Organisatoren, VortrĂ€ge und Workshops anzubieten. Normalerweise gibt es drei VortrĂ€ge â darĂŒber, wie man seine Idee als Produkt prĂ€sentiert, einen technischen Vortrag (zum Beispiel ĂŒber die Anwendung offener APIs im maschinellen Lernen, damit Sie nicht in zwei Tagen Ihr eigenes Speech2Text schreiben mĂŒssen, sondern ein fertiges verwenden können), und einen Vortrag ĂŒber das Pitching (wie man sein Produkt prĂ€sentiert und richtig mit den HĂ€nden auf der BĂŒhne gestikuliert, sodass es den Zuhörern nicht langweilig wird). Es gibt verschiedene AktivitĂ€ten, um die Teilnehmer zu beleben â eine Yoga-Session, TischfuĂball und Tennis oder ein Konsolenspiel.
Am Sonntagmorgen mĂŒssen Sie die Ergebnisse Ihrer Arbeit der Jury prĂ€sentieren. Bei guten Hackathons beginnt alles mit einer technischen Begutachtung â funktioniert das, was Sie behaupten? Ziel dieser ĂberprĂŒfung ist es, Teams mit einer schönen PrĂ€sentation und Fachbegriffen zu filtern, aber ohne Produkt von denjenigen, die tatsĂ€chlich etwas gemacht haben. Leider ist technische Begutachtung nicht auf allen Hackathons vorhanden, und es gibt FĂ€lle, in denen ein Team mit 12 Folien und der Denkweise â... Blockchain, Quantencomputing, und hier wird KI das erledigen...â den ersten Platz gewinnt. Solche PrĂ€zedenzfĂ€lle sind nicht sehr hĂ€ufig, doch da sie am besten im GedĂ€chtnis bleiben, denken viele, dass eine gute PrĂ€sentation 99% des Sieges bei einem Hackathon ausmacht. Die PrĂ€sentation ist ĂŒbrigens wirklich wichtig, aber ihr Beitrag liegt bei maximal 30%.
Nach den PrĂ€sentationen der Teilnehmer trifft die Jury eine Entscheidung ĂŒber die Auszeichnung der Sieger. Damit ist der offizielle Teil des Hackathons beendet.
Motivation zur Teilnahme an Hackathons
Erfahrung
Aus der Perspektive der gewonnenen Erfahrung ist ein Hackathon eine einzigartige Veranstaltung. Es gibt nicht viele Gelegenheiten, eine Idee aus dem Nichts innerhalb von 2 Tagen umzusetzen und sofortiges Feedback zu seiner Arbeit zu erhalten. WĂ€hrend eines Hackathons werden kritisches Denken, Teamarbeit, Zeitmanagement, die FĂ€higkeit, in stressigen Situationen zu arbeiten, die FĂ€higkeit, seine Arbeitsergebnisse verstĂ€ndlich zu prĂ€sentieren, PrĂ€sentationsfĂ€higkeiten und viele andere FĂ€higkeiten geschult. Deshalb sind Hackathons ein hervorragender Ort fĂŒr Menschen mit theoretischem Wissen, die reale Erfahrungen sammeln möchten.
Preise
In der Regel betrĂ€gt der Preisfonds eines Hackathons etwa 1.500 bis 10.000 Euro fĂŒr den ersten Platz (in Russland â 100.000 bis 300.000 Rubel). Den erwarteten Nutzen (expected value, EV) aus der Teilnahme kann man mit einer einfachen Formel berechnen:
EV = Preis * Gewinnrate + ZukĂŒnftiger_Wert - Kosten wo Preis â die GröĂe des Preises (zur Vereinfachung gehen wir davon aus, dass es nur einen Preis gibt);
Gewinnrate â die Wahrscheinlichkeit zu gewinnen (fĂŒr ein unerfahrenes Team wird dieser Wert auf maximal 10% begrenzt sein, fĂŒr ein erfahreneres Team 50% und mehr; ich habe Menschen getroffen, die von jedem Hackathon mit einem Preis nach Hause gingen, aber das ist eher die Ausnahme, und auf lange Sicht wird ihre Gewinnrate unter 100% liegen);
ZukĂŒnftiger_Wert â eine GröĂe, die den zukĂŒnftigen Gewinn aus der Teilnahme an einem Hackathon zeigt: das kann Gewinn aus erworbener Erfahrung, geknĂŒpften Kontakten, erhaltenen Informationen usw. sein. Diese GröĂe ist praktisch nicht genau zu bestimmen, aber man sollte sie im Hinterkopf behalten;
Kosten â Ausgaben fĂŒr Transport, Unterkunft, anderes.
Die Entscheidung zur Teilnahme wird auf der Grundlage des Vergleichs von EV des Hackathons mit EV der AktivitĂ€t getroffen, die Sie ohne den Hackathon gemacht hĂ€tten: Wenn Sie am Wochenende auf der Couch herumliegen und in der Nase bohren wollten, dann sollten Sie wahrscheinlich am Hackathon teilnehmen; wenn Sie Zeit mit Ihren Eltern oder Ihrer Freundin verbringen wollen â bringen Sie sie in Ihr Hackathon-Team (SpaĂ, entscheiden Sie selbst), wenn Sie freiberuflich arbeiten wollen â vergleichen Sie Dollar-Stunden.
Nach meinen Berechnungen kann ich sagen, dass es fĂŒr einen durchschnittlichen Data Scientist auf Junior- bis Mid-Level in Russland vergleichbar ist, an Hackathons teilzunehmen, mit dem Geld, das man an einem normalen Arbeitstag verdienen wĂŒrde, aber es gibt Nuancen (TeamgröĂe, Art des Hackathons, Preisgeld usw.). Insgesamt sind Hackathons derzeit kein goldener Boden, aber sie können eine angenehme Erhöhung des persönlichen Budgets bieten.
Einstellung in ein Unternehmen und Networking
FĂŒr Unternehmen ist der Hackathon eine der Möglichkeiten, neue Mitarbeiter einzustellen. Es wird Ihnen viel leichter fallen, zu zeigen, dass Sie ein vernĂŒnftiger Mensch sind und bei einem Hackathon arbeiten können, als in einem VorstellungsgesprĂ€ch, wo Sie ein binĂ€res Baumdiagramm an die Tafel zeichnen (was ĂŒbrigens nicht immer dem entspricht, was Sie in einem echten Data Science Job tun werden, aber Traditionen sollte man respectieren). Ein solches Screening unter 'Kampfbedingungen' kann einen Testtag ersetzen.
Ich habe meinen ersten Job dank eines Hackathons bekommen. Beim Hackathon habe ich gezeigt, dass man mehr Geld aus Daten herauspressen kann und erklÀrt, wie ich das vorhatte. Ich begann das Projekt beim Hackathon, gewann es und setzte das Projekt dann im Unternehmen des Sponsors fort. Es war der vierte Hackathon in meinem Leben.
Die Möglichkeit, einen einzigartigen Datensatz zu erhalten
Dies ist ein sehr aktueller Punkt fĂŒr Data Science Hackathons, dessen Bedeutung nicht jeder versteht. Normalerweise stellen die Sponsorunternehmen bei der Veranstaltung reale DatensĂ€tze zur VerfĂŒgung. Diese Daten sind privat, sie unterliegen einer NDA, was jedoch nicht daran hindert, Ihnen einen Proof of Concept mit einem realen Datensatz zu zeigen, statt mit einem Spielzeug-Titanic. ZukĂŒnftig werden Ihnen Ă€hnliche Ergebnisse erheblich bei der Jobsuche in diesem Unternehmen oder einem Wettbewerbsunternehmen oder bei der BegrĂŒndung Ă€hnlicher Projekte helfen. Stimmen Sie zu, dass es vorteilhaft ist, abgeschlossene Projekte vorweisen zu können, die positiv bewertet wurden, als nichts zu haben. Insgesamt spielen solche realisierten Projekte eine Ă€hnliche Rolle wie Medaillen und Status auf Kaggle, aber fĂŒr die Branche ist ihr Wert offensichtlicher.
Tipps
Insgesamt ist die Arbeit bei einem Hackathon eine ziemlich abwechslungsreiche Erfahrung und es ist schwierig, eine bestimmte Liste von Regeln aufzustellen. Ich möchte jedoch eine Liste von Beobachtungen zusammenstellen, die neuen Teilnehmern helfen können:
- Scheuen Sie sich nicht, an Hackathons teilzunehmen, selbst wenn Sie keine Erfahrung oder kein Team haben. Ăberlegen Sie, wie Sie hilfreich sein könnten. Vielleicht haben Sie eine interessante Idee oder Sie sind in einem bestimmten Bereich gut informiert? Sie können Ihr Fachwissen bei der Problembeschreibung nutzen und unkonventionelle Lösungswege finden. Oder vielleicht sind Sie der Beste im Googeln? Ihre FĂ€higkeit kann eine Menge Zeit sparen, wenn Sie auf GitHub fertige Implementierungen finden. Oder verstehen Sie sich bestens auf das Tuning von LightGBM-Parametern? In diesem Fall, gehen Sie nicht zu einem Hackathon, sondern beweisen Sie dies in Kaggle-Wettbewerben.
- Taktik ist wichtiger als Manöver. Ihre Aufgabe bei einem Hackathon ist es, ein Problem zu lösen. Manchmal muss man ein Problem identifizieren, um es zu lösen. ĂberprĂŒfen Sie, ob das identifizierte Problem tatsĂ€chlich relevant fĂŒr das Unternehmen ist. Stellen Sie fest, ob Ihre Lösung das Problem tatsĂ€chlich adressiert, und fragen Sie sich, ob Ihre Lösung optimal ist. Bei der Bewertung Ihrer Lösung wird in erster Linie auf die Relevanz des Problems und die Angemessenheit der vorgeschlagenen Lösung geachtet. Die Architektur Ihres neuronalen Netzwerks oder wie viele Runden-Auktionen Sie erhalten haben, interessieren die meisten nicht.
- Besuchen Sie so viele Hackathons wie möglich, aber scheuen Sie sich nicht, schlecht organisierte Veranstaltungen zu verlassen.
- FĂŒgen Sie die Ergebnisse Ihrer Arbeit beim Hackathon in Ihren Lebenslauf ein und scheuen Sie sich nicht, öffentlich darĂŒber zu schreiben.

Die Essenz von Hackathons. Kurz zusammengefasst
Quelle: habr.com
