Open Source Vorlesung am 03.04.2024 #
README #
Jedes Open Source Projekt sollte eine README Datei haben, hierbei kann die Seite makeareadme helfen.
EULA #
Word und andere proprietaere Software haben meistens eine EULA Lizenz. (Endbenutzer-Lizenzvertrag)
Cloud Anwendungen #
Software per Cloud von einem Server aus zu lizenzieren ist ein neuer Ansatz den Firmen noch nicht lange verfolgen.
RZ WebSpace #
Jeder Nutzer hat von der Hochschule einen kostenlosen Webspace fuer statische Webseiten zur Verfuegung. Statischer Content kann in /www/ kopiert werden und ist dann unter https://tha.de/~ abrufbar.
MySt Parser #
myst
ist eine markdown Erweiterung mit python.
Damit koennen Buecher ausfuerhbar gemacht werden, aehnlich wie Jupyter Books.
CC #
Creative Commons Lizenz:
- CC*: Kostenlose Verwendung
- NC: Nicht Kommerziell
Projekten ohne explizite Nutzungsrechte darf niemand veraendern. Deswegen sind Git Portale wie GitHub oder GitLab interessiert daran von Anfang an Projekte zu einer Lizenz zu bewegen, meistens schon beim Erstellen des Repos.
Beispiel: Ein Student der Hochschule hat ein Bild vom Theater Augsburg verwendet woraufhin das Theater geklagt hat. Dieses Bild hatte keine Lizenz und somit gab es keine Erlaubniss dieses Bild zu nutzen. Das Urheberrecht hat dies nicht gestattet. Hatte das Bild eine Open Source Lizenz gehabt, haette man es verwenden duerfen. Mit den Einschraenkungen den Urheber anzugeben und nicht das Bild nicht kommerziell zu verwenden.
Hugo #
Statischer Website Builder mit dem man html-Seiten und groessere Webseiten bauen kann.
Typst #
Ein Typesetting Programm das Latex eines Tages abloesen koennte.
TeX #
Von Donald Knuth geschrieben um selbst Buecher zu schreiben. Latex von Lesslie Lamport als Weiterentwicklung. Tex ist also schon sehr alt, vielleicht wird es Zeit fuer einen Nachfolger, der auch inkrementelle Builds kann.
Analysieren #
FOSS Programme analysieren (“Code Reading”)
- 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)?