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¶
Motivation: Warum gibt man den Quelltext freiwillig her?
Vor- und Nachteile von offener und geschlossener Software
Definition der Begriffe „freie Software“ und „offene Software“
Geschichtliche Entwicklung (Voraussetzungen zur Entstehung von OSS)
GNU Software und die Free Software Foundation (FSF)
Die Open-Source Bewegung
Wo wird freie und offene Software verwendet?
Typische Anwendungsbereiche
Wie macht man freie und offene Software? Regeln, Werkzeuge, kollaboratives Arbeiten.
Aufbauen von Gemeinschaften („community building“)
Beispiele von erfolgreichen OSS-Projekten
Ein wenig Urheberrecht
Die wichtigsten Lizenzen
Freie Programme, die man kennen muss (http://elk.informatik.hs-augsburg.de/hhwiki/OssProgramme)
Anwendungsbereiche der offenen Denkweise ausserhalb der Softwareentwicklung
Open-Innovation
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
Artikel in der SZ zum Thema Linux und Open-Source-Software statt Microsoft Windows (11.3.2018), behandelt Open-Xchange, gegruendet von Rafael Laguna.
Jonas Jansen, FAZ 20.3.2017, Mit offener Software gegen den globalen Überwachungsstaat (lokale Kopie), dreht sich auch um Open-Xchange.
Helmut Martin-Jung, Warum Open-Source-Software wichtig ist, sz 25.4.2017
Helmut Martin-Jung, SZ 7.4.2016, Open Source erobert die Welt.
Helmut Martin-Jung, SZ 6.8.2014, Das Netzwerk ist fuer alle da
Definition freie und offene Software
Markus Nüttgens, Open-Source-Software, Enzyklopaedie der Wirtschafsinformatik, 2014.
Volker Grassmuck, Freie Software. Zwischen Privat- und Gemeineigentum (siehe OssMaterial)
Probleme mit kommerzieller (geschlossener) Software
ARD Mediathek, Das Microsoft-Dilemma, 2018 (verfügbar bis 19.05.2018, Link zur Mediathek)
Freie Software
Sam Williams, Free as in Freedom. Richard Stallman’s Crusade for Free Software. 2002, http://www.oreilly.com/openbook/freedom
Linux
Linus Torvalds / David Diamond, Just for Fun: The Story of an Accidental Revolutionary, 2001.
Glyn Moody, Rebel Code: Linux and the Open Source Revolution, 2002.
Offene Innovation
C. Emde, Wie vermehren wir unser Wissen - früher und heute? (siehe OssMaterial)
Lizenzen
https://choosealicense.com (github)
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
Werkzeuge
Wie man freie Software macht
Karl Fogel, Producing Open-Source Software, https://producingoss.com
Gemeinschaften
Jono Bacon, The Art of Community, http://www.artofcommunityonline.org
Verschiedenes
Open-Source Yearbook 2017 (siehe OssMaterial)
https://opensource.guide (github)
http://opensource.org (2018 ist der 20. Geburtstag!)
The Architecture of Open Source Applications
-
„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¶
Kirk McKusick, The History of BSD (Youtube Video), 54 Minuten, 2009.
Andere Kurse und Tutorials zum Thema „Freie und Open-Source Software“
„Code Reading“ - Den Code von Open-Source Projekten studieren. Ein paar Anregungen sind hier:
http://hhoegl.informatik.hs-augsburg.de/hhwiki/OssGliederung#code-reading
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.
Schauen Sie sich nochmal ihre Vorlesungsnotizen an.
Was ist freie Software, was ist offene (engl. „open-source“) Software?
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?
Schauen Sie sich den Film „Das Microsoft-Dilemma“ an und schreiben Sie sich die wesentlichen Aussagen auf. Kann jemand den Film „haltbar“ machen?
Lesen Sie die SZ Artikel von Helmut Martin-Jung und notieren Sie in Stichpunkten den Inhalt.
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.
Machen Sie einen Zeitstrahl von 1960 bis jetzt und tragen Sie die Geschehnisse ein, ueber die wir in der ersten Vorlesung gesprochen haben.
Schaue Sie sich die Website https://irights.info an. Worum geht es dort?
Welche Lizenzen haben wir angesprochen? Was bedeutet das „gespiegelte“ C? Welchen Lizenzbaukasten kennen Sie?
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.
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.
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.
Revolution OS (2001)
Codename Linux (2001)
Wer die Linux Historie noch genauer verstehen will, der liest das unterhaltsame Buch Just for Fun von Linus Torvalds und David Diamond von 2001.
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.
Die „Debian Free Software Guidelines“ (DFSG) studieren. Diese sind enthalten im „Social Contract“.
Die „Open-Source Definition“ mit den DFSG vergleichen.
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
Die beiden Artikel zu „20 Jahre OSI“ auf http://hhoegl.informatik.hs-augsburg.de/oss/ lesen.
Ein GNU/Linux auf dem Notebook entweder virtuell oder real installieren. Debian waere eine gute Wahl.
Emacs kennenlernen (auf dem installierten Linux!)
„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).
4. Hausaufgabe vom 7.5.
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.
Danach haben wir uns mit Git beschaeftigt.
Bitte nachvollziehen, …
http://hhoegl.informatik.hs-augsburg.de/hhwiki/OssFragen#git-sitzung
… dann selber loesen:
http://hhoegl.informatik.hs-augsburg.de/hhwiki/OssFragen#git-lokal
Workflow durchspielen („fork me on gitlab“)
http://hhoegl.informatik.hs-augsburg.de/hhwiki/OssFragen#gitlab-beispiel-mit-workflow
Literatur zu Git:
Lesen
Artikel zu sozialen Netzwerken in Firmen
http://hhoegl.informatik.hs-augsburg.de/oss/lm-5-2018-soziale-netze
Artikel zum Meson Build-System
http://hhoegl.informatik.hs-augsburg.de/oss/lm-8-2014-mesonbuild
5. Hausaufgabe vom 20.5.
Es gibt ein paar neue Zeitungsartikel unter Texte.
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
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
Aufsatz lesen: Thomas Wieland, Open-Source im Unternehmen, OssMaterial
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“)?