Podcast-Synchronisations-Server

  • Typ: Praxis der Softwareentwicklung
  • Zielgruppe: Bachelor
  • Semester: WS 22/23
  • Ort:

    nach Vereinbarung

  • Zeit:

    nach Vereinbarung

  • Dozent:

    Hans-Peter Lehmann, Daniel Seemaier

  • Hinweis:

    Erstes Treffen: 08.11.22, 15:00 Uhr

Beschreibung

Podcasts sind (technisch) XML-Dateien, die dezentral auf dem Server der jeweiligen Podcastern liegen. Sie können mit Apps (sog. "Podcatchern") gesammelt abgerufen werden. Beispiele für solche Apps sind etwa Apple Podcasts, Podcast Addict, Overcast, und AntennaPod. Dabei sitzt zwischen Podcast und Nutzer in der ursprünglichen Idee kein zentraler Dienst. (Heutzutage gibt es Dienste, die die Daten einfach weiterreichen, aber unterwegs noch Werbung einbauen.) Was aber, wenn man jetzt in dieser ursprünglichen Form von Podcasts auf mehreren Geräten hören möchte?

Dazu braucht man einen Synchronisations-Server, der Informationen wie Abos, Favoriten, und Abspielposition auf allen Geräten synchron hält. Es gibt eine Quasi-Standard API für solche Server, und auch existierende Implementierungen. Leider ist der bekannteste öffentliche Server durch feature-bloat ungeeignet für die gegebene Nutzerzahl und nicht jeder Nutzer kann sich selbst mit Hosting beschäftigen. Deshalb möchten wir in diesem PSE einen effizienten und schlanken Synchronisations-Server für Podcasts bauen.

Durch ein schlankes Design sollte es problemlos möglich sein, mit tausenden registrierten Nutzern umzugehen. Da die Daten in einer Datenbank gespeichert werden sollen, ist es sinnvoll, ein gewisses Interesse an Datenbanken mitzubringen. Vorwissen ist aber nicht nötig. Zum Testen ist es sinnvoll (aber keine Anforderung), ein Android-Gerät zur Verfügung zu haben (es gibt auch Desktop-Podcatcher, mit denen getestet werden kann). Zudem soll der Server ein Web-Frontend zur Account-Verwaltung besitzen. Technologisch würden wir Java, Spring, Hibernate, React und MySQL empfehlen.

Disclaimer:
Einer der Betreuer ist in seiner Freizeit Maintainer des Open-Source Podcatchers "AntennaPod" und wäre dadurch quasi der "Kunde" eures Projekts. Bei Erfolg könnten wir euren Server offiziell an etwa 200.000 aktive Nutzer ausrollen (natürlich nur, wenn ihr den Code veröffentlichen wollt). Fragen? Schreibt uns gerne eine Mail: {hans-peter.lehmann, daniel.seemaier}@kit.edu