Anforderungen und Hinweise zur Umsetzung

This commit is contained in:
2024-02-01 17:10:07 +01:00
parent 1b4f0253e0
commit 4759a44d55
3 changed files with 95 additions and 0 deletions

55
Anforderungen.md Normal file
View File

@@ -0,0 +1,55 @@
# Portfolio
## Recherche: Arbeit am Wiki »Informatikberufe und -ausbildung / OpenSource-Projekte«
Schreibe _mindestens einen_ Eintrag in das Kurswiki, und ergänze bei Bedarf einen bestehenden Eintrag. Notiere in deinem Portfolio, bei welchen Wiki-Einträgen du beigetragen hast.
## Starte ein eigenes OpenSource-Projekt
Setze eine eigene Idee um, orientiere dich an den [Vorschlägen](Vorschlaegen_fuer_Projekte.md), oder tue dich mit anderen zusammen, um Euer bisheriges Projekt als OpenSource-Projekt fortzuführen.
Du kannst deinem Projekt eine eigene Form geben, oder dich an [diesen Vorschlägen](./How_to_set_up_an_Open_Source_Project.md) orientieren.
## Helfe bei einem fremden Projekt
Leiste bei mindestens einem anderen Projekt einen Beitrag.
## Leiste bei einem größerem Projekt einen Beitrag (optional)
(Der Beitrag zu einem Projekt außerhalb des P-Seminars kann den geforderten Projektbeitrag zu einem fremden Projekt ersetzen.)
# Wiki
## Welche Berufe und beruflichen Werdegänge gibt es?
Stelle einen Beruf (Position/Tätigkeitsbereich) oder den beruflichen Werdegang einer Person vor. In den verlinkten Podcast-Folgen findest du ausreichend Informationen für eine Vorstellung.
Zum Beispiel:
- Game Designerin Linda Breitlauch [dlf-Podcast](https://www.deutschlandfunkkultur.de/linda-breitlauch-akademische-karriere-durchgespielt-dlf-kultur-0cef1b77-100.html)
- Staffel 3 des [Female-Techtalk-Podcasts](https://www.female-techtalk.com/) stellt verschiedene Informatikerinnen vor.
- Melanie Patrick als Quereinsteigerin wird im [Engineering Kiosk](https://engineeringkiosk.dev/podcast/episode/102-quereinstieg-in-die-software-entwicklung-mit-melanie-patrick/) vorgestellt.
- Freelancing wird in einer Episode des [Engineering Kiosk](https://engineeringkiosk.dev/podcast/episode/94-die-realit%C3%A4t-des-freelancings-zwischen-selbstbestimmung-und-unsicherheit-mit-index-out-of-bounds/) besprochen
Wenn Englisch keine Hürde ist, kannst du auch hier fündig werden:
- [CoRecursive](https://corecursive.com/)
- [Programming Throwdown](https://www.programmingthrowdown.com/)
## Studium und Ausbildung
Stelle einen Informatikbezogenen Studiengang oder eine Ausbildung vor.
## Welche Lizenzen kommen für OpenSource-Projekte in Frage?
- MIT
- GNU GPLv3
- Lässt sich auch ohne Lizenz OpenSource-Software entwickeln?
Interessante Resource: https://choosealicense.com/
## Stelle ein OpenSource-Projekt »aus freier Wildbahn« vor
- Beschreibe kurz das Projekt, und wo es eingesetzt wird.
- »Vertriebswege« (Wie lässt sich die Software nutzen oder installieren)
- Link zur Homepage
- Mitwirkungsmöglichkeiten

View File

@@ -0,0 +1,28 @@
# How to set up an Open Source Project
inspiriert von Karl Fogel »[Producing Open Source Software](https://producingoss.com/)«, das auch [in deutscher Übersetzung](https://producingoss.com/de/index.html) vorliegt.
## Bevor es losgeht
Sieh dich um: wurde das Problem bereits von jemand anderem gelöst?
## Die private Vision in eine öffentliche verwandeln
1. Einen guten Namen auswählen
2. Eine kurze und aussagekräftige Projektbeschreibung schreiben (Mission Statement)
3. Klarmachen, dass das Projekt unter einer Open Source-Lizenz entwickelt wird. (z.B. GPL oder MIT)
4. Liste auf, welche Features (auch geplante) die Software enthält, und welche Voraussetzungen benötigt werden (Features and Requirements List)
5. Den Status der Entwicklung kommunizieren (z.B. in einer Projekt-Timeline oder mit einem Aktivitätstracker)
6. Downloadmöglichkeit mit wenig Overhead und eindeutiger Versionsnummer schaffen
7. Ein zugängliches Versionsverwaltungssystem und ein Bug-Tracker
8. Kommunikationskanäle eröffnen
9. Richtlinien für Entwickler_innen (Hinweis auf Kommunikationskanäle, Bug-Reporting, Einreichen von Patches, Art der Entwicklung)
10. Dokumentation (Basics: einrichten, Arbeitsweise, erste Schritte, Tasks erledigen; ggf. noch zu dokumentierende Teile kennzeichnen; FAQ einrichten)
11. Die Dokumentation verfügbar machen: online (User Documentation), sowie im Programmcode (Developer Documentation)
12. Ggf.: Demos, Screenshots, Videos, Beispiele
13. GitHub (o.ä.) hosted den Code, ggf. eine Website für User, die keine Entwickler_innen sind
14. Eine Lizenz wählen (z.B. GPL oder MIT)
15. Pflege eine gute Projektkultur
16. Vermeide private, projektentscheidende Diskussionen (»If there's no reason for it to be private, it should be public.«)
17. Unhöflichkeit von Beginn an abwürgen (Eigene Richtlinien ernstnehmen)
18. Nutze Code-Reviews, um Qualität zu sichern und Entwickler_innen zu beteiligen und Feedback zu ermöglichen

View File

@@ -0,0 +1,12 @@
# Vorschläge für Projekte
- Eine Website erstellen (HTML und CSS)
- Eine Website mit einem Static-Site-Generator erstellen lassen (z.B. Hugo) (Markdown)
- Einen interaktiven Einführungskurs zu git schreiben (in Markdown, mit [tigyog.app](https://tigyog.app))
- Eine Datenbank zu einem beliebigen Thema erstellen (SQL, ggf. SQLite)
- Programmiervorlagen portieren: von einem BlueJ-Java Programm zu einem Online-IDE-Programm
- eine Kommandozeilenanwendung schreiben:
- ein Textadventure
- ein Programm, das römische Zahlen entgegennimmt und arabische ausgibt (oder umgekehrt)
- beliebige andere Ideen
-