raspiBackup v2 in Python?

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Gerade bin ich immer mal wieder dabei wenn ich Zeit habe die naechste Beta von raspiBackup zu regressiontesten. Ich denke Anfang des naechsten Jahres bin ich dann durch und werde sie publishen.

    Mittlerweile ist raspiBackup sehr umfangreich geworden und ich denke es ist an der Zeit einen Rewrite vorzunehmen und die Erfahrung und das gesammelten Wissen wie man eine laufende Raspi sichern kann sowie die BackupRequirements der Community weiterhin erfuellen kann.

    Urspruenglich war bash eine geeignete Sprache um privat Backups zu ziehen. Ich habe mich dann irgendwann entschlossen aus dem privat ein public zu machen und das hat ziemlich Strom gekostet: Ich denke > 70% des Codes sind jetzt Eingabeueberpruefungen und entsprechende Fehlermeldungen. Es ist einfach ein Unterschied ob man ein Script fuer sich geschrieben hat und weiss was da passiert oder es von der Community benutzt wird die berechtigterweise weniger an den Internals interessiert ist.

    Ich habe ja mal vor laengerer Zeit angefangen eine gewisse Infrastruktur in go zu implementieren. Go ist leider nicht sehr auf der Raspi verbreitet :( Python ist sicherlich die bessere Wahl damit auch die Community beitragen kann. Ich muss mich dann erst wieder mit Python aufwaermen - ist lange her dass ich Python Code geschrieben habe :daumendreh2:

    Entweder schreibe ich raspiBackup v2.0 in go - vermutlich alleine - was nicht bedeutet dass ich das nicht will - dann bin ich mein eigener Herr :) oder in Python und es finden sich Leute die Lust und Spass haben mitzuhelfen ein raspiBackup v2.0 in Python zu schreiben.

    Kurzum: Gibt es Interessenten bei einem (noch nicht geplanten) raspiBackup v2.0 in Python mitzuhelfen?

  • Hallo,

    wenn du Go gut kannst und die Sprache beherrschst: schreib' es in Go. Nur weil Python auf dem Pi verbreiterter ist heißt das ja noch lange nicht, dass man damit programmieren muss.

    Wichtig bei software ist doch die Funtkionalität, also dass die Software das macht, was sie soll. Gerade bei einem Backup ist das ja noch essentieller. Wenn du ohne wirklich Notwedigkeit auf eine andere Sprache wechselst hast du die Latente Gefahr, dir neue Bugs und Fehler in den Code einzubauen. Nicht, weil dein Programmentwurf schlecht ist, sondern weil deine Sprachkenntnisse unzureichend sind.

    Außerdem ist Go ja genau so eine Mainstream Sprache wie Python und lässt sich auch auf dem Raspi problemlos installieren.

    Gruß, noisefloor

  • wenn du Go gut kannst und die Sprache beherrschst: schreib' es in Go. Nur weil Python auf dem Pi verbreiterter ist heißt das ja noch lange nicht, dass man damit programmieren muss.

    Python ist ja im Raspberry Umfeld wesentlich verbreiteter. Deshalb dachte ich es finden sich eher Mitstreiter bei einer v2 :).

    Dem ist ja offensichtlich nicht so. Ist auch nicht schlimm denn dann brauche ich bzgl der Sprache keine Ruecksicht zu nehmen. Ob ich wirklich eine v2 angehe steht auch noch in den Sternen. Der Rewriteaufwand ist nicht zu unterschaetzen :no_sad:

    • Offizieller Beitrag

    Zwei Anmerkungen von meiner Seite:

    Klar, Bash ist manchmal umständlich, aber dafür direkt "Linuxaffin". Am Ende würdest Du mit einer zweiten Sprache über Umwege auch nur Linux-Befehle absenden.

    Python ist ja im Raspberry Umfeld wesentlich verbreiteter. Deshalb dachte ich es finden sich eher Mitstreiter

    Falls Du das wirklich wollen solltest, dann fang an und ich bin mir ziemlich sicher, dass sich das ergeben wird. ;)

  • Hallo,

    Zitat

    Python ist ja im Raspberry Umfeld wesentlich verbreiteter. Deshalb dachte ich es finden sich eher Mitstreiter bei einer v2

    Python ist generell verbreiteter als Go, richtig. Aber das heißt ja nicht automatisch, dass die Anzahl der Nutzer, die _gut_ (genug) in Python programmieren können, höher ist. Gerade im Raspi-Umfeld würde ich mal sagen, dass es viiiiiel mehr Hobbynutzer mit semi-guten Skills als gute Programmierer gibt, die a) ideomatisches Python schreiben können und b) in der Lage sind größere Projekte sinnvoll zu strukturieren.

    Gruß, noisefloor

  • dass es viiiiiel mehr Hobbynutzer mit semi-guten Skills als gute Programmierer gibt,

    Da fühl ich mich jetzt angesprochen :lol:

    Bei Python würde man sich halt einen weiteren Interpreter sparen welcher zu installieren ist.

    Ob ich mich am Projekt beteiligen kann/könnte, kann ich schlecht abschätzen. Da ich nicht weiß wie gut meine Kenntnisse und Umsetzungen zum Projekt dazu passen und dem Projekt helfen können.

    Kurzum: Gibt es Interessenten bei einem (noch nicht geplanten) raspiBackup v2.0 in Python mitzuhelfen?

    Grundsätzlich ja

    Aber wie das eben mit dem Können ist - kA.

    Ebenso wie es sich zeitlich ergibt nächstes Jahr kann ich auch noch überhaupt nicht sagen.

    Persönlich wäre es mir aber natürlich lieber, wenn es das (noch nicht geplanten) raspiBackup 2 in Python anstatt in Go geschrieben wird.

    Klar, Bash ist manchmal umständlich, aber dafür direkt "Linuxaffin". Am Ende würdest Du mit einer zweiten Sprache über Umwege auch nur Linux-Befehle absenden.

    Das stimmt natürlich auch iwie.

  • Hofei Es war eine Frage von mir in die Runde wie so die allgemeine Meinung, Stimmung und Lust ist. Ich will damit niemanden unter Druck setzen mitzumachen. :)

    Hintergrund ist dass es nach und nach immer schwieriger wird Erweiterungen einzubauen da bash gewissen Grenzen hat wenn ein Script eine gewisse Groesse ueberschreitet. Speziell auch wenn das Script inkrementell entstand und nach und nach immer mehr Altlasten mitschleppt. Ein Rewrite wuerde das Problem loesen da die neue Version dann nicht mehr backwardcompatible sein muss.


    In der Diskussion waere auch ein rewrite in bash - dieses Mal von vorne herein systematischer - eine weitere Option. D.h. es gaebe 3 Sprachen zur Auswahl. Wie gesagt ist der Rewrite noch nicht spruchreif. Haengt auch bei mir davon ab wie es naechstes Jahr bei mir weitergeht.

    Wenn mehrere Leute den Rewrite angehen koennte man mehr und bessere Sachen machen, z.B. eine MySQL DB einbinden, ein REST Server bauen so dass man entweder mit einem REST Command Client oder einem fancy Web UI arbeiten kann. Nachteil ist dass man dann Kommunikationsaufwand hat. Aber mittlerweile bin ich der Meinung dass ein Vorteil von raspiBackup auch seine Einfachheit ist und keine weitere SW Komponente wie z.B. MySQL oder WebUI Komponenten zu installieren sind.

    Wie dem auch sei - vielen Dank fuer Euer Feedback. Wenn ich eine Entscheidung getroffen habe lass ich Euch wissen :)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!