Beitrag zu einem Open Source-Projekt: Erste Schritte

Open-Source-Projekte haben im Laufe der Jahre eine Reihe nützlicher Software hervorgebracht. Viele der großartigen Technologien, die wir heute verwenden, sind aus der Entwicklung von Open Source hervorgegangen! Android, Firefox, VLC-Mediaplayer, MongoDB, Linux, Docker und Python, um nur einige zu nennen.

Sogar viele der Technologiegiganten erkennen den Nutzen und erlauben ihren Mitarbeitern, sich einen Tag frei zu nehmen und ihre Zeit für Open-Source-Projekte zu verwenden. Tatsächlich haben viele Open Source-Projekte selbst.

Die große Mehrheit der Autoren von Open Source-Projekten arbeitet jedoch nicht für Tech-Giganten. Jeder kann seine Spuren in einem wichtigen Stück offener Software hinterlassen oder sein eigenes „nächstes großes Ding“ erstellen. Die Teilnahme an einem Open Source-Projekt kann Ihnen auch dabei helfen, Ihre Fähigkeiten zu verbessern, etwas Neues zu lernen, Mentoring zu erhalten oder lebenslange Freundschaften zu schließen. Beiträge zu Open-Source-Projekten sollten sowohl kurz- als auch langfristig von gegenseitigem Nutzen sein. Viele Unternehmen stellen aktiv Entwickler in Vollzeit ein, von denen, die am meisten zu einem Projekt beitragen. Dies kann eine großartige Möglichkeit sein, Ihre Fähigkeiten zu demonstrieren und gleichzeitig neue zu erlernen.

In diesem Artikel werden einige Tipps zusammengefasst, die wir mit denen teilen, die sich mit MindsDB beschäftigen möchten. Auch wenn jedes Projekt anders ist, helfen Ihnen diese Ideen hoffentlich, sich an Open Source-Projekten zu beteiligen.

GitHub-Seite von MindsDB

Bevor Sie Ihren ersten Beitrag leisten

1. Beurteilen Sie sich selbst:

Der erste Schritt besteht darin, alle technischen oder nichttechnischen Fähigkeiten zu bewerten, die Sie haben oder verbessern möchten. Fragen Sie sich, wo ich den größten Mehrwert erzielen kann? Dies kann direkt dazu beitragen, Code zu schreiben, auf Fehler zu testen oder sogar die Dokumentation zu verbessern, damit andere die Software effizienter nutzen können.

2. Lernen Sie GitHub kennen

Fast alle Open-Source-Projekte verwendeten ein Versionskontrollsystem, ein Tool, das beim Zusammenführen von neuem Code in das Projekt (das Haupt- „Repository“) hilft. Normalerweise dreht sich die Zusammenarbeit um eine Website, auf der sich das zentrale Repository befindet. Diese Websites umfassen Github, Bitbucket und Gitlab. Github ist mit Abstand die beliebteste und die, die wir hier bei MindsDB verwenden.

Im Allgemeinen ermöglichen Versionskontrollsysteme, alle Änderungen in einem Projekt zu verfolgen, ohne mehrere Dateien zu speichern. Erstellen Sie ein Konto bei Github, melden Sie sich an und durchsuchen Sie die verschiedenen Registerkarten oben auf der Website. Hier finden Sie Informationen zu Github, Entwicklungsleitfäden, Open Source-Projekten, Veranstaltungen, Konferenzen usw. Wenn Sie diesem Leitfaden folgen, erfahren Sie alles über die Grundlagen eines GitHub.

3. Suchen Sie nach relevanten Projekten und treten Sie der Community bei

Suchen Sie nach relevanten Projekten auf Github basierend auf Ihren Fähigkeiten. Zu diesem Zweck können Sie Github Explore verwenden oder sich bei Code Triage anmelden, um täglich eine E-Mail zu einem anderen Thema zu erhalten. Suchen Sie bei der Auswahl eines Projekts nach einem Projekt, das aktiv gepflegt wird (viele Commits) und viele Probleme aufweist. Sobald Sie Ihre relevanten Projekte gefunden haben, können Sie das Projekt von Star & Fork abonnieren und die Mailingliste und den Slack-Channel abonnieren. Dies ist der beste Weg, um Hilfe zu erhalten, wenn Sie das Projekt nicht einrichten oder Ihren ersten Beitrag leisten können.

Machen Sie Ihren ersten Beitrag

1. Spielen Sie mit der Software: Find Bugs

Probieren Sie zuerst die Software aus, installieren Sie sie und spielen Sie sie, versuchen Sie, sie zu brechen, und prüfen Sie, ob sie das tut, was auf der Box steht. Dies ist ein großartiger Ort, an dem Sie ganz einfach einen Mehrwert schaffen können, indem Sie alle Probleme melden, die Sie finden. Jedes Projekt hat wahrscheinlich eine etwas andere Vorlage für die Meldung von Problemen, aber im Wesentlichen enthalten alle ähnliche Informationen. (Die Vorlage für MindsDB-Probleme finden Sie hier.)

2. Bestehende Probleme untersuchen

Wenn Sie herausgefunden haben, zu welchem ​​Projekt Sie beitragen möchten, durchsuchen Sie das Github-Repository, lesen Sie die Dokumente und wechseln Sie zur Registerkarte Issues. Hier finden Sie alle offenen Fragen, an denen Sie arbeiten können. Diese Probleme können vom Anfänger bis zum Fortgeschrittenen auftreten. Wenn das Repository ordnungsgemäß verwaltet wird, werden die Probleme mit "Anfänger", "Erstanfänger", "Hilfesuchende" usw. gekennzeichnet, damit Sie an den einfachsten Aufgaben arbeiten können, um Vertrauen und Erfahrung mit dem Projekt zu gewinnen.

3. Helfen Sie mit, die Dokumentation zu verbessern

Sie müssen jedoch nicht sofort codieren. Sie können zur Dokumentation beitragen, das Entwicklerhandbuch erstellen, anderen Personen bei der Lösung ihrer Probleme helfen usw. Lesen Sie die Dokumentation, und wenn Sie der Meinung sind, dass etwas fehlt, können Sie hier einen guten ersten Beitrag leisten. Sie können entweder ein Problem ansprechen oder, wenn Sie sich sicher genug fühlen, die fehlenden Teile selbst hinzufügen. Hier können Sie die Dokumente von MindsDB einsehen.

4. Schlagen Sie neue Funktionen vor

Wenn Ihnen das Projekt gefällt und Sie es nützlich finden, können Sie auch neue Funktionen anfordern, um es zu verbessern. (Unsere Vorlage finden Sie hier) Oder noch besser, Sie können versuchen, sie selbst hinzuzufügen.

Die Kathedrale und der Basar

Ein klassisches Buch über OSS ist Die Kathedrale und der Basar. Es geht um die Entwicklung im Basar-Stil, ein Bottom-up-Ansatz, der Entwicklern und Anwendern Macht verleiht. Vergleicht man es mit dem „Dom“ -Stil, einem Top-Down-Ansatz, bei dem die Macht bei Managern und Produktbesitzern liegt.

Es sind diese Ideen, die zu Arbeitsansätzen geführt haben, wie sie im Agilen Manifest beschrieben sind. Unabhängig davon, wie viele Unternehmen versucht haben, einen „Basar“ -Entwicklungsansatz nachzuahmen, können sie dies nicht so gut tun wie Open-Source-Projekte.

In der Welt der Unternehmensprojekte sind Architekten, Manager und Product Owner führend. In der Welt von Open Source bestimmen Benutzer und Entwickler die Spezifikationen.

Open-Source-Software ist großartig, weil sie die „kollektive Intelligenz“ ihrer Entwickler und Benutzer nutzt. Die meisten Entwickler in einem Open-Source-Projekt stammen aus seiner Kernnutzerbasis, die meisten „Leader“ in einem Open-Source-Projekt sind einfach die Entwickler, die die meisten Ideen und den meisten Code einbringen.

Dieser "Basar" -Ansatz ist nicht unbedingt besser als der "Kathedrale" -Ansatz, aber es ist ein System, das es wert ist, ausprobiert zu werden. Es kann einem neuen Entwickler viel Macht über eine Software geben, unabhängig von externen Kriterien wie Alter oder Dienstalter innerhalb der Organisation. Das einzige Tauschzeichen ist Code. Je wertvoller der Beitrag, desto mehr Einfluss haben Sie auf das Design.

Wenn nicht anders, sollten Sie an einigen Open-Source-Projekten arbeiten, um diesen Bottom-up-Stil des Software-Designs kennenzulernen.

Nächste Ziele als Open Source Entwickler

1. Konferenzen besuchen

Als Open Source-Entwickler können Sie an Konferenzen und Veranstaltungen zum Thema Codierung und Technologie teilnehmen. Sie können verschiedene Veranstaltungen auf Github Explore ausprobieren und versuchen, an diesen Veranstaltungen in Ihrer Nähe teilzunehmen. MindsDB wird im Laufe des Jahres 2019 Meetups organisieren. Wenn Sie mit allem, was mit MIndsDB zu tun haben, auf dem Laufenden bleiben möchten, können Sie sich hier in unsere Mailingliste eintragen

2. Werden Sie für die Open Source-Entwicklung bezahlt

Im Allgemeinen werden Sie nicht für das Entwickeln von Open Source bezahlt, da die meiste Arbeit freiwillig geleistet wird. Wenn Sie es sich jedoch nicht leisten können, unbezahlte Zeit für die Open Source-Entwicklung aufzuwenden, können Sie entweder mit Ihrem Arbeitgeber sprechen und die Idee für ein Projekt aufzeigen, das auch Ihren Arbeitgeber interessieren könnte, oder ein Projekt finden, das seinen Open Source-Entwickler bezahlt. Weitere Informationen finden Sie in Githubs Leitfaden, wie Sie für die Open Source-Entwicklung bezahlt werden. Viele Unternehmen (einschließlich MindsDB) stellen auch Top-Mitarbeiter für ihre Arbeit ein oder zahlen diese.

3. Stellen Sie Ihren Lebenslauf in Szene, werden Sie Mentor und bewerben Sie sich bei Open Source-Wettbewerben

Sie sollten alle Projekte, zu denen Sie beigetragen haben, in Ihrem Lebenslauf erwähnen oder einen Link zu Ihrem GitHub-Konto in Ihrem Lebenslauf oder in einem Anschreiben hinzufügen. Die meisten Arbeitgeber sind von solchen Auszeichnungen beeindruckt und bevorzugen solche Kandidaten für die Einstellung.

Sie können auch ein Mentor für Leute werden, die neu in der Open Source-Entwicklung sind. Es ist Zeit, der Gemeinde etwas zurückzugeben und denjenigen, die gerade erst anfangen, Anleitung zu geben. Es gibt verschiedene Programme, in denen Sie sich dafür entscheiden können, Mentor zu werden, z. Google Summer of Code, Google Rails Girls Summer of Code, Google Outreachy usw. oder einfach nur die Menschen dabei unterstützen, ihre Fragen in Mailinglisten oder StackOverflow zu beantworten.

Adam Carrigan ist Mitbegründer von MindsDB, einem benutzerfreundlichen Tool, mit dem Sie Ihren Projekten maschinelles Lernen hinzufügen und Datenherausforderungen lösen können. Folge mir auf Twitter

Sie können unser Projekt auch auf GitHub und Twitter verfolgen