Warum Sie an Hackathons teilnehmen sollten

Warum Sie an Hackathons teilnehmen sollten

Vor etwa eineinhalb Jahren habe ich begonnen, an Hackathons teilzunehmen. In dieser Zeit habe ich an ĂŒber 20 Veranstaltungen unterschiedlicher GrĂ¶ĂŸen und Themen in Moskau, Helsinki, Berlin, MĂŒnchen, Amsterdam, ZĂŒrich und Paris teilgenommen. In allen diesen Veranstaltungen habe ich mich auf verschiedene Arten mit Datenanalyse beschĂ€ftigt. Es gefĂ€llt mir, 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Ă€sentationen und der Bekanntgabe der Ergebnisse zu erleben.

Dieser Beitrag ist der erste von drei BeitrĂ€gen ĂŒber Hackathons. Darin werde ich erklĂ€ren, was Hackathons sind und warum Sie beginnen sollten, an ihnen teilzunehmen. Der zweite Beitrag wird sich mit der Schattenseite dieser Veranstaltungen befassen – darĂŒber, wie die Organisatoren Fehler gemacht haben und welche Konsequenzen das hatte. Der dritte Beitrag wird Antworten auf Fragen rund um das Thema Hackathons geben.

Was ist ein Hackathon?

Ein Hackathon ist eine Veranstaltung, die ĂŒber mehrere Tage stattfindet und zum Ziel hat, ein spezifisches Problem zu lösen. In der Regel gibt es mehrere Herausforderungen, die jeweils in Form eines eigenen Tracks prĂ€sentiert werden. Das sponsoring Unternehmen stellt eine Beschreibung der Aufgaben, Erfolgsmetriken (diese können subjektiv, wie "Neuheit und KreativitĂ€t", oder objektiv, wie die Genauigkeit der Klassifikation auf einem Testdatensatz, sein) und Ressourcen zur VerfĂŒgung, um den Teilnehmern zu helfen (API des Unternehmens, DatensĂ€tze, Hardware). Die Teilnehmer mĂŒssen innerhalb des vorgegebenen Zeitrahmens das Problem formulieren, eine Lösung vorschlagen und einen Prototyp ihres Produkts prĂ€sentieren. Die besten Lösungen erhalten Auszeichnungen vom Unternehmen und die Möglichkeit zur weiteren Zusammenarbeit.

Phasen des Hackathons

Nach der Bekanntgabe der Aufgaben schließen sich die Teilnehmer des Hackathons zu Teams zusammen: Jeder "EinzelkĂ€mpfer" erhĂ€lt ein Mikrofon und spricht ĂŒber die gewĂ€hlte Herausforderung, seine Erfahrungen, Ideen und welche Spezialisten er fĂŒr die Umsetzung benötigt. Manchmal kann ein Team aus nur einer Person bestehen, die in der Lage ist, die gesamte Projektarbeit selbst auf einem ausreichend hohen Niveau zu erledigen. Dies ist oft bei Hackathons im Bereich Data Science der Fall, wird jedoch hĂ€ufig fĂŒr Produktveranstaltungen ausgeschlossen oder unerwĂŒnscht — die Organisatoren möchten die Weiterentwicklung des Projekts innerhalb eines Unternehmens sicherstellen; ein gebildetes Team hat gegenĂŒber Teilnehmern, die einen Produktansatz alleine verfolgen, mehrere Vorteile. Ein optimales Team besteht in der Regel aus 4 Personen und beinhaltet: Frontend, Backend, Data Scientist und eine geschĂ€ftliche Fachkraft. Übrigens ist die Unterscheidung zwischen Data-Science- und Produkt-Hackathons recht einfach — wenn es einen Datensatz mit klaren Metriken und einem Leaderboard gibt oder man mit Code in einem Jupyter Notebook gewinnen kann, handelt es sich um einen Data-Science-Hackathon; alles andere, wo eine Anwendung, eine Website oder etwas Ansprechendes erstellt werden muss, ist ein Produkt-Hackathon.

In der Regel beginnt die Arbeit an einem Projekt am Freitagabend um 21 Uhr, und die Frist endet am Sonntagmorgen um 10 Uhr. Ein Teil dieser Zeit muss fĂŒr Schlaf eingeplant werden (durchzumachen und zu programmieren ist ein sicherer Weg zum Scheitern, das habe ich erlebt), was bedeutet, dass die Teilnehmer nicht viel Zeit haben, um etwas Qualitatives zu schaffen. Um den Teilnehmern zu helfen, sind Unternehmensvertreter und Mentoren vor Ort.

Die Arbeit am Projekt beginnt mit GesprĂ€chen mit den Unternehmensvertretern, da sie die Spezifika der Aufgabe, die Metriken und voraussichtlich die Kriterien fĂŒr die Bewertung Ihrer Arbeiten am Ende besser verstehen. Ziel dieser Kommunikation ist es, herauszufinden, welche Bereiche besonders relevant sind und worauf Sie Ihre Aufmerksamkeit und Zeit konzentrieren sollten.

Auf einem Hackathon wurde die Aufgabe gestellt, eine Regression auf einem Datensatz mit tabellarischen Daten und Bildern unter Verwendung der Metrik RMSE durchzufĂŒhren. Nachdem ich mit dem Data Scientist des Unternehmens gesprochen hatte, wurde mir klar, dass sie keine Regression, sondern eine Klassifizierung benötigen. Irgendjemand aus dem Management hatte entschieden, dass die Aufgabe am besten auf diese Weise gelöst werden sollte. Die Klassifizierung ist jedoch nicht dazu gedacht, einen Anstieg der finanziellen Kennzahlen zu erzielen, sondern um herauszufinden, welche Parameter bei der Entscheidungsfindung am wichtigsten sind, um sie anschließend manuell zu verarbeiten. Das bedeutet, dass die ursprĂŒngliche Aufgabe (Regression mit RMSE) in eine Klassifizierung geĂ€ndert wird; der Bewertungsfokus verschiebt sich von der erreichten Genauigkeit zur Möglichkeit, das Ergebnis zu erklĂ€ren. Dies schließt die Verwendung von Stacking und Black-Box-Algorithmen aus. Ein solcher Dialog hat mir viel Zeit gespart und meine Gewinnchancen erhöht.

Sobald Sie verstanden haben, was zu tun ist, beginnt die tatsĂ€chliche Projektarbeit. Sie sollten Meilensteine festlegen – Zeitpunkte, bis zu denen bestimmte Aufgaben erledigt sein mĂŒssen; es ist auch hilfreich, weiterhin mit Mentoren – vertretenden Mitarbeitern des Unternehmens und technischen Fachleuten – zu kommunizieren. Ein frischer Blick auf das Problem kann interessante Lösungen aufzeigen.

Da bei Hackathons viele Neulinge teilnehmen, ist es von den Organisatoren aus gutem Stil, VortrĂ€ge und Workshops abzuhalten. Normalerweise gibt es drei VortrĂ€ge – einen darĂŒber, wie man seine Idee als Produkt prĂ€sentiert, einen technischen Vortrag (zum Beispiel ĂŒber die Nutzung von offenen APIs im maschinellen Lernen, sodass Sie nicht innerhalb von zwei Tagen Ihr eigenes Speech-to-Text-System entwickeln mĂŒssen, sondern auf bestehende Lösungen zurĂŒckgreifen können), und einen Vortrag ĂŒber das Pitching (wie man sein Produkt prĂ€sentiert und wie man richtig gestikuliert, damit das Publikum nicht gelangweilt ist). Es gibt verschiedene AktivitĂ€ten, um die Teilnehmer aufzuwecken – 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 technischer Expertise – funktioniert das, was Sie behaupten, wirklich? Ziel dieser ÜberprĂŒfung ist es, Teams mit ansprechenden PrĂ€sentationen und Schlagwörtern von denjenigen zu trennen, die tatsĂ€chlich etwas erreicht haben. Leider ist technische Expertise nicht auf allen Hackathons vorhanden, und es kommt vor, dass ein Team mit 12 Folien und der Denkweise „...Blockchain, Quantencomputing, und AI erledigt den Rest...” den ersten Platz gewinnt. Solche FĂ€lle sind selten, aber da sie am besten im GedĂ€chtnis bleiben, glauben viele, dass eine gute PrĂ€sentation 99 % des Erfolgs bei einem Hackathon ausmacht. Die PrĂ€sentation selbst ist in der Tat wichtig, aber ihr Anteil liegt nicht ĂŒber 30%.

Nach den PrĂ€sentationen der Teilnehmer trifft die Jury eine Entscheidung ĂŒber die Preisverleihung. Damit ist der offizielle Teil des Hackathons abgeschlossen.

Motivation zur Teilnahme an Hackathons

Erfahrung

Aus der Perspektive der Erfahrungen ist ein Hackathon eine einzigartige Veranstaltung. Es gibt nicht viele Orte, an denen man innerhalb von zwei Tagen eine Idee aus dem Nichts realisieren und zeitnahes Feedback zu seiner Arbeit erhalten kann. WĂ€hrend des Hackathons werden kritisches Denken, Teamarbeit, Zeitmanagement, das Arbeiten unter Stress, die FĂ€higkeit, die Ergebnisse verstĂ€ndlich zu prĂ€sentieren, sowie viele andere FĂ€higkeiten gefördert. Aus diesem Grund sind Hackathons ein großartiger Ort fĂŒr Personen mit theoretischem Wissen, die praktische Erfahrungen sammeln möchten.

Preise

In der Regel liegt der Preisgeldtopf eines Hackathons bei etwa 1.500 bis 10.000 Euro fĂŒr den ersten Platz (in Russland zwischen 100.000 und 300.000 Rubel). Den erwarteten Nutzen (Expected Value, EV) aus der Teilnahme kann man mit einer einfachen Formel berechnen:

EV = Preis * Gewinnquote + ZukĂŒnftiger_Wert - Kosten

wobei Preis — Höhe des Preises (zur Vereinfachung gehen wir davon aus, dass es nur einen Preis gibt);
Gewinnquote — die Gewinnwahrscheinlichkeit (fĂŒr ein unerfahrenes Team ist dieser Wert auf maximal 10 % beschrĂ€nkt, fĂŒr erfahrene Teams liegt er bei 50 % oder mehr; ich habe Menschen getroffen, die von jedem Hackathon mit einem Preis nach Hause gegangen sind, aber das ist eher die Ausnahme; auf lange Sicht wird ihre Gewinnquote unter 100 % liegen);
Future_Value — ein Wert, der den zukĂŒnftigen Gewinn aus der Teilnahme an einem Hackathon zeigt: das kann der Gewinn aus erworbenen Erfahrungen, geknĂŒpften Kontakten, erhaltenen Informationen usw. sein. Es ist praktisch unmöglich, diesen Wert genau zu bestimmen, aber man sollte ihn im Hinterkopf behalten;
Costs — Kosten fĂŒr Transport, Unterkunft, andere Ausgaben.

Die Entscheidung zur Teilnahme wird auf Grundlage des Vergleichs des EV des Hackathons mit dem EV der AktivitĂ€t getroffen, die Sie unternehmen wĂŒrden, wenn der Hackathon nicht stattgefunden hĂ€tte: Wenn Sie am Wochenende auf dem Sofa liegen und sich langweilen wollten, dann ist es wahrscheinlich sinnvoll, am Hackathon teilzunehmen; wenn Sie Zeit mit Ihren Eltern oder Ihrer Freundin verbringen möchten — bringen Sie sie in Ihr Hackathon-Team (nur ein Scherz, entscheiden Sie selbst), wenn Sie freiberuflich arbeiten wollen — vergleichen Sie Dollar pro Stunde.

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, wie an einem normalen Arbeitstag Geld zu verdienen, aber es gibt auch Nuancen (TeamgrĂ¶ĂŸe, Art des Hackathons, Preisgelder usw.). Insgesamt sind Hackathons derzeit kein Goldgruben, aber sie können eine angenehme Aufstockung des persönlichen Budgets bieten.

Einstellung in Unternehmen und Networking

FĂŒr Unternehmen ist ein Hackathon eine Möglichkeit, neue Mitarbeiter zu rekrutieren. Es wird Ihnen viel leichter fallen, zu zeigen, dass Sie eine fĂ€hige Person sind, die bei einem Hackathon arbeiten kann, als im VorstellungsgesprĂ€ch, wĂ€hrend Sie einen BinĂ€rbaum an die Tafel zeichnen (was ĂŒbrigens nicht immer dem entspricht, was Sie tatsĂ€chlich als Data Scientist machen werden, aber man muss den Traditionen Tribut zollen). Eine solche ÜberprĂŒfung unter 'Kampf' Bedingungen kann einen Testtag ersetzen.

Ich habe meinen ersten Job dank eines Hackathons erhalten. Bei diesem Hackathon habe ich gezeigt, dass man aus Daten mehr Geld herausholen kann, und erklĂ€rt, wie ich beabsichtige, dies zu tun. Ich habe ein Projekt beim Hackathon gestartet, es gewonnen und dann das Projekt in dem Unternehmen, das gesponsert hat, fortgefĂŒhrt. Es war der vierte Hackathon in meinem Leben.

Die Möglichkeit, einen einzigartigen Datensatz zu erhalten

Dies ist ein sehr wichtiger Punkt fĂŒr Data Science Hackathons, dessen Bedeutung nicht allen bewusst ist. In der Regel stellen die Sponsorunternehmen wĂ€hrend der Veranstaltung reale DatensĂ€tze zur VerfĂŒgung. Diese Daten sind privat und unterliegen einer Geheimhaltungsvereinbarung (NDA), was jedoch nicht daran hindert, Ihnen einen Proof of Concept mit einem realen Datensatz zu zeigen, anstelle eines Spielzeug-Datensatzes wie dem Titanic. Solche Ergebnisse können spĂ€ter bei der Jobsuche in diesem Unternehmen oder bei einem Wettbewerber von großem Nutzen sein, oder auch zur BegrĂŒndung Ă€hnlicher Projekte. Sie werden zustimmen, dass es bei gleichen Bedingungen vorteilhafter ist, abgeschlossene Projekte vorzuweisen, die positiv bewertet wurden, als keine solchen zu haben. Insgesamt spielen solche realisierten Projekte eine Ă€hnliche Rolle wie Medaillen und Status auf Kaggle, jedoch ist ihr Wert fĂŒr die Industrie offensichtlicher.

Tipps

Insgesamt ist die Arbeit an einem Hackathon eine recht vielschichtige Erfahrung und es ist schwierig, eine feste Liste von Regeln zu formulieren. Dennoch möchte ich hier eine Reihe von Beobachtungen anfĂŒhren, die einem Neuling helfen können:

  1. Zögern Sie nicht, an Hackathons teilzunehmen, auch wenn Sie keine Erfahrung oder kein Team haben. Überlegen Sie, wie Sie nĂŒtzlich sein könnten. Vielleicht haben Sie eine interessante Idee oder verfĂŒgen ĂŒber Fachkenntnisse in einem bestimmten Bereich? Sie können Ihr Fachwissen nutzen, um Probleme zu formulieren und unkonventionelle Lösungen zu finden. Oder sind Sie vielleicht besonders gut im Recherchieren? Diese FĂ€higkeit kann Ihnen viel Zeit sparen, wenn Sie bereits existierende Lösungen auf GitHub finden. Oder sind Sie ein Experte in der Optimierung von LightGBM-Parametern? In diesem Fall sollten Sie nicht zu einem Hackathon gehen, sondern Ihre FĂ€higkeiten in Kaggle-Wettbewerben unter Beweis stellen.
  2. Taktik ist wichtiger als Manöver. Ihre Aufgabe beim Hackathon besteht darin, ein Problem zu lösen. Manchmal muss man das Problem zuerst identifizieren, um es zu lösen. ÜberprĂŒfen Sie, ob das identifizierte Problem tatsĂ€chlich relevant fĂŒr das Unternehmen ist. PrĂŒfen Sie, ob Ihre Lösung dem Problem angemessen ist, 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 Budgets Sie erhalten haben, interessiert die meisten wenig.
  3. Nehmen Sie an möglichst vielen Hackathons teil, scheuen Sie sich aber nicht, von schlecht organisierten Veranstaltungen zu gehen.
  4. FĂŒgen Sie die Ergebnisse Ihrer Arbeit beim Hackathon Ihrem Lebenslauf hinzu und zögern Sie nicht, öffentlich darĂŒber zu schreiben.

Warum Sie an Hackathons teilnehmen sollten
Die Essenz von Hackathons. Kurz zusammengefasst

Quelle: habr.com

Erwerben Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server đŸ”„ Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster