icon
Personal Website

Weekly Coding • 2025-05-01

It's time to write my weekly report. Last week, I dedicated 3 hours and 47 minutes of my free time to my projects. I made various fixes for the hinst-website https://hinst.github.io/

  1. Fixed a bug with screen width updates. It turned out I'd gotten caught in a tricky React Hooks feature. The useState variable only updates at the root of the function, and nested functions always see the initial value of the variable. It took me several hours to realize and understand this.
  2. Removed SmartProgress redirects: now instead of ` ... ` I have direct links ` ... `.
  3. Fixed time zone for saved images and comments.
  4. Adjusted the translator's schedule: the English and German language translators now run at 12:15 AM, while the downloader runs at midnight. Previously, both were set to midnight, causing delays in translating new posts as the translators didn't see them on time.

That was last week. This week, I plan to create a new backup program. In a previous post, I wrote about searching and testing existing backup programs, but they disappointed me, so I've decided to make my own. The requirements are:

  1. Backups go to a USB flash drive.
  2. A mirror is created without keeping track of changes.
  3. File names are encrypted.
  4. Compression is optional.
  5. If a file hasn't changed, it's not duplicated. This is one of the core requirements because storage space on the drive is consumed when writing data. If I only changed one file in my 80GB documents folder, only that single file should be copied, not all 80GB. So 7-zip and similar archivers are out because they don't do this.

Let's see how long it takes to create and test my program... I plan to use TypeScript as the programming language. Once ready, I'll start using it for my backups.