For most of college, I’ve kept it simple: I’d create a directory in my home folder for each project, then eventually move older or inactive ones into ~/programming/. When I change devices or hit file size limits, I’ll compress and send things to my NAS.

This setup has worked pretty well so far. But now that I’m graduating and my projects keep stacking up, I’m starting to wonder if there’s a more efficient system out there.

Curious—how do you all organize and store your projects? Any tips or methodologies that have made your lives easier over time?

The only person I’ve talked to about this is my mentor who’s been programming since the 60s (started on the IBM 1620 and Bendix G15) and he just mostly keeps projects in directories in his home directory and uses his godly regular expressions skills to find things that way. Makes me wonder if I’m overthinking it…

  • faultypidgeon
    link
    fedilink
    arrow-up
    7
    ·
    2 months ago

    I push every project I work on right away to my gitea instance. If I expect not to work on something for some time I just delete the local copy.

    When I change devices or hit file size limits, I’ll compress and send things to my NAS.

    Well, that sounds inconvenient.

    • crimsonpoodle@pawb.socialOP
      link
      fedilink
      arrow-up
      3
      ·
      2 months ago

      Yeah, I really should start using Git for everything, but I’ve been working with a lot of large datasets recently (mostly EEG data). A big part of improving accuracy comes from cleaning the data, which is huge and takes a while to process. I could set up a local Git server to keep track of everything or just save the base data files and regenerate as needed, but on my current setup, that process can take anywhere from 2-6 hours depending on the task. So for now, I’ve just been managing everything locally to save time.

      • faultypidgeon
        link
        fedilink
        arrow-up
        2
        ·
        2 months ago

        git LFS might be for you. If the data takes so long to reprocess I think it is fine to check it in (possibly using LFS).