Bei Fragen, Kommentaren, Unklarheiten etc. bitte eine E-mail an
mich oder in das Moodle Forum schreiben.
Aktueller Kurs: OSS24
Frühere Kurse: https://tha.de/homes/hhoegl/home/OSS.html
Die unten angegebenen Links auf Literaturstellen sind eine
Auswahl aus dem Materialordner oss/. Wer genaueres zu
einem Thema wissen möchte kann sich dort gerne umsehen.
Es gibt schon ein paar Fragensammlungen
Fragen zu diversen Themen der OSS
Fragen und Erlaeuterungen zu OSS Lizenzen
Fragen zum Buch von Vicky Brasseur, “Forge Your Future with Open
Source”
OSS Prüfungsvorbereitung
Code Reading
FOSS Programme analysieren
Einige Kriterien
- Was steht in der README.md?
- Projekt aktiv oder verwaist?
- Wer hat es sich ursprünglich ausgedacht?
- Wer ist der aktuelle Maintainer?
- Wo wird das Projekt gehostet? (z.B. Github, Gitlab, Savannah https://savannah.gnu.org)
- Gibt es eine Homepage?
- Für welche Betriebssysteme ist es geeignet?
- Unter welcher Lizenz steht das Programm?
- Ist es ein Kommandozeilen- oder Grafikprogramm?
- Wie lange existiert es?
- Wie viele haben in etwa daran gearbeitet?
- Welche Programmiersprache(n) wird/werden verwendet? (Tipp: https://github.com/XAMPPRocky/tokei)
- Welches Konfigurations- bzw. Build-System wird verwendet?
- Wird eine IDE zum Entwickeln verwendet?
- Gibt es eine Dokumentation, wenn ja, in welchem
Textverarbeitungssystem wurde sie geschrieben?
- Wie viele Anwender verwenden das Programm ungefähr? (schwer
herauszubekommen)
- Gibt es Abspaltungen (“forks”)?
- Wie kann man mitmachen bzw. Änderungen einreichen?
- Wie aktiv war es in letzter Zeit?
- Wie werden Branches in Git verwendet? (git Workflow bei der
Entwicklung)
- Wie kann man das Programm installieren? (selber kompilieren, binary,
snap, appimage, container, …)
- In welcher Sprache sind die Meldungen des Programms verfasst, z.B.
Englisch, Deutsch, Chinesisch? Gibt es eine Internationalisierung in
verschiedenen Sprachen (z.B. GNU gettext)?
- und so weiter…
Vorschlaege (falls man keine eigenen Ideen hat): https://hhoegl.informatik.hs-augsburg.de/oss/ss23/codereading.txt
tokei
verwenden, Count your code, quickly, https://github.com/XAMPPRocky/tokei
Build Tools
- make
- autoconf, automake
- scons
- Meson
- CMake
- GN
- ninja-build.org (backend for meson, cmake, gn)
- premake.github.io
- buildout.org
- WAF
- Ant (Apache)
Debian
Digitale Souveränität, Privatsphäre
Einführungen in OSS
Firmen im Augsburger Raum
- Igel
- Linogate
- Tuxedo
- Kontron
- Xentral
- BMK
- gerne erweitern …
Föderierte Dienste
Freie Programme
Gefahren, Probleme
Geschäfsmodelle
Geschichtliche Entwicklung
GNU
Inner Source
Kollaborativ arbeiten
- Crowdsourcing (irgend eine Arbeit an Freiwillige auslagern, z.B.
Handschriften lesen oder Texte übersetzen)
- Crowdfunding (kickstarter, startnext.com)
- “Coopetition” - cooperation and competition
Lizenzen, Urheberrecht (siehe eigenen Fragenkatalog https://hhoegl.informatik.hs-augsburg.de/oss/Fragen/Lizenz-Fragen.html)
- Klären was “Freeware” und “Shareware” ist
- No License
- Lizenzkürzel https://spdx.org/licenses
- Public Domain (PD): “no rights reserved”, unlicense.org, 0BSD, CC0,
Free Public License, thepublicdomain.org,
- Liberal: MIT, MIT-0, BSD, BSD-4-Clause, BSD-3-Clause (“revised”),
BSD-2-Clause, BSD-1-Clause, Apache 2.0
- Copyleft: GPL, AGPL, GFDL
- Beschränktes Copyleft: LGPL, MPL
- CC Baukasten https://creativecommons.org, BY, ND, NC, SA.
Die Theorie dahinter hat der US Jurist Lawrence Lessig gemacht, siehe
z.B. https://lessig.org/product/free-culture/.
- Lizenz zum Coden. Was Open-Source-Lizenzen voneinander unterscheidet
https://hhoegl.informatik.hs-augsburg.de/oss/ct.0120.068-069.qxp.pdf
- Tobias Haar, Was Softwareentwickler über Urheberrecht wissen müssen
https://hhoegl.informatik.hs-augsburg.de/oss/Haar/haar-urheberrecht.pdf
- Lizenzbeispiele
- unlicense, MIT: ripgrep
- apache: android, chef
- BSD, GPL: socketcan
- MIT: gitlab
- AGPL: Mastodon, Nextcloud, Threema, MongoDB (frueher)
- Freemium: Anaconda
- Open Source Initiative https://opensource.org
- Anteile der Lizenzen: https://opensourceindex.io (Open Source Contributor
Index - OSCI)
- tl;drlegal https://tldrlegal.com
- https://choosealicense.com
- https://opensource.guide/legal
- http://www.ifross.org/lizenz-center
- Freemium
- Cern-OHL
- License compliance
- DCO, Developer Certificate of Origin https://developercertificate.org (Brasseur, Kap. 3)
- CLA, Contributor License Agreement (Brasseur, Kap. 3)
- https://contributor-covenant.org (Brasseur, Kap. 3)
- https://www.harmonyagreements.org, CAA (Contributor
Assignment Agreement)
- Urheberrecht in der digitalen Welt https://irights.info
- Abkehr von echten Open-Source Lizenzen
- MongoDB
- Redis
- TimescaleDB
- Elasticsearch
- Audacity
Menschen
Motive für Open-Source
Zentrale menschliche Eigenschaften
- Ich kann es selbst (Selbstermächtigung)
- Kann ich das schaffen?
- Wir sind soziale Wesen und wollen dem anderen helfen
- Anerkennung, Ruhm und Ehre
- Streben nach Freiheit und Unabhängigkeit
Lock-in vermeiden
Hoher Gebrauchswert (Verfügbarkeit, Nützlichkeit)
Geldverdienen in erster Linie nachrangig, ist aber möglich durch neue
Geschäftsmodelle. Gegensatz: Geldeinnahmen im Mittelpunkt bei
kommerzieller Software.
Geld sparen (Keine Ausgaben für Lizenzgebühren etc.).
Kooperation ist eine natürliche menschliche
Verhaltensweise
Kooperation ist besser als Wettbewerb
Das “Microsoft Problem”
- Monopolist
- Lock-In
- Betrifft auch Behörden und öff. Einrichtungen
- Telemetrie, DSGVO, Datenschutz
- Wie komme ich weg?
“Take back control”
Open-Innovation
Open-Source Bewegung
Organisationen
README
Software Composition Analysis (SCA)
Support
- buymeacoffee
- ko-fi.com
- Noch andere?
Versionierung
Wikipedia