11 votes

What programming/technical projects have you been working on?

This is a recurring post to discuss programming or other technical projects that we've been working on. Tell us about one of your recent projects, either at work or personal projects. What's interesting about it? Are you having trouble with anything?

6 comments

  1. talesofweirdfl
    Link
    I did it! I finally made and posted my first text game to an interactive fiction competition on itch. In the process of making it I ended up making all kinds of scripts and tools (including a...

    I did it! I finally made and posted my first text game to an interactive fiction competition on itch. In the process of making it I ended up making all kinds of scripts and tools (including a visual studio code extension) to make the development process easier. All in all, it was a blast and I'm kinda excited to make another one.

    5 votes
  2. lynxy
    Link
    I'm slowly moving some of my projects from plain-old "bare" git repositories on my server machine, cloned over SSH, to a personal Forgejo instance I spent a couple of hours spinning up and...

    I'm slowly moving some of my projects from plain-old "bare" git repositories on my server machine, cloned over SSH, to a personal Forgejo instance I spent a couple of hours spinning up and configuring. Most of the projects will stay private / hidden, but there are one or two which I might host publicly, and for these I've been looking into and debating different permissive licenses- and diving into the complexities of the git rebase functionality.

    I've somewhat got a handle on how to interactively rebase an entire project from the root commit, rewording and squashing commits, as well as flattening certain files so that the state looks consistent through the project history*. Another clean-up step which took me some time to figure out was the claiming of all commits in a project history (re-authoring) without resetting the authored / committed dates.

    *This allows me to retroactively license code which has yet to be published- I know retroactive re-licensing is a touchy subject, but for code which is entirely written by me, and not-yet publicly accessible, it feels reasonable, and it will hopefully reduce confusion re:licensing of specific tags / versions, etc.

    4 votes
  3. xk3
    (edited )
    Link
    Two interesting things I stumbled on this week: It's possible to know filesize of files as they are deleted via bpftrace: trace_unlinks_size.bt $inode = args.dentry->d_inode; $size_bytes =...

    Two interesting things I stumbled on this week:

    It's possible to know filesize of files as they are deleted via bpftrace: trace_unlinks_size.bt

     $inode = args.dentry->d_inode;
     $size_bytes = (uint64)$inode->i_size;
    

    My CPU was maxing out due to too many parallel processes which was causing realtime/low-latency processes like audio playback to stutter. I've experienced this problem before but I didn't think to pause processes to reduce the number of active parallel processes; ie. $ unparallel ffmpeg

    (I should probably just run these background processes in a systemd slice with a CPUQuota (cgroup) but this is working fine for now...)

    3 votes
  4. [3]
    secretfire
    Link
    I'm working on getting a (relatively) robust backup system going for my important files. My current backup system is, well, shit. I have my main drives, a NAS drive in my PC that I manually...

    I'm working on getting a (relatively) robust backup system going for my important files. My current backup system is, well, shit. I have my main drives, a NAS drive in my PC that I manually copy/paste things into whenever I feel like it, and a 15GB Google Drive for photos and important documents.

    On my computer I'm running Linux and a shameful Windows installation, both of which I want to reinstall (Windows to get a better supported version, Linux because in classic Linux user fashion I am dissatisfied with the way I made my partitions last time). Before going through with it I'd like to have everything even slightly important backed up - A broad survey of my entire PC shows that ignoring things like applications, games, and legally acquired TV/films (I can always legally acquire them again in the future), I only really have ~300GB of stuff. Which is, well, kinda trivial to back up honestly. I've bought some cloud storage that I'm going to configure regular automatic backups onto, and now I'm looking at getting a home server of some kind for further redundancy.

    A few weekly threads ago I was discussing building a fancy home server, unfortunately that's fallen back into the "things I pretend I'm going to do but will never do" category of ideas, mostly because of choice paralysis and the fact that RAM just got stupid expensive all of the sudden. Maybe when Black Friday rolls around it'll give me the push I need. Until then, I might just buy a Raspberry Pi, stick a NAS drive on it, and use it as a very basic easy option.

    2 votes
    1. [2]
      lynxy
      Link Parent
      If the only operation the server will perform is file storage, I'm sure a Pi will work just fine- you can grab an 8/16 GB Pi 5 and a small-but-fast SD card and it will run most storage solutions...

      If the only operation the server will perform is file storage, I'm sure a Pi will work just fine- you can grab an 8/16 GB Pi 5 and a small-but-fast SD card and it will run most storage solutions reasonably well.

      I do heavily recommend storing the files on an external HDD, though, as you mentioned. SD cards don't have a great reputation for robustness, and I myself have lost data after an SD card was bumped and a hairline crack rendered it inoperable.

      If, however, you want to host media on Plex or Jellyfin, I'm not certain the Pi will suffice. Maybe if you never transcode the media on the fly, as the GPU is underpowered for this use-case.

      1 vote
      1. secretfire
        Link Parent
        My home server plan in the long run is to have a machine capable of running Jellyfin and a few other things, and I definitely wouldn't trust a Pi to do that. But as a short term quick-and-dirty...

        My home server plan in the long run is to have a machine capable of running Jellyfin and a few other things, and I definitely wouldn't trust a Pi to do that. But as a short term quick-and-dirty solution for a backup device I think it'd work for a little while at least, until I can build an actual server. But you know what they say about temporary solutions being the longest-lasting ones.

        1 vote