Open-Source-Software

Fragen zum Fach Open-Source-Software

Fragen zum Fach Open-Source-Software

Siegfried Kienzle

Siegfried Kienzle

Set of flashcards Details

Flashcards 71
Language Deutsch
Category Computer Science
Level University
Created / Updated 28.06.2023 / 04.07.2023
Weblink
https://card2brain.ch/box/20230628_opensourcesoftware
Embed
<iframe src="https://card2brain.ch/box/20230628_opensourcesoftware/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>

Was bedeutet Freiheit im Zusammenhang mit Open-Source?

Im Kontext von Open Source bezieht sich "Freiheit" auf die Rechte der Benutzer und Entwickler. Dies umfasst das Recht, den Code auszuführen, zu studieren, zu ändern und zu verteilen. Es geht weniger um den Preis ("frei wie in Freibier") und mehr um die Freiheit ("frei wie in Freiheit").

Apache 2.0 Lizenz was bedeutet die Lizenz für Patente?

Die Apache 2.0-Lizenz enthält eine Klausel zur Patentlizenzierung, die besagt, dass jeder Beitragsteller jedem, der die Software erhält, eine implizite Patentlizenz gewährt. Diese Lizenz umfasst alle Patente, die der Beitragsteller besitzt und die durch den Code verletzt würden, den er zur Software beiträgt. Das bedeutet, dass, wenn Sie Software verwenden, die unter der Apache 2.0-Lizenz veröffentlicht wurde, Sie auch das Recht haben, alle Patente zu verwenden, die in der Software implementiert sind.

Warum sind die GPLS und Apache Lizenz kompatibel aber nicht umgekehrt?

Was die Kompatibilität zwischen der GPL- und der Apache-Lizenz angeht, ist es wichtig zu wissen, dass es verschiedene Versionen der GPL-Lizenz gibt. Die Apache 2.0-Lizenz ist mit der GPL Version 3 kompatibel, aber nicht mit der GPL Version 2. Das bedeutet, dass Code, der unter der Apache 2.0-Lizenz steht, in Projekte integriert werden kann, die unter der GPL v3 stehen, aber nicht in solche, die unter der GPL v2 stehen.

Grund dafür ist der Umgang mit Patenten die in GPLv3 und Apache 2.0 gleich sind. (PAtente werden autoamtisch nutzbar?)

Nennen sie alle BSD Lizenzvarianten

  • "ursprüngliche" BSD-Lizenz, auch als "4-Klausel-BSD-Lizenz" bekannt

    1. Uerheberrechtsklausel: Diese Klausel gibt dem Lizenznehmer das Recht, die Software zu kopieren, zu modifizieren und zu verbreiten, solange der Urheberrechtsvermerk und der Haftungsausschluss erhalten bleiben.

    2. Werbeklausel: Diese Klausel verlangt, dass der Name des Urheberrechtsinhabers in der Werbung oder der Vermarktung der Software verwendet wird. Projekte, die den lizenzierten Code verwenden, müssen den Namen des Urheberrechtsinhabers in ihrer Dokumentation, ihren Veröffentlichungen oder ihrer Werbung nennen.

    3. Haftungsklausel: Diese Klausel besagt, dass der Urheberrechtsinhaber nicht für Schäden oder Verluste haftet, die durch die Nutzung der Software entstehen.

    4. Klausel zur Weitergabe von Änderungen: Die 4-Klausel-BSD-Lizenz enthält eine zusätzliche Klausel, die verlangt, dass Änderungen an der Software deutlich gekennzeichnet und der Urheberrechtsvermerk beibehalten wird. Das bedeutet, dass wenn jemand den lizenzierten Code ändert und weitergibt, er diese Änderungen kenntlich machen und den ursprünglichen Urheberrechtsvermerk beibehalten muss.

  • "modifizierte" oder "3-Klausel-BSD-Lizenz", die auch als "neue" oder "revidierte" BSD-Lizenz bekannt:

    1. Urheberrechtsklausel

    2. Werbeklausel

    3. Haftungsklausel

  • "vereinfachte" oder "2-Klausel-BSD-Lizenz", auch als "FreeBSD-Lizenz" bekannt:

    1. Urheberrechtsklausel

    2. Haftungsklausel

Nennen sie einige GNU Lizenzen

GPL, LGPL, AGPL, GFDL, …

Was ist der Linux Kernel?

Herzstück des Linux Betriebssystems. Ist für Kommunikation zwischen Hardware und den laufenden Anwendungen verantwortlich

Was ist in Linux der Userspace?

Im Userspace laufen alle Benutzerprozesse und Anwendungen. Diese Prozesse interagieren mit dem Kernel durch system calls, die von der Kernel-API bereitgestellt werden. Im Gegensatz zum Kernel, der als privilegierter Code ausgeführt wird, laufen Userspace-Prozesse in einem nicht-privilegierten Modus und haben daher beschränkten Zugriff auf Systemressourcen und Hardware, um die Sicherheit und Stabilität des Systems zu gewährleisten.

Was passiert wenn ich keine Lizenzbestimmung mache

Es gilt automatisch "all rights reserved"

Was ist das cyclone dx Format

OWASP CycloneDX is a full-stack Bill of Materials (BOM) standard that provides advanced supply chain capabilities for cyber risk reduction. The specification supports:

DependencyTrack.org ?

Was sind die Unterschide zwischen: Freeware, shareware, public domain ?

  • Freeware ist Software, die kostenlos genutzt werden kann, ohne dass Sie dafür bezahlen müssen. Allerdings behält der Urheber das Copyright und die Kontrolle über die Software.
  • Shareware ist eine Art von Software, die zunächst kostenlos heruntergeladen und verwendet werden kann. Nach einer Testphase müssen Sie jedoch für die weitere Nutzung bezahlen.
  • Software im Public Domain ist Software, die niemandem gehört und von jedem ohne Einschränkungen genutzt, modifiziert und verteilt werden kann.

Was ist timescaled DB? Welche Versionen davon gibt es?

Community Version

Was ist das GNU Social Network?

Das GNU Social Network ist eine dezentrale soziale Netzwerkplattform. Es ermöglicht Benutzern, Nachrichten zu posten und mit anderen zu interagieren.

Was ist das activity pub Protokoll .rocks ?

Das ActivityPub-Protokoll ist ein offenes Protokoll für soziale Netzwerke. Es ermöglicht dezentrale Kommunikation und Interoperabilität zwischen verschiedenen Plattformen.

Was ist ein CLA ? (Viki Buch)

Das Contributor License Agreement (CLA) ist ein rechtliches Dokument, das bestätigt, dass der Beitragende das Recht hat, seine Beiträge zu teilen, und dass das Projekt, sobald der Beitrag akzeptiert wurde, eine Lizenz hat, diese Beiträge zu ändern, zu verteilen und zu verwalten. Manchmal überträgt das CLA auch das Urheberrecht für den Beitrag vom Beitragenden an das Projekt oder die organisierende Stelle des Projekts. Das Ziel des CLA ist es, potenzielle rechtliche Komplikationen bei der Verteilung der Arbeit zu minimieren.

Nennen Sie Die anlaufstelle wenn Sie OSS herstellen wollen

producingoss.com

Welche Rollenverteilung gibt es typischerweise in einem OSS Projekt

  1. Maintainer: Koordiniert und verwaltet das Projekt.
  2. Entwickler: Schreibt, testet und verbessert den Quellcode.
  3. Tester: Überprüft die Funktionalität und Qualität.
  4. Dokumentation: Erstellt und pflegt die Projektdokumentation.
  5. Designer: Gestaltet das visuelle Erscheinungsbild.
  6. Community Manager: Pflegt Beziehungen zur Benutzer- und Entwicklergemeinschaft.

Welche Probleme gibt es, wenn man in einem OSS-Projekt mitwirken möchte, im Zusammenhang mit Windows? (Kap 5 S.71)

  1. Installations- und andere Skripte sind nur für Shell/Bash geschrieben.
  2. Pfadtrennzeichen in Skripten oder der Software selbst gehen von Linux/BSD/macOS aus.
  3. Unterschiede in der Groß- und Kleinschreibung von Dateinamen (Linux: unterscheidet Groß- und Kleinschreibung; Windows: unterscheidet nicht zwischen Groß- und Kleinschreibung).
  4. Dies ist besonders ein Problem bei der Verwendung von Git.
  5. Windows hat standardmäßig eine kürzere maximale Pfadlänge als Linux.
  6. Windows wird selten oder schlecht als Build-Plattform unterstützt.
  7. Im Allgemeinen ist das Entwicklungswerkzeug für Windows viel anders als für Linux, die BSDs oder macOS.
  8. Allein die Tatsache, dass man ein Windows-Benutzer ist oder auf Windows erstellt, wird als Belastung für das Projekt gesehen.

Nennen sie 5 Benefits (für Firmen die OS fördern) aus dem Letzten Kapitel im Viki Buch

  1. Verbesserung der Softwarequalität
  2. Einfluss auf die Projektroadmap
  3. Schnellere Fehlerbehebung
  4. Förderung von Innovation
  5. Aufbau von Fachwissen

Was ist Owasp? (bugs, bugfixes)

OWASP steht für Open Web Application Security Project.

gemeinnützige Organisation, die sich der Verbesserung der Sicherheit von Webanwendungen widmet.

OWASP ist weltweit bekannt für ihre Top-10-Liste der Webanwendungssicherheitsrisiken, die regelmäßig aktualisiert wird.

Nennen Sie Beispiele für duale Lizensirung

MySQL, QT, ...

Was ist mit Lockin gemeint?

Beschreibt die Situation wenn die Software eines Anbieters gut miteinander Funktioneren dies jedoch nicht mit Software anderer Funktioniert. (z.B. MS Office mit MS Teams)

Wie schließst man EMACS?

  • Schließen: Ctrl + x Ctrl + c

Was sind SCA-Tools? Was ist ihre Aufgabe?

  • SCA steht für Software Composistion Analysis Tools
  • Sind Tools, die analysieren welche Komponeten in einem Projekt verwendet werden

  • Suche nach bekannten Schwachstellen in den Komponenten

  • Suche nach Lizenzen in den Komponenten (vor allem Open-Source Komponenten)

  • Erstellen von SBOMs (Software Bill of Materials)
     

Was bedeutet die Abkürzung BDFL?

BDFL bedeutet Benevolent Dictator for Life.

Diese Person hat das finale Wort und kann sein Veto einlegen. Er ist sozusagen die Führungsfigur

Welche grobe Rollenverteilung gibt es bei einem FOSS Projekt (Zwiebelmodell)?

  • core contributors: sind die Seniorentwickler und somit die Entwickler mit der meisten Erfahrung
  • non-core contributors: leisten regelmäßige Beiträge und sind in den meisten Entscheidungen involviert
  • new contributors: lernen noch wie man im Projekt arbeitet und operiert
  • users: sind die Benutzer, die die Software benutzen, Feedback geben, Bugs reporten, input von Featureideen geben

Was ist ein "Code of Conduct"? Suchen Sie mindestens ein Beispiel im Netz?

Bei Code of Conduct handelt es sich um einen Verhaltenskodex. Es dient dazu ein respektvolles, sicheres und inklusives Umfeld zu fördern und das Verhalten aller Beteiligten zu lenken.

Was ist ein Styleguide?

  • Ein Styleguide ist eine Sammlung von Richtlinien, die den konsistenten Einsatz von Deginelement, Schreibstil, Grammatik, visuellen Elementen und anderen Aspekten einer Marke oder eines Produkts festlegen.
  • Referenzdokument für sämtliche Styles

Was ist ein "Issue Tracker"? Welche konkreten Issue-Tracker sind Ihnen schon begegnet?

In in einem Issue-Tracker werden Bugs, Feature-Ideen, Tasks,

  • Github Issue Tracker
  • Jira
  • Gitlab Issue Tracker
  • Bugzilla

Welche Möglichkeiten zur Kommunikation gibt es? Ordnen Sie diese in verschiedene Kategorien ein.

  • Mail
  • Ticketsystem

Was ist ein "Developer Certificate of Origin"? Suche Sie im Netz nach einem.

Beim Developer Certificate of Origin handelt es sich um eine rechtliche Erklärung, die von Entwicklern genutzt wird um ihre Bereitschaft zu Lizenzierung ihres Codes an ein Open-Source-Projekt auzudrücken.

Welche Vorteile bringt die Unterstützung von FOSS Projekten für Firmen?

  • Marketing: Ist kostenlose Werbung für die Firma durch kommunikationen über das Produkt durch andere
  • Mitarbeitersuche: Kann helfen neue Mitarbeiter zu finden da die Mitglieder des Projekts bereits mit der Arbeitsweise der Firma vertraut sind und die Firma die Persone bereits kennt
  • Kundensupport: Schnelle Antwort der Community bei Fragen/Problemen. Kann Fehler so beheben das es für Firma vorteilhaft ist.
  • Entwicklung: Durch zusammenarbeit bei Entwicklung werden neue Funktionen und Sicherheitsupdates schneller fertig
  • Einfluss auf Projekt: Durch mitarbeit an Projekt nimmt die Firma auch einfluss auf Projekt