free-programming-books

:books: Freely available programming books

View the Project on GitHub EbookFoundation/free-programming-books

Diese Anleitung in anderen Sprachen

Lizenzvereinbarung für Mitwirkende

Durch Deine Mitwirkung akzeptierst Du die Lizenz dieses Repositorys.

Verhaltenskodex für Mitwirkende

Durch Deine Mitwirkung verpflichtest Du Dich, dem Verhaltenskodex dieses Repositorys zu folgen. (translations)

Kurzfassung

  1. „Ein Link, um ein Buch auf einfache Weise herunterzuladen“ ist nicht immer ein Link zu einem kostenlosen Buch. Bitte füge nur kostenlose Inhalte hinzu. Vergewissere Dich, dass sie kostenlos sind. Wir akzeptieren keine Links zu Seiten, die voraussetzen, dass man sich mit einer funktionierenden E-Mail-Adresse registriert, um ein Buch herunterzuladen, aber wir heißen Seiten willkommen, die um (optionale) Eingaben von E-Mail-Adressen bitten.

  2. Du musst Dich nicht mit Git auskennen: Wenn Du etwas Interessantes gefunden hast, das noch nicht in einer der Listen enthalten ist, öffne bitte ein Issue mit Deinen Linkvorschlägen.
    • Wenn Du Dich mit Git auskennst, erstelle einen Fork des Repositorys und sende einen Pull Request (PR).
  3. Wir führen 6 Arten von Listen. Achte darauf, die richtige zu wählen:

    • Bücher: PDF, HTML, ePub, eine auf gitbook.io basierende Seite, ein Git Repo etc.
    • Kurse: Ein Kurs beschreibt Lernmaterialien, die nicht in Buchform existieren. Dies ist ein Kurs.
    • Interaktive Tutorials: Eine interaktive Webseite, die den Benutzer Sourcecode oder Kommandos eingeben lässt und das Resultat auswertet (mit “auswerten” meinen wir nicht “bewerten”). z. B.: Try Haskell, Try GitHub.
    • Playgrounds : are online and interactive websites, games or desktop software for learning programming. Write, compile (or run), and share code snippets. Playgrounds often allow you to fork and get your hands dirty by playing with code.
    • Podcasts und Screencasts: Podcasts und Screencasts.
    • Problem Sets & Competitive Programming: Eine Webseite oder Software, die Dir die Möglichkeit gibt, Deine Programmierfähigkeiten durch die Lösung einfacher oder komplexer Problemstellungen auf die Probe zu stellen, mit oder ohne Code Review und mit oder ohne den Vergleich der Leistungen mit anderen Besuchern der Seite.
  4. Stell sicher, dass Du den Richtlinien folgst und die Markdown Formatierung der Dateien beachtest.

  5. GitHub Actions werden Tests ausführen, um sicherzustellen, dass die Listen korrekt alphabetisiert sind und den Formatierungsregeln Folge geleistet wurde. Stell sicher, dass Deine Änderungen diese Tests bestehen.

Richtlinien

Formatierung

Folgende Formatierungsregeln sollten eingehalten werden:

Beispiel:

[...]
* [Ein tolles Buch](http://example.com/example.html)
                                (Leerzeile)
                                (Leerzeile)
### Beispiel
                                (Leerzeile)
* [Noch ein tolles Buch](http://example.com/book.html)
* [Ein anderes Buch](http://example.com/other.html)

Alphabetische Sortierung

Wenn Dir ein falsch sortierter Link auffällt, prüfe die Fehlermeldung des Linters, um herauszufinden, welche Zeilen vertauscht werden sollten.

Hinweise

Während die Grundlagen relativ einfach sind, existiert eine große Vielfalt von Ressourcen in unseren Listen. Es folgen einige Hinweise, wie wir mit dieser Vielfalt umgehen.

Metadaten

Unsere Listen enthalten einen minimalen Satz an Metadaten: Titel, URLs, Autoren, Plattformen und Zugriffshinweise.

Titel
URLs
Urheber
Plattformen und Zugriffshinweise

Genre

Die wichtigste Regel zur korrekten Zuordnung von Inhalten in Listen ist zu schauen, wie die Ressource sich selbst beschreibt. Wenn sie sich als Buch bezeichnet, dann ist sie vielleicht ein Buch.

Genres, die wir nicht aufnehmen

Da das Internet unermesslich ist, nehmen wir folgende Inhalte nicht in unsere Listen auf:

Unsere Listen zu Programmierwettbewerben setzen diese Verbote nicht so strikt um. Art und Umfang des Repositorys wird von der Community bestimmt; wenn Du eine Änderung oder Ausweitung der Ausrichtung vorschlagen möchtest, eröffne bitte ein Issue, um den Vorschlag zu unterbreiten.

Buch vs. anderes Zeug

Wir sind nicht kleinlich, was die Definition, was ein Buch ist und was nicht. Hier sind einige Eigenschaften, die darauf hinweisen, dass es sich bei einer bestimmten Ressource um ein Buch handelt:

Vielen Büchern in unseren Listen fehlen diese Eigenschaften; es kann vom Kontext abhängen.

Buch vs. Kurs

Das ist manchmal gar nicht so leicht zu unterscheiden!

Kurse kommen oftmals mit begleitenden Lehrbüchern, die wir in unseren Bücherlisten führen würden. Kurse bieten Vorträge, Übungen, Tests, Anmerkungen oder andere Lernhilfen. Ein einzelner Vortrag oder Video allein ist kein Kurs. Eine Powerpoint-Präsentation ist kein Kurs.

Interaktive Tutorials vs. anderes Zeug

Wenn etwas ausgedruckt werden kann, ohne dass es seinen Nutzen verliert, ist es kein interaktives Tutorial.

Automatisierung