Wie im letzten Post schon angedeutet suche ich zur Zeit nach einem guten Tool zur Verwaltung meiner Podcast-Downloads und –Feeds. Alle Programme die ich bis jetzt getestet habe, sind mir einfach zu überfrachtet oder zu Kompliziert. Aus diesem Grund habe ich mich dazu entschlossen ein eigenes kleines Programm dafür zu entwickeln. Schließlich bin ich nicht umsonst Softwareentwickler geworden .
Im allgemeinen wird die Gruppe von solchen Programmen als Podcatcher bezeichnet. Solch einem Programm wird Üblicherweise der RSS Feed eines Podcasts übergeben und es zeigt dann die verfügbaren Downloads an und lädt sie bei Bedarf herunter. Genau aus diesem Verhalten habe ich den Namen für mein kleines Programm abgeleitet. Ich wollte es zwar erst “Podzblitz” nennen, dass war mir dann aber doch zu abgedroschen und nicht beschreibend genug. Darum soll es jetzt “Podzieh” heißen, sowie PODcast und aus dem Netz ZIEHen.
So und um auch gleich einen Einstieg zu haben, beginnen wir doch mal mit der Anforderungsanalyse. Was soll das Programm denn können? Für mich am wichtigsten sind eigentlich folgende Punkte:
- Verwaltung von Podcast-Feeds, das Umfasst folgende Kriterien
- Eingabe von RSS URLs
- Abrufen des RSS Feeds
- Überprüfen auf neue Einträge
- Herunterladen von Podcast-Folgen
- Eine oder mehrere Folgen auswählbar zum herunterladen
- Download im Hintergrund
- Fortschrittsanzeige
- Speicherung in einer eigenen Ordnerstruktur, zum Beispiel jeder Feed in einem eigenen Ordner
- ggf. fortsetzen von Downloads
- Markieren der Folgen
- als gehört Kennzeichnen
- Bewerten
- ggf. automatisches löschen, wenn Platz gespart werden soll
- Abspielen
- ggf. auch schon abspielen, wenn sie noch nicht fertig heruntergeladen wurde!
- Konvertieren ins AAC Format
- zur Platzsparenden Archivierung oder um den Speicherplatz des Smartphone zu schonen
- natürlich auch im Hintergrund
- frei Konfigurierbar
- vorgegebene (empfohlene) Profile
- Übertagen auf ein (Android-)Smartphone per WLAN
So das sind jetzt erst mal alle Punkte die mir Einfallen. Sicher gäbe es auch noch ein paar Features mehr die man in so ein Programm stecken könnte, aber man sollte es auch nicht übertreiben. Denn jetzt kommen ja noch die Nicht-Funktionalen Anforderungen, die die ganze Sache erst richtig interessant machen.
- Natürlich soll das Programm eine optisch ansprechende Oberfläche haben
- es soll möglichst Idiotensicher sein; der Nutzer soll so viel wie möglich mit dem Programm machen können und so wenig wie nötig dafür tun müssen
- Beachtung des CleanCodeDeveloper Wertesystems bei der Entwicklung
- und das Ganze soll Open-Source sein
So das ist jetzt erst mal ein ganz schöner Brocken Arbeit der da vor mir liegt. Ich hoffe ich kann alle Punkte so umsetzen wie ich mir das vorstelle. Ich werde versuchen bei der Entwicklung immer hier auf dem Blog zu schreiben und auf jeden Funktionspunkt näher einzugehen. Wenn Ihr noch weitere Ideen habt, was unbedingt in so ein Programm gehört, könnt Ihr mir gern einen Kommentar da lassen, bzw. könnt Ihr auch einfach schreiben was Ihr von der Idee haltet.