1 Open-Source Software 2018

Mittwoch, 14:00-15:30, 15:40-17:10, Raum W3.05


Mailingliste OSS18: http://hhoegl.informatik.hs-augsburg.de:8000/postorius/lists/

Gliederung: http://hhoegl.informatik.hs-augsburg.de/hhwiki/OssGliederung

Fragensammlung: http://hhoegl.informatik.hs-augsburg.de/hhwiki/OssFragen

Alte Klausuren: http://hhoegl.informatik.hs-augsburg.de/oss/Klausuren/

1.1 Termine

1.    21.3.

2.    28.3.

3.    4.4.

4.    11.4. (muss verschoben werden)

5.    18.4.

6.    25.4.

7.    2.5.

8.    9.5.

9.   16.5.

10.  23.5.

11.  30.5.

12.  6.6. (muss verschoben werden)

13.  13.6. (Besuch im RZ, Info ueber Open-Source Software)

14.  20.6.

(am 27.6. ist der Projekttag - keine Vorlesung)

1.2 Grobe Gliederung

  1. Motivation: Warum gibt man den Quelltext freiwillig her?

  2. Vor- und Nachteile von offener und geschlossener Software

  3. Definition der Begriffe „freie Software“ und „offene Software“

  4. Geschichtliche Entwicklung (Voraussetzungen zur Entstehung von OSS)

  5. GNU Software und die Free Software Foundation (FSF)

  6. Die Open-Source Bewegung

  7. Wo wird freie und offene Software verwendet?

  8. Typische Anwendungsbereiche

  9. Wie macht man freie und offene Software? Regeln, Werkzeuge, kollaboratives Arbeiten.

  10. Aufbauen von Gemeinschaften („community building“)

  11. Beispiele von erfolgreichen OSS-Projekten

  12. Ein wenig Urheberrecht

  13. Die wichtigsten Lizenzen

  14. Freie Programme, die man kennen muss (http://elk.informatik.hs-augsburg.de/hhwiki/OssProgramme)

  15. Anwendungsbereiche der offenen Denkweise ausserhalb der Softwareentwicklung

  16. Open-Innovation

  17. Geschäftsmodelle mit freier Software

1.3 Weiterführende Texte, Videos, Websites, etc.

(Material: http://hhoegl.informatik.hs-augsburg.de/oss)

Artikel aus der Zeitung

  1. Artikel in der SZ zum Thema Linux und Open-Source-Software statt Microsoft Windows (11.3.2018), behandelt Open-Xchange, gegruendet von Rafael Laguna.

  2. Jonas Jansen, FAZ 20.3.2017, Mit offener Software gegen den globalen Überwachungsstaat (lokale Kopie), dreht sich auch um Open-Xchange.

  3. Helmut Martin-Jung, Warum Open-Source-Software wichtig ist, sz 25.4.2017

  4. Helmut Martin-Jung, SZ 7.4.2016, Open Source erobert die Welt.

  5. Helmut Martin-Jung, SZ 6.8.2014, Das Netzwerk ist fuer alle da

Definition freie und offene Software

  1. https://de.wikipedia.org/wiki/Freie_Software

  2. Markus Nüttgens, Open-Source-Software, Enzyklopaedie der Wirtschafsinformatik, 2014.

  3. Volker Grassmuck, Freie Software. Zwischen Privat- und Gemeineigentum (siehe OssMaterial)

Probleme mit kommerzieller (geschlossener) Software

  1. ARD Mediathek, Das Microsoft-Dilemma, 2018 (verfügbar bis 19.05.2018, Link zur Mediathek)

Freie Software

  1. Sam Williams, Free as in Freedom. Richard Stallman’s Crusade for Free Software. 2002, http://www.oreilly.com/openbook/freedom

Linux

  1. Linus Torvalds / David Diamond, Just for Fun: The Story of an Accidental Revolutionary, 2001.

  2. Glyn Moody, Rebel Code: Linux and the Open Source Revolution, 2002.

Offene Innovation

  1. C. Emde, Wie vermehren wir unser Wissen - früher und heute? (siehe OssMaterial)

Lizenzen

  1. https://choosealicense.com (github)

  2. https://de.creativecommons.org/index.php/was-ist-cc/

  3. http://www.ifross.org/lizenz-center

  4. Falk Zscheile , Wissen sichern mit freien und offenen Lizenzen, CLT2017, https://chemnitzer.linux-tage.de/2017/de/programm/beitrag/260

Urheberrecht in der digitalen Welt

  1. http://irights.info

Werkzeuge

  1. https://guides.github.com

Wie man freie Software macht

  1. Karl Fogel, Producing Open-Source Software, https://producingoss.com

Gemeinschaften

  1. Jono Bacon, The Art of Community, http://www.artofcommunityonline.org

Verschiedenes

  1. https://opensource.com

  2. Open-Source Yearbook 2017 (siehe OssMaterial)

  3. https://opensource.guide (github)

  4. http://opensource.org (2018 ist der 20. Geburtstag!)

  5. The Architecture of Open Source Applications

    http://aosabook.org/en/index.html

  6. http://oss-watch.ac.uk

    „OSS Watch provides unbiased advice and guidance on the use, development, and licensing of free software, open source software, and open source hardware.“

1.4 Verschiedenes

1.5 Hausaufgaben

Bitte legen Sie die schriftliche Ausarbeitung der Hausaufgaben in Ihr RZ WWW Verzeichnis in den Ordner oss18, so dass man sie ueber den Link:

http://www.hs-augsburg.de/~<user>

finden kann. Schreiben Sie den Text in einer Markup-Sprache (ReST, Markdown, …) und konvertieren Sie ihn nach HTML mit rst2html, pandoc, etc.

Es gibt eine Fragensammlung, auf die ich mich oefter bei den Hausaufgaben beziehen werde.

1. Hausaufgabe vom 21.3.

  1. Schauen Sie sich nochmal ihre Vorlesungsnotizen an.

  2. Was ist freie Software, was ist offene (engl. „open-source“) Software?

  3. Achten Sie darauf welche Software Sie in einer Woche bei der taeglichen Arbeit verwenden. Welche Lizenz hat diese Software? Auf welchen Betriebssystemen laeuft sie? Ist es geschlossene oder offene Software?

  4. Schauen Sie sich den Film „Das Microsoft-Dilemma“ an und schreiben Sie sich die wesentlichen Aussagen auf. Kann jemand den Film „haltbar“ machen?

  5. Lesen Sie die SZ Artikel von Helmut Martin-Jung und notieren Sie in Stichpunkten den Inhalt.

  6. Lesen Sie im Buch von Grassmuck den Abschnitt „Geschichte der freien Software“, Buch S. 177-232. Siehe http://hhoegl.informatik.hs-augsburg.de/oss/grassmuck.html.

    Fragen dazu sind hier.

  7. Machen Sie einen Zeitstrahl von 1960 bis jetzt und tragen Sie die Geschehnisse ein, ueber die wir in der ersten Vorlesung gesprochen haben.

  8. Schaue Sie sich die Website https://irights.info an. Worum geht es dort?

  9. Welche Lizenzen haben wir angesprochen? Was bedeutet das „gespiegelte“ C? Welchen Lizenzbaukasten kennen Sie?

  10. Suchen Sie auf Youtube nach Videos von Richard M. Stallman ueber Free Software. Ein Beispiel waere das Video1 (ca. 2 Min.) ueber die „four freedoms“. Ein anderes Video2 ueber „Free Software, Free Society“ (ca. 13 Min.).

2. Hausaufgabe vom 28.3.

  1. Schauen Sie sich nochmal den geschichtlichen Teil der Gliederung an (das was wir in der 2. Vorlesung besprochen haben). Recherchieren Sie selbst zu dem Thema, was Ihnen unklar ist bzw. was Sie verstaerkt interessiert.

  2. Wenn Sie die folgenden Filme anschauen, bekommen Sie viel ueber die zentralen Personen bei Linux und die damalige Aufbruchstimmung mit. Beide liegen meines Wissens nach auf Youtube. Wie immer notieren Sie sich den groben Handlungsablauf in Ihrem Hausaufgabentext.

  3. Wer die Linux Historie noch genauer verstehen will, der liest das unterhaltsame Buch Just for Fun von Linus Torvalds und David Diamond von 2001.

  4. Die Geschichte von Unix wird unter anderem auch in dem Buch The Art of UNIX Programming von Eric Raymond geschildert. Raymond ist auch der Initiator der „Open-Source“ Bewegung in den 90er Jahren.

3. Hausaufgabe vom 4.4.

  1. Die „Debian Free Software Guidelines“ (DFSG) studieren. Diese sind enthalten im „Social Contract“.

    https://www.debian.org/social_contract.

  2. Die „Open-Source Definition“ mit den DFSG vergleichen.

    https://opensource.org/osd

  3. Den Aufsatz „The Cathedral and the Bazaar“ von Eric Raymond lesen. Die deutsche Fassung ist hier:

    http://www.selflinux.org/selflinux/html/die_kathedrale_und_der_basar.html

  4. Die beiden Artikel zu „20 Jahre OSI“ auf http://hhoegl.informatik.hs-augsburg.de/oss/ lesen.

  5. Ein GNU/Linux auf dem Notebook entweder virtuell oder real installieren. Debian waere eine gute Wahl.

  6. Emacs kennenlernen (auf dem installierten Linux!)

  7. „GNU Hello“ herunterladen, kompilieren mit „GNU Dreisprung“, ausfuehren und studieren (auch auf dem Linux). Lesen Sie in den „GNU Coding Standards“ nach, um den Aufbau der Software zu verstehen (https://www.gnu.org/prep/standards).

    https://www.gnu.org/software/hello/

4. Hausaufgabe vom 7.5.

  1. Sie sollen ein kleines Beispielprogramm machen, das typische GNU Bibliotheken demonstriert:

    http://hhoegl.informatik.hs-augsburg.de/hhwiki/OssFragen#gnu-getopt-readline-libdemo

    Den Quelltext verwalten Sie auf gitlab.

  2. Danach haben wir uns mit Git beschaeftigt.

    Literatur zu Git:

  3. Lesen

5. Hausaufgabe vom 20.5.

  1. Es gibt ein paar neue Zeitungsartikel unter Texte.

  2. Unter OssMaterial finden Sie folgende Texte, die Sie in Stichpunkten in Ihren Bericht uebernehmen sollen:

    • Carsten Emde, Wie vermehren wir unser Wissen - früher und heute?

    • Hartmut Goebel und andere, Den Start in einen freien Beruf organisieren

    • Jonas Jansen, Mit offener Software gegen den globalen Überwachungsstaat

    • Elektor 1/2018: Open Source Projects have the power to change the world

    • Elektor, Open-Source - frei, offen, ungebunden?

    • Elektor, Ethernut und die Kipp Familie, oder wie man mit Open-Source Geld verdienen kann

  3. Finden Sie weitere Unternehmen, die Ihr Geschaeft mit Open-Source Software machen. In der Vorlesung haben wir denx.de, egnite.de, Linutronix, Pengutronix genannt. Spaeter ist mir noch http://python-academy.com eingefallen.

Naechste Hausaufgabe

  1. Aufsatz lesen: Thomas Wieland, Open-Source im Unternehmen, OssMaterial

  2. Code-Reading - Vorschlaege fuer Programme sind hier:

    http://hhoegl.informatik.hs-augsburg.de/hhwiki/OssGliederung#code-reading

    Denken Sie bei der Analyse der Programme mindestens an folgende Punkte:

    • Wo wird das Projekt gehostet?

    • Fuer welche Betriebssysteme ist es geeignet?

    • Unter welcher Lizenz steht das Programm?

    • Ist es ein Kommandozeilen- oder Grafikprogramm?

    • Wie lange existiert es?

    • Wer hat daran gearbeitet?

    • Welche Programmiersprache(n) wird/werden verwendet?

    • 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 ungefaehr? (schwer herauszubekommen)

    • Gibt es Abspaltungen („forks“)?