icon
Personal Website

Weekly Coding • 2025-05-01

This text was automatically translated to German language by LLM tool.

Es ist Zeit für meinen wöchentlichen Bericht. Letzte Woche habe ich in meiner Freizeit 3 Stunden und 47 Minuten an meinen Projekten gearbeitet. Ich habe verschiedene Korrekturen für die hinst-Website https://hinst.github.io/ vorgenommen.

  1. Ich habe einen Bug bei der Aktualisierung der Bildschirmbreite behoben. Dabei bin ich in eine knifflige Besonderheit von React Hooks geraten. Die Variable useState wird nur im „Root“ der Funktion aktualisiert, während in verschachtelten Funktionen immer nur der ursprüngliche Wert der Variablen sichtbar ist. Es hat mich mehrere Stunden gekostet, das zu bemerken und zu verstehen.
  2. Ich habe die SmartProgress-Weiterleitungen entfernt: Statt <a href=http://smartprogress/redirect?url=my_url/\> verwende ich nun direkte Links <a href=my_url/>.
  3. Ich habe die Zeitzone für gespeicherte Bilder und Kommentare korrigiert.
  4. Ich habe den Zeitplan des Übersetzers angepasst: Jetzt starten der Übersetzer für Englisch und Deutsch um 00:15 Uhr, während der Downloader um 00:00 Uhr startet. Zuvor waren beide auf 00:00 Uhr eingestellt, weshalb neue Posts verzögert übersetzt wurden, da der Übersetzer sie zum gewünschten Zeitpunkt nicht sah.

Das war letzte Woche, aber diese Woche plane ich eine neue Anwendung zur Erstellung von Backups zu programmieren. In einem meiner vorherigen Beiträge habe ich darüber geschrieben, wie ich bestehende Backup-Programme gesucht und getestet habe, aber diese haben mich enttäuscht, weshalb ich mich entschieden habe, mein eigenes zu erstellen. Die Anforderungen sind:

  1. Backups werden auf einen USB-Stick gespeichert.
  2. Es wird ein Spiegelbild erstellt, ohne Änderungshistorie.
  3. Es gibt eine Verschlüsselung der Dateinamen.
  4. Es gibt eine optionale Kompression.
  5. Wurde eine Datei nicht geändert, wird sie nicht erneut kopiert.
    1. Dies ist eine der Hauptanforderungen, da die Ressourcen des Speichermediums für das Schreiben von Daten verbraucht werden. Wenn ich nur eine einzige Datei in meinem Dokumentenordner mit einem Volumen von 80 GB ändere, sollte nur diese eine Datei kopiert werden und nicht die gesamten 80 GB. Daher fallen 7-Zip und ähnliche Archivierungsprogramme hier sofort weg, da sie das nicht können.

Mal sehen, wie viel Zeit die Erstellung und das Testen meines Programms in Anspruch nehmen wird… Als Programmiersprache plane ich TypeScript zu verwenden. Sobald das Programm fertig ist, werde ich es für meine eigenen Backups nutzen.