
Ask HN: How do you organise your hard drive? - cogs
By project, by tool?  What do you do with pdfs and reference stuff, surely not Dewey Decimal?
======
amenghra

      - bunch of random files in ~/Desktop/
      - more random files in ~/Desktop/old/
      - more more random files in ~/Desktop/old/old/...
      - real stuff in ~/dev and ~/Site/
      - a mix of important and unimportant files in ~/Downloads/

~~~
owaislone
\- Desktop has the same fate this ^. Have a CLI tool that takes everything
from the desktop and puts it in ~/Desktop/cleaned/

\- _~tools /dotfiles/_ hosts all dotfiles with a Makefile that sets everything
up

\- _~tools /<randomTools>_ \- contains mostly useful utilities and scripts
like fonts, vpn configs, terminal color schemes, config patches to apply to
`/etc/` after fresh install etc.

\- _~Projects /<client|company>/<project_name>_ for paid work projects

\- _~Projects /<projectName>_ for personal projects

\- _~Playground /<experiment>_ for experiments, prototypes or building
software from github out of curiosity

\- _~Applications /<appName>_ for apps I build from source and copy/link
binaries to `~/bin`. I'm on Linux so this is non-standard.

\- _~GoogleDrive /<accountName>_ for Google drive sync with Insync

\- _~Vaults /<vaultName>_ for mounting cryfs encrypted directories from the
Google Drive directories. (some times use plasma vault for this)

~~~
jason_slack
+1 for Playground/ I was just trying to decide where to put some experiments I
was working on and Tests/ just didn't look right :-)

~~~
zaphar
I called my version of this ~/sandbox.

~~~
jason_slack
Yeah I like this too. Perhaps I use playground/ for when I am in a good mood
and sandbox/ when in a bad mood.

~~~
Jeremy1026
playground/ when you expect things to be clean

sandbox/ when you're ready to get messy

~~~
jason_slack
+2 Yeah that is so much better.

------
jen729w
“...surely not Dewey Decimal?”

Close! Johnny.Decimal. [https://johnnydecimal.com](https://johnnydecimal.com)

I’m Johnny. Feedback much appreciated, I’m working like a busy little bee on
the site as we speak. Should have a show HN app ready in a couple of months,
but I’m learning JS/React as I go so it’s taking time. :-)

~~~
colorcoded
I'm actually using Johnny decimal now, except that I ended up using 100
buckets instead of 10 because some of the categories simply had too many items
in them and they would have overflowed or had no room to grow in them
otherwise.

It's so nice to have a good system and never doubt where to find something and
where to put a new thing.

I switched from our previous mess to Johnny decimal by using a python script
that processed a table in an emacs org mode file. The script filled the rows
in the table with the file and directory names and I could then assign a
category to each file or directory and say what the script should do to them.
Then the script showed the outline of my Johnny decimal system so I could
check that's what I wanted. This made it easy to play around with possible
categories for all my existing stuff until I was satisfied. In the end it
copied all the files to their new home.

Thanks for creating Johnny Decimal.

~~~
jen729w
That’s amazing to hear. Thank you!

I have come across situations where you need more than 10, yes. I plan on
addressing it in a future post on the site.

If you’re able to share, I’d love to know more about your case. If not, no
stress. hello@johnnydecimal.com.

~~~
misterdoubt
Johnny.Hexadecimal?

------
omeid2
Using domain names and symbolic links. Seriously.

    
    
        github.com/omeid/upower-notify
        omeid.net/family/photos
        omeid.net/friends/joe/2018-royal-national-park-hike -> omeid.me/hikes/2018/royal-national-park
        omeid.me/hikes/2018/royal-national-park -> omeid.me/hikes/royal-national-park/2018
        omeid.me/blog
        omeid.me/id
        some-company-i-work-for.com/projects/alpha-transit
        some-company-i-work-for.com/legal/contracts -> omeid.me/contracts/some-company-i-work-for.com
        some-department.some.gov.au/projects/speed-view -> github.com/some-department-speed-view
    

And so forth.

~~~
shanev
I started this route after being influenced by GOPATH. Can’t imagine anything
else now.

~~~
majewsky
Same for me: I have a program that indexes Git repositories in $GOPATH and
provides fast access:

    
    
      $ cg gh:foo/bar
      $ pwd
      /x/src/github.com/foo/bar
    

Source is at
[https://github.com/majewsky/gofu/tree/master/pkg/rtree](https://github.com/majewsky/gofu/tree/master/pkg/rtree),
README is at the top of the repo.

------
JohnBooty
One thing that changed my life is z, a utility to navigate easily to arbitrary
directories based on frecency. Makes dir structure a bit less relevant; with z
the distance between any two dirs is effectively constant.

[https://github.com/rupa/z](https://github.com/rupa/z)

    
    
         	By project, by tool? What do you do with pdfs and reference stuff, surely not Dewey Decimal?
    

~/proj ---> all my current projects and stuff i've pulled down from GitHub so
I can examine it. usually 20 or so. subdirs for employer, etc

~/Dropbox/personal ---> scanned documents, receipts, etc

~/Dropbox/work ---> subdirs per client/employer

~/Dropbox/ebooks ---> organized into subdirs by topic

~/Dropbox/pdfs ---> web pages i've "printed" to pdf for archiving/reference.
organized into subdirs by topic

~/Desktop/old ---> the "junk drawer" i occasionally clean out. doesn't get too
big

~/Music ---> mostly just iTunes doing its thing

I also have a truckload of media (games, movies, music) stored on external
hard drives since there's not much room for it on the internal SSD.

~~~
mediocrejoker
I thought 'freceny' was a typo until I clicked the link, but sadly the man
page doesn't really explain what it is.

Could you maybe give a few examples of how you might find something eg. using
find(1), and then how you could find it using z?

~~~
surajrmal
I assume it's a mashup of frequency and recency.

~~~
cilefen
Indeed it is: [https://developer.mozilla.org/en-
US/docs/Mozilla/Tech/Places...](https://developer.mozilla.org/en-
US/docs/Mozilla/Tech/Places/Frecency_algorithm)

------
yboris
A bit off topic: I have a large collection of _videos_ , but organizing them
was exceptionally annoying, so I built a tool: _Video Hub App_ with advanced
search features and instant previews of screen-captures from each videos.
Think of it like YouTube for videos on your computer:
[https://videohubapp.com/](https://videohubapp.com/)

And it's now open-source: [https://github.com/whyboris/Video-Hub-
App](https://github.com/whyboris/Video-Hub-App)

~~~
qqn
What a great idea, thank you so much for doing this! I'm pumped to try it out.

------
saghm
I have a fairly specific system that I've developed, mostly due to my being
fairly anal about not wanting to leave random files lying around after I'm
done with them and wanting to keep as little as possible in my home directory.
I tend to try to keep most things in my directory that's sync'd to cloud
storage (previously Dropbox, now Nextcloud since Dropbox doesn't support non-
ext4 on Linux); ~/Documents and ~/Pictures are both symlinks into that folder
so that I don't have to keep track of which machine something is on. I try to
keep my ~/Downloads directory fairly clean, and move things to the trash
liberally (through trashcli) once my initial use is finished so that I can
still access them later if I need to. The only other two (non-hidden)
directories I keep in my home directory are ~/dotfiles (which is a private
GitHub repo that I symlink my dotfiles from) and ~/code, which has
subdirectories for various categories (`forks`, `scripts`, `projects`,
`scratch`, and maybe a few others I'm forgetting). Finally, I have a
~/.scratch directory where I put text files I use to take notes, short scripts
I write to test something, and other files I only need for a short time.

~~~
haloux
Which fs are you using nextcloud with? Is it as seamless as ext4 with Dropbox?

~~~
ohthehugemanate
I ditched for the same reason - I run btrfs on my workhorse machine. I'm very
happy with nextcloud (though it leaves something to be desired as a developer
who wants to contribute). The biggest difference though, is that now I have a
product that beats the hell out of any cloud storage provider. 6TB of space
(drives I had lying around, basically), integrated with Plex and my Roku,
encrypted off-site backups (free azure allotment from my work, but pennies
anyway), and better use of my internet connection. If I need more space, I can
buy it very very cheap as a one time expense. I never have to go back to
Dropbox again. Feels good, man.

------
hotsauceror
Hierarchy starts in Documents. $name is employer name

\- .{$name}

    
    
      - {$name} Administrative = my personal corporate footprint.  W-2s, onboarding, perf reviews, etc
    
      - {name} Projects
    
        - PMO Projects
    
        - Leadership Projects
    
        - Team Projects = internal initiatives
    
        - Administrative Projects = stuff like, we need to update our service catalog portfolio or create a new RACI
    
        - Application Projects = stuff like, “migrate the Fruitbasket database’s nonclustered indexes and staging tables to new filegroups”.  Small technical projects, surfaced by our team
    
      - {$name} Troubleshooting
    
        - YYYYMMDD-$app-problem-desc = all the documents and data for a specific issue.  Log dumps, AARs, executive summaries
    
      - {$name} Management
    
        - Vendors
    
        - Budgeting + Forecasting
    
        - Expenses
    
        - Technical Portfolio
    
        - Team Members
    
        - SLAs / OLAs
    
        - Audits
    
        - Onboarding
    
      - {$name} Documentation
    
      - {$name} Forms and Templates
    
      - {$name} Meetings = all meeting agendas and write ups.  Each is a txt file named as YYYYMMDD-stakeholder/app-topic.  Can be a tossup whether a meeting write up goes here or in a project folder.
    
      - {$name} Change Management = docs and data for each change I’m either submitting or implementing.  Each sub folder named by the Servicenow ID and a description.
    
      - {$name} Operations = heat maps, log dumps, baselines, WIP documentation.  Much of this is getting moved to github.

------
jcoffland
I have a few folders under home I've used regularly for many years:

    
    
      docs
      projects
      build
      bin
      crap
    

_docs_ contains documents organized into subcategories like _biz_ and
_personal_.

 _projects_ contains all my various paid and personal programming and hardware
projects; each in their own subdirectory.

 _build_ is a playground for building and trying out new software.

 _bin_ contains non-packaged executables. I find _/ usr/local/bin_ to be a
poor alternative because it has to be moved separately when I install a new
OS.

 _crap_ contains subdirectories in the format _YYYYmmdd_. E.g. _20190105_.
Whenever I accumulate too much crap in my home directory, I move it all to _~
/crap/$(today)/_. _today_ is an alias for _date +%Ymd_.

------
ilian
For organizing files I can suggest a combination from meaningful folder
structure and tags. Mac OS offers a great way to organize files with tags, but
it is limited only for the Apple world. There are bunch of tools offering
organizing files with tags, but most of them are cloud based or use databases
for storing the tagging information. Both ways are locking your files in a
third party systems in some way. A tool for organizing local files and folders
with tags lacking these limitations is TagSpaces. If is open source and freely
available from [https://www.tagspaces.org](https://www.tagspaces.org)

------
w1nt3rmu4e
If you happen to be fishing for app ideas, here's one I'd pay $50 for:

An app that controls `~/Downloads` and automatically organizes (somehow),
tracks usage and schedules files for deletion.

Once a week I'd like to see a dialog listing files likely to be unwanted, info
about how many times they've been accessed, where they came from, etc. With a
simple, one button, 'trash them all'.

The idea would be to optimize sets of files so they're more likely to be 'all
trashed' because they aren't useful anymore, while minimizing situations where
you want to trash all but a few and have to spend time managing that.

Not sure what the heuristic would be.

~~~
laumars
One of the biggest regressions in modern browsers is how they all
automatically download to the Downloads folder. I really miss the dialogue you
used to get where you’d get asked where you’d want to save the file (im aware
you still get that if you right click and go “save as” but that’s not always
possible with some sites).

~~~
janci
You can disable auto download in settings of Chrome, Firefox and many other
browsers. You get the Save dialog then.

On the other hand, I like that all stuff goes to Downloads and you can handle
it with your favourite file manager that is much better than zhe default save
dialog.

~~~
laumars
> _On the other hand, I like that all stuff goes to Downloads and you can
> handle it with your favourite file manager that is much better than zhe
> default save dialog._

You still get to handle it with a file manager with the dialog, only with the
added bonus that you don't have to manually launch it, navigate to where it's
been auto-downloaded to, then cut and paste it to where you actually wanted
it.

------
notemaker
Slightly OT, but I yesterday launched my script [1] to go through 2 decades of
family photos (200GB) that are structured in no sensible way (i.e tree depth
of over 6 and over 500 folder with no descriptive names) and organize them.

The script will copy the files, ignoring duplicates, and format them as
follows. Files are renamed to their date of creation (when the photo/video was
taken/shot), e.g. 2019.01.07_08.28.34.jpg, and then stored in folders sorted
by year.

ETA is 40 hours for the remaining 150GB. I suspect that the bottleneck is my
network (running the script on my PC, but the photos are available through
NFS). I assume it would go much faster if photos are stored on the same
computer as the script is being run on.

Anyway, I thought this might be relevant for anyone who wants to get a grip of
their photos :)

PS: would greatly appreciate style/performance/correctness tips on the code
AND recommendations of any other naming strategy you deem better than my
approach!

[1]: [https://github.com/johan-
andersson01/photo_renamer](https://github.com/johan-andersson01/photo_renamer)

~~~
notemaker
An update for the curious:

I reduced the total running time of ~60 hours to ~3 hours by connecting my PC
and my server directly with an ethernet cable :)

------
janci
All downloaded files go to huuge ~/Downloads. Files to be preserved are then
moved to more appropriate location. From time to time I delete oldest and
biggest files from Downloads.

Photos and videos go to Personal folder organized by year and event (ie.
2018/Cristmas). Web development is in /var/www, /var/node per-project.
NetBeans projects in default location Company stuff to $companyName/documents
$companyName/projects etc. Documents that are related to specific point in
time are prefixed with YYYY or YYYYMMDD. Documents that are subject to change
are siffixed by v1, v2... Movies go to movies folder, ebooks and audio books
to books folder - organized per-title. Music goes to music folder in
artist/album structure. Disk images, install packages go to Install folder.
Personal documents are just a messy Documents folder.

Symlinks are used when data is stored in other location than it belongs to
(ie. due to size or fixed path requirements)

I have few tmp folders where is stuff that I can afford lose at any time (but
I am too lazy to delete)

I backup all important folders with rsync to remote location.

~~~
davchana
Out of all other comments in this thread, my file structure matches yours
most, except company. My Dropbox is about 30gb, it has Apps for all webapps
saving data to Dropbox from IFTTT, android, etc. Documents has all documents
with subfolders like 01 Education, 02 Work, 03 Passport, 04 Indian etc. Then
Photos, etc.

------
kylehotchkiss
128gb personal Macbook Pro, which requires being somewhat creative.

* Lightroom collection (library & photos) on Samsung T5 external drive

* GoPro video collection also on Samsung T5 external drive

* All sites, organized by domain name, in /Sites/ (Use DNSMasq + Apache vhosts to map the folder to sitename.mac domain locally)

* Various github clones in ~/Clones/

* Nonsite code projects in ~/Projects

* Google Drive folder:
    
    
      * personal will/last wishes: "_In case of emergency/"
    
      * scanned things: documents/ 
    
      * so many tax docs: legal/
    
      * college/design projects: projects/
    

And finally, Google Photos for all photos (turned off icloud photos). 10 years
of photo arquives is so cool. I want to switch to something more private
though, maybe Synology has something similar when I upgrade to a NAS

Backup strategy:

* Home folder: Arq to Google Drive (in appdata folder)

* /Sites/ folder: Arq to Google Drive

* Google Drive to Google Drive

* Samsung T5: Arq to Google Drive

Summary: Paid G Suite for business account for my wife and I provides ample
backup storage online, but eventually I'd like everything to live at home and
only encrypted backups on S3, when I want to drop $700 on a decent NAS setup.

~~~
kylehotchkiss
Update: Synology does have what looks like a Google Photos replacement
([https://www.synology.com/en-
global/dsm/feature/moments](https://www.synology.com/en-
global/dsm/feature/moments)). Anybody who's used it care to share experience?

~~~
mceachen
I tried it and my (albeit 2 year old) Synology ds416j didn't have the
horsepower for the app.

Please forgive the self-plug, but if you have the time and inclination, I'd
love to get your feedback by trying a beta build of PhotoStructure, which
currently has ports for Mac, Linux, and Windows, but I've designed it to also
be runnable on headless boxes, like on your NAS (I just haven't had the time
to build installers and updaters for those platforms yet, and frankly I have
no idea what the demand would be for those ports).

The signup is on the home page,
[https://photostructure.com/](https://photostructure.com/). Feel free to send
me an email at hello (at) photostructure.com if you have any other questions.

------
miguelrochefort
My approach to file management is delegation:

\- Most files go straight to the default recommended location. This includes
downloads, git repositories, programs, etc.

\- Source code is on GitHub.

\- Emails are on Gmail.

\- Notes and todos are on Google Keep.

\- Books are on Google Drive in PDF or EPUB format.

\- Photos and videos are on Google Photos and YouTube.

\- Music is on Spotify and YouTube.

\- Movies are on Netflix, or in the Downloads folder (until they're watched
and deleted).

\- Documents and scans are on Google Drive. If I must name a file, I use this
convention: "Some_Description-20190106.ext". I mostly rely on search, but I
have some high-level folders as well: Books, Health, Finance, Travel, Work,
School, Scans, Thoughts, Projects, AppData, Backups.

In 2019, I want to migrate from files to a database. My plan is to extract
knowledge from files and online services, and them into a RDF triple store:

\- Google

\- Keep

\- Maps

\- Fit

\- Contacts

\- Gmail

\- Calendar

\- Reddit

\- Hacker News

\- Pocket

\- Amazon

\- eBay

\- Mint

\- Bitcoin

\- MyFitnessPal

\- Chrome

\- LinkedIn

\- Twitter

\- Facebook

\- GitHub

\- 23andMe

\- iCheckMovies

\- GoodReads

\- YouTube

\- Spotify

\- Netflix

\- IMDB

\- VoIP.ms

\- Airbnb

\- Uber

\- Agoda

\- Booking

\- TripAdvisor

Lastly, I want to make a lot of this data public. I'll start by releasing the
source code of old/ongoing projects on GitHub and release my ideas/thoughts on
my blog.

~~~
ech000
Since you seem to store everything on various Google services, what is your
backup strategy in case you loose access to your account?

~~~
miguelrochefort
1\. Keep backup codes [1]

2\. Download your data [2]

[1]
[https://support.google.com/accounts/answer/1187538](https://support.google.com/accounts/answer/1187538)

[2]
[https://support.google.com/accounts/answer/3024190](https://support.google.com/accounts/answer/3024190)

~~~
eps
I think the GP meant what if Google erroneously block access to your account
for a supposed T&C violation or what have you.

~~~
miguelrochefort
Option 2. You can download all you data.

------
valeyard
* ~/Projects/<git-repo-name> \- all my git repos

* ~/.bin - only scripts, so this dir is in my $PATH

* ~/Pictures - only images, my rices, wallpapers, screenshots, etc

* ~/syncthing - files I sync with syncthing (my .kbdx and my memes folder)

* ~/Documents/<topic> \- my university stuff, a courses folder (files I created doing some courses), some cheatsheets in .md, a library folder where I keep all material I have colected throughout my life, and a backup of my memes folder

* ~/suckless - suckless software with my modification (dmenu, dwm and st)

------
pointsphere
The same way I organize my whole life, everything is either new and
unprocessed, being processed, or done.

\- unprocessed, unsorted, new information: /Downloads

\- currently being processed or worked on, otherwise empty, synced to NAS:
/Documents /projects

\- processed / finished / rarely accessed: /archive on NAS, indexed, backed up
to backblaze

/archive also contains all media in a neat folder structure, but indexed (by
the NAS) and searchable through Finder.

This way my work folders stay clutter-free except for current projects/work

~~~
ianai
This is good. I might try to adopt it.

------
asdz
Check out
[https://www.reddit.com/r/datacurator/](https://www.reddit.com/r/datacurator/)
and
[https://www.reddit.com/r/datahoarder](https://www.reddit.com/r/datahoarder)

Been there and learnt some good directory structure for keeping archive and
organizing my NAS, from MP3, Games, Installer, OS iso to VMs, tutorials, pdfs,
etc

------
bobbydreamer
C: drive all temporary files like currently downloaded movies & music and
default path files.If lost no worries.

D: Personal, Educational PDFs, Video tutorials and projects.

E: drive for videos, music and games data files.

D&E drives rsync with Google storage buckets. (GSUTIL)

Housekeeping - PDFs and Tutorial videos which I haven't referenced in 2years
will be eventually deleted. On first identification I will rename the folder
as CBD - Foldername(cbd - can be deleted). Next time when I am browsing files
in explorer if a CBD catches my eye, I will delete it. I Regularly run dir /s
and save output in TXT file for reference purposes, only one time I opened it.
Decided not to rename any downloaded files as using the same name it can be
found again by googling, if I rename it it's hard to find in internet. I also
use a duplicate finder to find and delete duplicate files.

Project files are in google source repository and partially in GitHub &
bitbucket as well.

For references links, Have a set of files named it on the subject like
java.txt, git.txt, gcp.txt which contains all the commands and links which I
had found useful and I am typing it regularly in marked down format itself, so
it looks fancy in vscode. This reference is in D:\

------
MaulingMonkey
Everything inside I:\home\ with over a decade of shifting hierarchical
patterns slowly accumulating.

Under I:\home\: archive, art, bin, configs, data, financial, logs, media,
notes, photos, projects, scans, scripts, utility, vms, website, writing. (I
should merge utility into bin...)

I:\home\archive\ is a mostly write-only repository of backups of other stuff
(exports of bookmarks, email, old computers, old installers/isos I want to
keep, etc.)

I:\home\media\ is mostly external media and further subdivided into: blender,
books, comics, composing, documentation, downloads, flash, midi, music (mp3s),
pdfs, pictures, recorded, screenshots, sounds, ttyrecs.

I:\home\notes\ is an ever shifting collection of .txt files, only going one or
two more folders deep (fiction, game design, gaming, hobby, jobs, journaling,
productivity, programming, security, self, social, style, web, etc.)

I:\home\projects\ is currently mostly a flat list of programming projects,
mostly gamedev related - I have custom tools to scan it for .projnfo sub-
directories containing screenshots and known files like description.txt for
metadata, which are compiled into a single easy to scan html page to
rediscover projects I've previously abandoned. I abuse prefixes / naming
schemes to organize stuff some too (E.g. mmk.foo.bar for typescript libs,
libMmk* for C++ libs, mmk_xyz for Rust projects, CamelCase for C#, www_xyz for
non-library typescript projects). Current exceptions to the flat list all
start with an underscore: _other (other people's projects I'm contributing to
or building), _test (throwaway projects for testing compiling things),
_templates (copyable projects), _nupkg (local C# nuget packages). Previously I
also had "new", "stable", and "dead" categories, but I got rid of them as not
useful and making my project paths unstable.

My bookmarks are a little more consistent/'modern': A bunch of icon-only
bookmarks directly on my bookmarks bar, one layer of top level categories
(currently "Life", "Work/Dev", "Art", "Music", "Play", "Self & Social") with
one more layer of subcategory underneath that. I configured a "search engine"
such that typing "b asdf" searches my bookmarks with the url
chrome://bookmarks/?q=asdf , which is the most important bit - the folders are
often just there to give me search terms.

------
nohope
Few people here have referred to the /tmp directory. This is essential in my
workflow. I put a lot of things there (this is also my Downloads folder) and
when the computer reboots, its clean again!

One of the computers I use stay turned on for long times, so I have /tmp/t and
a cronjob that cleans all files older than 1 day in this directory:

    
    
        # Remove all files in /tmp/t older than 1440 min (one day)
        */10 * * * * find /tmp/t -cmin +1440 -delete > /tmp/.find-delete-1440.log 2>&1
    

Besides that, I have a lot of bunches in $HOME. dot.files, dot.vim, dot.mutt,
etc., are all in private git repositories and I have a "~/s" directory I keep
synchronized among different machines with rsync (I don't trust Google nor
Dropbox). I was thinking about starting using Syncthing [1], though.

[1] [https://syncthing.net/](https://syncthing.net/)

~~~
Moyamo
Using /tmp for my downloads folder became problematic for me when downloading
big files.

1\. You may want to pause the download and restart it after reboot.

2\. It's quick to redownload small files but a pain to have to redownload
large ones.

3\. Arch puts /tmp on a tmpfs, so big files can eat all your memory!

------
rcarmo
I run all my computers in roughly the same way, be they Mac or Windows
(although I don’t have Dropbox on my Windows machines, and OneDrive for
Business runs only on my work machines):

\- Everything goes into a cloud-backed folder (even git repos)

\- I follow a Mac-like hierarchy on all services (Documents, Development,
Library, Pictures, etc.)

\- Inside each top-level folder, I have subfolders for each context (Personal,
Customers, GitHub, Travel, Expenses, etc.)

\- Any truly confidential files go into encrypted disk images that are also
synced to the cloud (old habit from pre-Dropbox days). Each image has a
similar hierarchy inside.

Some example filenames:

\- ~/Dropbox/Documents/Home/Blueprint.blend

\- ~/Dropbox/Pictures/Unsorted (exported from iCloud for triage)

\- ~/Dropbox/Pictures/To File/2018/12 (Good pics from Xmas)

\- ~/Dropbox/Development/GitHub/piku (my PaaS wrapper)

\- ~/OneDrive/Development/Infrastructure/terraform-azure-ha (an ongoing work
sample)

\- ~/OneDrive For Business/Library/Presentation Resources

\- ~/OneDrive For Business/Customer Deliverables/WidgetCo/Project X

Being systematic helps. And yes, I keep git repositories on both Dropbox and
OneDrive (accessible to WSL in the latter case), and it has worked flawlessly
for ages, even across platforms. As long as you’re the single human accessing
them, they work fine and sync across without conflicts or corruption.

Edit: I don’t keep files on the Desktop unless they’re a slide deck I’m going
to present within a few hours or shortcuts to stuff for demos, and have
scripts to tidy up my Downloads folder as well...

Oh, and I name my work documents ‘YYMMDD Foobar.ext’, too. Helps tremendously
when you go back to a project to place things in time, and also in searches (I
seldom have to type more than 4 digits to get to a file)

~~~
noio
This is pretty much my system too. Including the YY(YY)MMDD naming, even for
folders.

Only except keeping all the repos inside Dropbox, I regularly rsync my working
folders to Dropbox (to prevent Dropbox from constantly reindexing and eating
my CPU).

------
lottin
I have 3 subdirectories in my home directory:

    
    
       doc/
       incoming/
       projects/
    

Under doc/ I have a few sub-categories

    
    
       comp/
       edu/
       fin/
       jobs/
       lang/
       org/
       ...
    

This is where I put things I intend to keep, whereas projects/ is for things
I'm working on. There are files in doc/ that I change often as well, so maybe
I don't really need two separate directories...

And incoming/ is where downloaded files go, temporarily, until I delete them
or move them to a proper location.

The only tool I use is a filename normalisation tool that I wrote myself, so
that filenames don't contain spaces or capital letters which slow me down on
the command line.

------
reader_1000
Even with sane organization, things get messy quickly. I use everything.exe
[1] on windows. It is much better than Windows search.

[1]
[https://www.voidtools.com/downloads/](https://www.voidtools.com/downloads/)

~~~
mxfihdsgyxegaas
+1

Am still looking for the kinix alternative

------
oldmancoyote
I keep all my very current projects on the desktop along with temporary items
and odd-balls I haven't classified. Everything else goes into folder called "A
Reference System" which contains a folder for each letter of the alphabet.

~~~
Wowfunhappy
> Everything else goes into folder called "A Reference System" which contains
> a folder for each letter of the alphabet.

Wouldn't it be easier to just keep the directory structure flat, and use
software to jump between letters? For instance, on macOS I can just press the
"C" key and Finder will jump to items that start with C.

~~~
oldmancoyote
I would feel skittish without a more formal structure.

------
whizzkid
I try to organise my hard drive as if it could die anytime.

~/Downloads: everything downloaded will be stored here. Nothing here should be
backed up. Nothing here will still be important in a month. If it should, then
move it to ~/Documents

~/Documents: everything here is important such as scanned documents, invoices,
pdf files, settings, configurations etc. Each file is backed up somewhere else
continiously.

~/src: all code goes here. Default “git pull” location. No sub folders except
“test”(ease on muscle memory). No backup needed since all has remote origin as
well.

~/src/test: code, git, and bash experiences goes here.

In this way, if my hard drive fails on me, i think, i will not have huge
problems.

------
raindropm
I have one simple rule that I (magically) am able to stick with for so long -
make sure you clean up at the end of the day. No file on Desktop/Downloads,
file things in their rightful place - or delete right away if it's not
important.

Sound mundane, but once you _just_ did it, it usually took about what, 5
minutes? But the impact the next time you turn on your computer and see the
clean workspace without guilt is great.

Another tip is the same as commenter about trash bin above - let software
automatically clean things for you at certain time, and you'll never worried
about it again.

~~~
Perihelion
This so much. It works really for your house too. I find that decluttering my
physical and digital workspace at the end of the day means I'm not stressed
about mess in the morning.

------
Wowfunhappy
I'm on a Mac. On my main hard drive:

Applications go into /Applications, unless they're games, in which case they
go in ~/Games.

Downloads stay in ~/Downloads unless I have a reason to put them elsewhere. I
also clear the Downloads folder whenever I'm running out of hard drive space.

Pages documents and similar go in ~/Documents.

The Desktop is my temporary workspace, for active projects.

I have a script that automatically downloads podcasts and Youtube Videos every
evening. These go in either ~/Movies or ~/Music depending on whether they are
audio or video.

\---

Now, I also have a separate mirrored ZFS pool I consider my "Archive". This
drive is meticulously organized to a semi-ridiculous degree I can't fully
describe here, but here's an overview of the top level structure:

• Books: A collection of audiobooks, organized by series.

• Games: Video games, organized by franchise. All either DRM Free, or with
patches included to remove online-activation requirements. Also roms of
console games, for use with flash cards or emulators. I don't separate games
by platform, because if I want to play a specific game, I'll move to the
platform that game is compatible with, and not the other way around.

• Movies: Contains BluRay rips and decrypted iTunes purchases of both movies
and TV shows, organized by franchise and/or season.

• Music: My (sadly small) music collection, all thrown into one folder because
there aren't that many songs. I keep meaning to buy more...

• Personal: This contains my birth certificate, schoolwork, past job
applications, health records, social media profile data exports, photographs,
etc.

• Software: All software I've purchased or written myself, and free programs I
want to remember to use again. Organized by platform (macOS X, Windows, DOS,
etc.) with a separate folder titled "Multi-Platform" for anything compatible
with multiple OS's. This unfortunately means that if I need to retrieve a Mac
program I need to check both the Mac and Multi-Platform folders in order to
find it, but I can't think of a better system.

------
kakarot
Main SSD:

A few partitions each containing critical system images like Windows 7 and a
few Linux OSs, and then all non-critical system images live within /pool. My
home directory is limited to 2GB because no work happens in my hypervisor OS.

Each system image has a home directory which usually contains ~/Projects,
~/Scripts, ~/Documents/notes, ~/Documents/maps.

For literature and reference materials, I use the BISAC[0] system for storage
with a folder for each heading and subheading. I feed these into Calibre which
maintains its own internal library so this doesn't matter much anyway.

Linux user programs are installed in /usr/local/bin which is mounted
separately. Windows user programs are installed in a junctioned folder which
points to a regular HDD to take some load off the SSD, at C:\Users\<User>\Apps
and C:\Users\<User>\Utilities. %APPDATA% and all user libraries are also
junctioned and pointing to an HDD.

I have several drives split into two LVM volume groups, with some logical
volumes taking up multiple drives. These volumes are passed into my VMs, which
see continuous filesystems for each category of data, such as video, music,
games, and documents. That way these filesystems can be extended as needed
without hassle.

[0] [https://bisg.org/page/bisacedition](https://bisg.org/page/bisacedition)

------
hambos22
I use OSX.

Projects: I have a Shared folder on ~ which has bidirectional sync with my
desktop (with Resilio[1]). Inside that folder are my current projects. The old
ones, are on private git repos (the codebase) and on backblaze (full
replicated production project, with rclone[2]). I use Resilio because its
fast, reliable and it supports ignore patters (eg node_modules)

Dotfiles: For syncing my dotfiles, ssh keys and app settings across my
machines I use Mackup[3]. Life saving tool. My macbook has the exact same
settings as my desktop and vice versa. I keep all my settings in a Dropbox
folder and they are symlinked automatically on the machine.

General: I have 3 subfolders on Downloads. Chrome, Attachments and Torrents.
Each one is self explanatory. I like my downloads to be organized, because I
clean them up occasionally. I use Desktop as a temp area, therefore I don't
have permanent files there. All my documents (financial, reports etc) are on
Dropbox organized by year.

[1]
[https://www.resilio.com/individuals/](https://www.resilio.com/individuals/)
[2] [https://rclone.org/](https://rclone.org/) [3]
[https://github.com/lra/mackup](https://github.com/lra/mackup)

------
Kagerjay
\- www -> it's a PHP convention. I put all my repos here and it gets
cluttered. I cache it in a subfolder if it's not in use

\- downloads -> when I am not sure of where things should go. It gets messy
here, I usually cache it in a subfolder by date range if not in use

\- dropbox/pdfs/x -> PDFs of everything

\- dropbox/photos -> organized by YYYY-MM folders. These are the original
files cut-pasted from my phone with original metadata on it. I use
googlephotos

\- dropbox/software -> backups of different software configs

\- dropbox/social -> a few set of images I reuse for portfolios / logos etc

\- dropbox/sharex -> I usually have all my screenshots placed in a specific
folder by default

\------------------------------------------------------------------

I organize work files by department.

\- Operations - Common docs needed across entire company - catalogs, fill-out-
forms, leasing, guidelines, SOPs, etc

\- Management - Accounting, credit references, w9 forms, HR, etc

\- Images - Asset images only, of products /events/ services etc done. These
are organized by major category

\- Vendors - These are PDF/excel/word doc files from vendors, sorted
alphanumerically by vendor name

\- IT -> all IT related files here, backups of databases, data, spreadsheets,
etc

\- Outsource -> When I need to send a dropbox folder worth of contents to a
developer, these are requirement / spec docs

------
beatgammit
I'm on Linux and use primarily command line tools for development, so I often
go the path of least resistance.

I use Go quite a bit, which expects (well, not as much anymore) everything to
be under `GOPATH`. Instead of messing with build scripts setting environment
variables, I just set my GOPATH in one place and use a tool to check out
specific versions of dependencies. It's convenient to set `GOPATH` to be my
home directory, so my code projects (even non-Go projects) live in
`~/src/...`, and documentation lives in each repository.

For personal stuff, I use:

\- Documents - tax returns and other important docs \- Pictures - screenshots
and other mostly-worthless images \- Downloads - anything temporary; gets
cleared out periodically and serves as my "temp" dir \- dot files for
configuration (I don't back these up on a repo or anyone, I manually copy the
5 or so files I need) \- network share - anything large or somewhat important
that only gets accessed occasionally (ISOs, family movies/pictures, etc); rely
on RAID to protect it \- large HDD - games, VMs, and other large data that's
not very important \- a few directories in my home directory

Documents and a few random directories get backed up off site (tarsnap), and
the rest is on code hosting (mix of BitBucket, GitHub, and GitLab).

Things are somewhat orderly, but not really well thought-out. For anything
that the system uses, I put it wherever the system expects it (~/.local, /etc,
etc). I don't worry about it too much, and I try to purge useless crap every
few months (usually aim to delete a few gigs at least, which is usually a few
hundred files).

~~~
synesso
That whole GOPATH thing is the reason I could never stick with Go. I'm curious
to learn how it's less invasive now. Thanks for the heads up.

------
scarface74
The posts have made me realize how little I use an actual computer for day to
day personal use.

My work computer has all of our repos under the \git folder

For repos that I have started it is

\git\\{project} - contains all of the CodeBuild, CodeDeploy, and
CloudFormation related files as well as Word and markdown docs

\git\\{project}\src\\{language} one project can have a combination of
languages and each are built differently

\git\\{project}\sql\ - usually there are some one off scripts that we need to
run related to a project.

As I said above my personal computer doesn’t get used as anything too much
besides as a Plex server and all of my movies and TV shows are stored in the
Plex recommended structure.

Photos - I don’t have that many in the grand scheme of things but they are all
in Google Photos and are automatically tagged and organized by date and
location. I guess I should sync them to my computer to be backed up by
Blackblaze.

Random Notes - in the Notes iOS app organized by subject.

Technical Ebooks in PDF format - Google Drive folder and shared with friends.

Personal documents in PDF format - in iBooks backed up to iCloud.

Resumes and a few other Word docs - in OneDrive.

If either my computer, phone, or iPad got destroyed, I wouldn’t be too
inconvenienced. The most inconvenient part would be waiting for BlackBlaze to
ship a hard drive with all of my media.

------
Mc91
By project

Sometimes I have a file in the project's top level directory explaining what
the subdirectories are.

Or if I have five or six scripts which accrete over time with data going in
one end and coming out the other end, I write a file explaining how I do it,
before my shell history disappears and I forget.

I go with Ubuntu's default Music, Videos and Downloads. The other high-level
directories are a development directory, a work directory, a personal projects
directory, a personal directory, a development scratchpad directory, a things-
to-do directory, and an old accumulated junk directory.

The development directory has some binary packages, git repositories,
development journal notes (not on my blog), as well as some notes on aspects
of languages and frameworks.

The development scratchpad directory has subdirectories by date. Mostly for
code I am writing.

My work directory has all work information.

My personal projects directory has tax info for my S-corp, bank information,
as well as information on personal side business projects and code.

My personal directory has my resume, contact info for friends and family as
well as pictures of them, personal tax info, and this sort of thing.

I also try to name directories, and sometimes files, so I can find them with
locate.

------
johnchristopher
I gave up.

Kinda.

Nowadays I make a folder for everything (even if there is only one file in it)
but not subfolders _ever_.

Movies and TV shows live in ~/Videos, Music in ~/Music, downloads in
~/Downloads and are moved to ~/Download/Archives if binaries or drivers or
computer things that I might need later. ~/Documents is huge but it contains
everything but only folders and it has a ~/Documents/Archives for things not
needed anymore. ~/Documents is ideally for documents not produced by me. Those
produced by live in ~/Dropbox (1 Tb).

I have a ~/Dev with a ~/Dev/Documentation (produced by me), ~/Dev/DocRoot,
~/Dev/tmp (for experiments), ~/Dev/containers, etc.

~/Desktop is empty.

~/Images is for memes I'll never look at again (digital hoarding) and that
wallpaper I have been using for years.

There is a ~/.notmine but it's not mine, don't know what's in there or who put
it there and who manages that content.

On Windows I have %USER%\Desktop\Documents because %USER%\Documents is insane
(every app put things there that aren't mine).

The most important step for me that removed clutter was putting everything in
its own folder.

------
deninho
I organize my projects inside my Documents folder. Specifically, my main
folders are:

~Documents/MSc ~Documents/Projects ~Documents/Documents

the MSc folder goes like that:

~MSc/A/class ----> letter (A, B, or C) is the semester, and then the class
(simplified of course)

inside each class the structure is:

~class1/class_material ----> where is the documents (pdfs, slides etc)
provided by the instructor and scanned notes if any ~class1/Project(s) ---->
where are the projects for the class.

Each project has 2-3 subfolders: ~Project1/src ----> source code (different
approaches for the same project go in here in seperate folders)
~Project1/documents ----> reports, presentations etc, and a txt with
refereneces to papers, books and websites used. ~Project1/Results ----> if i
have to do tests comparing approaches, models etc I keep my results in here In
the root folder of each project I keep the project requirments

My /Projects folder has the same approach

My Documents folder, for now is divided in two folders: ebooks and papers, and
inside those folders are just bunch of files (with proper filenames, though,
so searching is working) \--- My Photos folder goes like that:

~Photos/year/month/event

each "event" folder has the raw files and an "exported" folder where the
processed photos are. If I do panoramas, there is also an extra folder, called
"panoramas": ~event/exported ~event/panoramas \--- my Downloads folder is just
a temp folder, so there is no need to waste time there. \--- My Desktop is
always empty (and icons hidden)

------
mcovey
I have my documents organized by topic, my code repos organized by... well,
each folder is a repo in ~/code.

Stuff like bills and receipts I don't usually download, I just keep copies in
my email archives and purge old ones once a year or so.

I keep everything that's pending review in ~/downloads, even if it's not a
download, because my home folder is a bit cluttered with dotfiles and I like
to keep hidden files visible. I don't use a desktop folder so this is my
equivalent to what many people use their desktops for.

My pictures are generally just in folders with a date and meaningful name like
"2018-11-FL-Vacation".

Music is just all piled into one folder since my car's USB reader can only
read from the top-level folder and I mostly download stuff to listen to in the
car.

By the way, since you mentioned PDFs, a handy tool to use is pdfgrep
([https://pdfgrep.org/](https://pdfgrep.org/)) to do text searches of PDF
documents. I also use the 'locate' command a lot to quickly find files by
filename/directory.

------
lucb1e
I've thought about this a lot because I would like to keep things for a long
time without it getting a mess. Since I started using Linux as my main OS six
years ago, I had the chance to rethink my structure and this one still holds
up through multiple reinstalls and studies/companies:

    
    
        ~/p/$projectname for bigger projects
        ~/p/$language/$projectname because there is usually
            one obvious language to use for a given project
    
        ~/d/$school/$subject_code for current subjects
        ~/d/$school/$year/$subject_code for previous subjects
        ~/d/$company/ documents related to the company, such 
            as a contract, correspondence, or just work
            documents. In most cases I get a company laptop,
            so then this folder is really small.
        ~/d/archive/$year/($school or $company) for old things
    
        ~/d/private/$YYYY-MM-DD-description can be either a
            file (such as 2019-01-01-Microsoft-support-call)
            or a folder (2019-01-Microsoft-support-case)
        ~/d/private/finances/ is one of a few special folders
            that do not use the time-based prefix. Other files
            include a passport-style picture, encrypted copy
            of passport, a folder containing my CV, etc.
    
        ~/Music a few things that are not on Spotify and
            audio book archive (I don't trust Audible to keep
            my library available as mp3 indefinitely).
        ~/Videos similar to Music but for videos
        ~/tmp/rm-me-on-YYYY-MM-DD files/folders which would
            previously clutter my desktop indefinitely, but
            which should survive a reboot (otherwise, /tmp)
        ~/bin/ user applications
        ~/bin/pf/ program files for ~/bin 
    

Unsolved problems:

~/Downloads is a huge mess. I've been thinking of symlinking this to /tmp to
force myself to move out what I want to keep, but did not get around to it, so
I don't know whether it's a good solution.

Programs put files in random places, mostly dot folders in my home directory
such as ~/.gnupg. This causes the following:

~/old-ssd still contains files from my previous SSD, and I'm not sure how to
decide which ones to keep. Every few months, I dig something up from there, so
it's definitely not ready to be thrown away despite having copied the
aforementioned folders.

~~~
drhodes
For people who haven't seen it, ncdu is great for purging cruft, it's an
ncurses app that sorts by size (descending) and helps identify where to focus
cleaning efforts.

------
zanny
/ and ~ are on an SSD raid so I don't put much in there.

/ssd is a 1TB mx500 I got last year that I put video games on. /ms is my
Mechanical Storage disk.

[https://i.imgur.com/yKwuvHk.png](https://i.imgur.com/yKwuvHk.png)

All my bulk data is on the mechanical drive with regular BUP backups to a 3TB
one and syncthing on most of it.

My laptop is setup the same way - / on ssd and /ms is the mechanical data
drive.

Specific to project organization /ms/code is just about a thousand project
directories of git repos and such, and I always setup cmake to build
/ms/code/foo in /ms/build/foo. I maintain a lot of aur packages I keep in
/ms/aur and build to /ms/Data/packages, and my package cache is
/ms/Data/pacman.

I don't like mounting disks under ~ unless the user can actually do the
mounting in their own session (ie with a systemd unit). Since only FUSE can do
that and all my other drives are persistent I mount them at / even though my
user owns the top level directory.

------
byteproducer
During the GTD craze of 2005, I came up with a system that has served me well
over the years. My primary goal is to minimize the amount of time I spend
looking for files.

 __Rule #1: All data must be stored in a single root folder. __As others on
this thread have mentioned, this makes it easy to backup data and move it
around. On Windows, this means I put everything in:

* `c:\data`

File systems are typically treated as hierarchies, so we now have to decide
the most important aspects of data files that can be used to group and
organize them. I believe that __ownership __is of first-order importance. Is
this a file that I personally own, or is it a product for my employer? Is this
a file I want to grant my family access to, or my wife? By separating things
by owner first, it makes it easy to apply sensible permissions to data, apply
organization-specific data retention policies, and copy it around when
relationships change.

* `c:\data\acme-corp` * `c:\data\benjamin`

The next most important aspect is __source of truth __. Is my machine the
primary storage location for this file, or am I keeping it sync with other
machines? This info is critical for setting up automated jobs that safeguard
your data.

* `c:\data\acme-corp\columbia` (the name of my machine) * `c:\data\acme-corp\git`

The final decision to be made is whether the data is "reference" data or
"project" data (this is a GTD concept). An example of reference data would be
your resume -- you want it to always be handy and current. But really, 99% of
my data ends up being project data -- data that's very important to me right
now, but will probably of little importance in six months.

So, my reference data is typically a handful of files single folder, and my
project data is stored in a series of monthly folders.

* `c:\data\acme-corp\columbia\projects\2018\12` * `c:\data\acme-corp\columbia\projects\2019\01` * `c:\data\acme-corp\columbia\reference`

I absolutely love the monthly folders. I create the new monthly folders as a I
need them, and older files silently slip out of my view as time goes on.
Months later, when I'm searching for a file for an older project, I typically
find several related files bunched together, which is hugely helpful. And
organizing data by date makes it simple to adhere to corporate data retention
policies.

Beyond that, I create sub-folders as needed, if there's a lot going on in that
area that month.

* `c:\data\acme-corp\columbia\projects\2019\01\financial` * `c:\data\acme-corp\columbia\projects\2019\01\legal`

------
h1d
Everything important goes to ~/data/ and inside various folders like project/,
so all I need to do for backup script is to sync that folder.

I don't put anything intentionally under Documents/ as various apps try to put
stuff in there to taint the folder layout.

Temporary files downloaded just stay at Downloads/ folder unless I need to
keep it for a long while and I move it under data/.

Random text notes go to Notes app tagged instead of in random text files
scattered which can also embed images.

Also Desktop/ is entirely empty this way. Wallpaper is as clear as it gets.

Also stuff I no longer need access to frequently like finished project goes to
local encrypted folder (macOS specific) which I can open at will with a
password but otherwise stays encrypted as a single file for archival purpose.

I also put all dotfiles in ~/data/ansible/home/ which get symlinked
individually to ~/, so that whenever I launch a new server, most recent
version of dotfiles get deployed to servers as well. (dotfiles are written in
portable way across macOS, Linux and FreeBSD)

~~~
GordonS
This is basically why I do in Windows too - I don't use the Documents, Photos
folders and the like.

I have C:\Data, with subfolders inside for various 'topics', such as a
'Projects', 'Library', 'Cash Flow', 'Home' and 'Misc', as well as a folder for
each family member.

For media and archival, I have 2x 4TB drives in a RAID 1 array. This contains
many thousands of photos, as well as videos and films.

I use Seafile to Sync stuff between machines, with my Seafile server storing
data in Azure blob storage (which is cheaper than Azure disks).

~~~
h1d
For media files like Music, I keep them on Windows desktop which gets synched
to OneDrive 1TB account which came included with MS office subscription which
I need anyway that is only $10/mo for both app and storage which sounds like a
steal against other cloud storages.

~~~
GordonS
Ah yes, I forgot to mention that I use OneDrive for an additional backup of
photos - I have an MS Action Pack subscription, which gives me something like
5TB of storage (I forget exactly how much, but it's a lot!)

------
bryanculver

      - Random scratch files in ~/Desktop/Rug (purged monthly, no backup)
      - All development in ~/Workspace (routinely backed up)
        - Source controlled development in ~/Workspace/Repos/[entity]/[project name] (excluded from backups)
        - All non-SCed files in ~/Workspace/[entity]/[project name]
      - Downloads in ~/Downloads (purged daily of older than two weeks, not backed up)
      - Personal computer has ~/Workspace symlinked from a Dropbox folder: ~/Dropbox/Bryan/Workspace
      - Family photos in ~/Dropbox/Family/Photos/[year]/[month]/[YYYY-MM-DD HH-MM-SS].[format]
        (routinely push-only sync to Amazon Glacier)
    
      * Several cron jobs to help maintain everything
      * Several custom Zsh plugins to make jumping around in shell a breeze
      * Daily bullet journal+markdown style notes auto source controlled in
        ~/Workspace/Repos/Personal/eod/[year]/[month]/[day].md

------
tluyben2
(Slightly offtopic as it doesn't answer the question)

Like more people here, I have really everything in the cloud, so my filesystem
(encrypted linux ext4) is a complete mess. I have a github repository with
scripts that, after entering my decryption password, will restore any
linux/Mac/windows machine to the production machine I need within minutes. So
I just format my drive when it gets annoying.

I get stressed about everything being in the cloud sometimes, but there is so
much that I don't really know how I would back it up in an organized fashion.
Still waiting for an affordable backup service that allows me to download 'the
blob that is my life' from all top 25 services (gmail, google phones, drive,
docs, ms office cloud, github, Dropbox etc). But I have not found something
like that that actually works with the rancid volume I have and the trust I
would need to provide such a service. Ofcourse business documents etc are
backed up (legal requirement), but that is a really tiny % of everything I
have.

------
prasanthmj
I survived more than 3 hard-drive failures/system failures over the years
without losing my data. My system setup helped in the survival so this might
help. I had desktops and laptops that died, crashed or otherwise became
unusable. The data survived. Here is what I do: I have three categories of
files: (1) small, very important files (source codes, scripts, articles,
notes, documents) (2) large but important files (photos & videos, Virtual
Machine images ) (3) unimportant files (downloads, temporary files, screen
captures) 3 main folders are setup for each category. Category 1 is backed up
to (1) a cloud based continuous back up service (crashplan) (2) gitlab as part
of version control (3) local external HDDs daily Category 2 is backed up to
(1) crashplan and (2) local external HDDs Category 3 is never backed up.
Having a copy in local external HDDs helps in quick recovery.

Organising the hard drive keeping a unexpected crash in mind helps in quick
recoveries.

------
SamReidHughes
I have a folder named ~/old_home/old/old_docs/Desktop, if that helps you
understand my system.

I put miscellaneous software, stuff I need to extract and build from source,
random git checkouts, etc., in ~/sw. Stuff I'm working on actively goes
outside that. I have ~/prefix/bin in my PATH, so I can use
--prefix=$HOME/prefix.

------
roboyoshi
I'd like to throw my datacurator-filetree[1] in here, which is aimed at the
datahoarders among us and it's what my system is roughly based on. I welcome
help and contributions :)

[1] [https://github.com/roboyoshi/datacurator-
filetree](https://github.com/roboyoshi/datacurator-filetree)

------
pengo
On Linux here. I have a directory for anything that needs to be backed up.
That contains:

\- Business (plans, invoices, tax receipts etc) \- Documents (general non-
business documents) \- Email (Thunderbird profile folders) \- Projects \-
Client 1 \- code \- docs \- Client 2 \- code \- docs

Keeping code and docs together for each client works for me. Apache and hosts
are set up to point to various web roots under ~/Projects/Clientn/docs with
aliases like [https://client2/](https://client2/). Git likewise.

Outside the "backupable" root directory are the usual folders like Downloads,
Pictures, Videos etc ... I don't care if I lose anything in these locations in
a meltdown.

Things were much more complicated when I ran Windows as a dev environment, but
it's pretty straightforward now.

------
ocdtrekkie
I actually do classify my eBooks with Dewey decimal numbers, but like a
library they also have barcode/reference numbers, and hence are stored by
those. I recently wrote a feature for my home automation system to retrieve
them for me so I can read them when I am not at home. My older actual "library
database" software is from 2010, and doesn't actually interact with the file
storage at all. I'm now working on connecting the two systems a bit.

I have a few main folders Library, Projects, Website, etc. They're mostly
uninteresting, I'm more proud of how I back them up. Everything syncs offsite,
I've got multiple hard drives in multiple sites. The other thing I try to do
is to use a common drive letter between PCs. So my Music folder is at the same
location on any PC, for instance.

------
HaGoijer
I use a system where I've a max of 7 sub directories per directory. In that
way I can quickly navigate to the directory or file I'm looking for.

It is based on the theory that one can process up to 7 items quickly.
(Currently, I've no reference to this).

This implies that when a directory becomes too 'crowded', I add sub
directories for further categorization. E.g. a directory containing an archive
consultancy projects is split based on year of project. The current year is
split up by proposal, ongoing, and archive.

For each project directory, I use standard sub-directories: Analysis, Input,
Data, Report, Visuals, PM (Project Management) The difference between Input
and Data is qualative and quantative data from the client.

Probably room for improvement, but it works quite good. For now a 80/20 trade
off not to invest in a better system.

------
qqn
A very related question: I'm looking for a(n ideally FLOSS) e-reader that
works on both Windows and Android so I can start building and cross-
referencing my e-book/article (EPUB/PDF) library. I'm currently using Calibre
but did play with Xodo before and liked both (Xodo has the nicer interface and
allows for writing on pages with a stylus -- that's awesome).

The killer feature I need is saving any highlighting/bookmarking right into
the file (eg: a particular quote or diagram). If I can extrapolate these
highlights along with page numbers and citations (APA format would be ideal)
that would be even better. If there is some citation software out there that
does this, that's fine too... though I do have EndNote but don't see these
archival options available on it just yet.

Any solutions out there?

~~~
ocdtrekkie
Joyread has been build with annotations support built in. It's web-based, so
platform independent.

------
aasasd
For PDFs, references and notes I highly recommend using an app that can assign
tags―several for an item, of course. Preferably, tags themselves should be
organizeable at least in a hierarchy.

You won't create a good collection of tags right away, but you'll grow and
groom it over time. It's important to assign tags to new items as soon as they
come in. Gradually, you'll learn what words you actually use when you're
looking for something, and those will become your tags.

I can't recommend a specific app right now: I happily used one that begins
with 'E' but alas it went to shit.

Also not sure about the merit of any software for tagging files. I know that
some say good things about TheBrain as evolution of the mind maps idea, and
that it apparently can link files in its data, so you could try that.

~~~
jamesholden
I know it's kinda pricey, and not everyone can afford it. But if you can,
Evernote is actually pretty great for PDFs and tags, etc.

I didn't 'get' it for the longest time. But I moved from one country to
another, and I didn't want to bring all my paperwork around with me. So I
bought a scanner which can scan duplex (both sides), and a red stamp which
says 'Scanned'. I digitized everything except super important things like
(birth cert, etc). Tagged it, and it sits in Evernote. I've been in many
situations where I am at a business or company, and someone asks for X
document, and expect I have to leave to get it, but I can whip it up on my
phone and mail it to them if needed.

I scan my bills, and the payment receipts, etc. I keep copies of paystubs,
etc.

When I start projects I make a new folder under my existing 'Projects'
notebook, and I can put everything related to it in there.

With premium, it also scans through the PDFs and can help you find things when
you need them. Again, I know not everyone can afford it. Just pointing out
that, if you are in a position where you can, and you could use this kind of
functionality, I find it super helpful.

Last tip, use the 'Scannable' app (iOS at least). You can scan documents (very
well, surprisingly!!) on the go. For example, once I got roped into signing a
new contract for a phone plan. I didn't want to carry all the paperwork around
all day, so at lunch I used scannable to send it all directly to my Evernote,
and shredded the originals.

Not affiliated either, just a fan who likes the software.

~~~
aasasd
Yeah, the problem is, basic functionality like text editing and even just
scrolling keeps getting worse, slower and more broken with each version, at
least on Mac. Display of web-clipped pages and images becomes buggy. The
desktop app somehow gets bugs in its _window switching_ behavior. The Android
app is slow and heavy like a glacier, can't save data on an SD card, fills
_all_ internal storage to the last byte if there are too many notes to sync
(incapacitating the phone), and needs lots of memory to edit simple text
notes.

Meanwhile the developers are fiddling with the interface to keep up with
MacOS, and the company is adding more useless front line layers to the support
to shield itself from the customers. And this all has been going on for years.

So, been there. The price is not the problem.

------
TrueDuality
I've largely stopped using local storage, but I suppose the question isn't
limited to that.

~/documentation - Git directory containing various personal & project notes,
running unedited public documentation, and general ideas dump directory (there
is a bit of structure but it's fairly free form)

~/workspace/{language}/{project} - I have active projects in several
languages, some I group in large categories such as "linux" or "sites" when I
feel they're more specific. These are all version controlled, mostly in Git
repos.

~/remote/{media,backups,archived_projects,data_sets,unsorted} - On-demand NFS
mount. Is the destination for automatic backups, where I archive old projects,
and miscellaneous files I want to share between machines

------
glitchc
\- A folder called Repos on a data drive, not attached to the OS drive

\- Each folder in Repos holds a repository for different types of work:

\- Personal holds important documents, CVs, clearances

\- Sensitive docs are passwd encrypted before push

\- Thesis work in its own repo, now dormant

\- Business in its own repo(s). Folders for individual contracts and personal
dev work.

\- Data folder to hold experimental data

\- Music folder to hold CD rips and audiobooks

\- Keys folder for repo keys

\- Photos on dedicated external drive

\- Desktop and Downloads contain important files, but limited to about 30 max
(pending final destination)

\- A Backups folder that holds old files from pre-repo days. Most are junk.

\- Games folder for all games, Steam, etc. on dedicated drive labelled
Scratch.

\- Saved games end up wherever the games themselves store them, but I don’t
care if I lose them.

\- Documents folder holds temp files and junk from other family members. If
indicated as important, moved to Personal repo.

------
SeaDude
Ubuntu 18.04

ASUS ROG G750JZ lappie

2x-256GB SSD RAID 0

LUKS FDE using LVM \- /boot/efi: 512M \- /boot: 488M \- /: 460G \- /SWAP: 15G

1x-1TB HDD

RAID:

    
    
      /home almost exclusively .folders.
    
      /home/documents/<everything is a project>
    
      Every <project> is a private git repo
    
      /home/documents is my only VS Code Workspace
    
      Everything is markdown with yaml frontmatter.
    
      Everything possible is a snippet.
    
      All screenshots are pasted into an .md file. The VS Code extension places each at /project/assets. 
    
      All photos and videos are taken and stored on phones. 
    

Backed up to external drives every 6 months or so.

    
    
      /home/Desktop is empty, /home/Downloads gets emptied often
    

HDD: unused

------
roryrjb
I use the out of the box defaults on my Ubuntu desktop. Documents, Videos,
Music, etc... with my code going into ~/Projects. I have random binaries and
shell scripts I use in ~/.bin. I do like to keep a tidy and organised hard
drive and have shell scripts for various related tasks to this. Also I have
heavily used cloud storage in the past, but I don't like this now, as in I'm
now uncomfortable with this. I recently got a 1TB SSD and with my previous
hard drive upgrades in the past I have several HDD/SSD's lying around that I
back up to regularly. I have a Makefile in $HOME to do this that calls some
shell scripts that use rsync underneath.

------
Moyamo
\- ~/docsync: Files I edit on a daily basis and is synchronized with Syncthing
to all my devices. I put all projects I'm currently working on in the top-
level of this folder except for the categories below. Archived projects are
zipped and then put in ~/docsync/old

Categories:

\- ~/docsync/accounts: Accounting stuff

\- ~/docsync/audiobooks

\- ~/docsync/books: All my PDF books

\- ~/docsync/dotfiles: git controlled dotfiles.

\- ~/docsync/Pictures

\- ~/docsync/Music: Lossy compressed music.

Other folders in home directory

\- ~/hq-media: Mostly FLAC audio

\- ~/git: Clones of other people's git repos

\- ~/srv: File shares other than docsync.

\- ~/Mail: offline copies of email

\- ~/tmp: temporary stuff I'll probably don't want to keep.

\- ~/Downloads: Random stuff I've downloaded

------
rmk2
_~ /Downloads/source/<version control system>/<project>_ for checked out
sources of tools etc.

 _~ /Downloads/programs_ for OS images, large binary blobs etc.

 _~ /Development/<technology>/<project name>_ for development projects

 _~ /Documents/<project name/company name>_ for documents relating to specific
projects or customers

 _~ /Operations/<server>_ for various files related to servers and
infrastructure (manual backups etc.)

 _/ dev/shm_ as a dumping ground for temporary files that I would like to get
rid of with a reboot

------
Insanity
As I grow older, I find I have less and less 'random' stuff on my machine.

I have a two main folders:

/Development/Code/{language}

/Development/Tool/{tool}

Where the tool can be IntelliJ / vim or tmux config and other programming
related files.

Apart from those, downloads do land in /Downloads and I keep that more or less
clean.

/Documents holds docs.. most of this is text files for a Spanish course I am
taking.

My projects fit under a language in /Development/Code/{language}/{project} so
if I need any documents for the project I will make a subdir in the project
folder, to keep the files close to the code.

------
marak830
C: windows, often used software (fastest SSD) d: personal storage organised by
type(folder), e: client files organised by client/project (future
modifications get a new project folder), reference files have their own folder
inside the client/project they are associated with.

More generic references go onto my personal drive.

I have it this way due to losing a ton of old work when I lost a hd, since
then client files on their own drove that I backup online regularly. If I lose
my personal/games drive it's no big deal to re download.

------
wordpressdev
My go to folders that are usually backed up.

/downloads - for all downloads under respective sub-folders like /media,
/books, /software etc

/projects - personal projects

/freelance - for the freelance / consulting work with a sub-folder for each
client

/business - accounts, taxes and stuff

/my-name - personal stuff including scanned documents, pictures etc

/archive - random stuff

I currently have lots of files on the Desktop which requires sorting out. Most
of these are either text files with notes and ideas and some PDF. I am
planning to move them into a system like Notion.so

------
dpacmittal
I have my home directory on a separate partition so I don't have to lose all
my files when I reinstall my OS. My downloads go to ~/Downloads. I move files
from here regularly to more appropriate places.

All my projects go in ~/projects which maybe be further classified as android,
web etc.

I have custom bash/python scripts in ~/scripts

All my personal photos and videos go in a separate partition, classified into
year and event.

Most of my important files and documents are on Dropbox and Google drive.

I use rclone with backblaze for archival purposes.

------
yoavm
The single best thing I've done to keep my home folder organized is to empty
my downloaded files regularly. I have a systemd timer that removes everything
from ~/Downloads once a day, as well as all ~/Pictures/Screenshot* . 99% of
the things we download we don't really need, and it's a great habit to move
things you _do_ want to keep because then you have to say where is the right
place for them.

Also, for ~/Music - I use Beets (beets.io) and it saves me so much time.

------
dudeofx
\- [smb]/archives/hardware/<devicename>/* system tools and software specific
for a device I own

\- [smb]/mediadepot/audio/* music and audio podcasts

\- [smb]/mediadepot/literature/* ebooks and pdfs

\- [smb]/mediadepot/pictures/* pictures

\- [smb]/mediadepot/software/<platform>/* software archives

\- [smb]/mediadepot/videos/* videos

\- [smb]/personalstudy/* personal junk of all kinds

\- [smb]/projects/* software development stuff

\- [smb]/temp/* global temp directory

\- [smb]/ps2/* PS2 games

~~~
lucb1e
How do you handle downloads, just ctrl+A->Delete the folder regularly? Where
do you put school or company data (material for subjects, or a contract or
something)?

------
qwerty456127
All the code is in the ~/Projects/subfolders. Everything else is in
~/Downloads. Every once in a while the whole ~/Downloads content gets moved to
~/Downloads/old/001, 002, ... etc (thousands already), once the space runs out
I move these to an external hard drive. I actually dream of something like
what WinFS was supposed to be where there would be no folders/locations but
only meaningful metadata you can find files by.

------
franciscop
For my coding projects, many start as a mockup/jsfiddle first. Then I got a
~/projects folder where all maker projects go when they get slightly more
serious.

My "random stuff" folder is mostly ~/Downloads, with up to 5 files also in my
~/ folder. I regularly clean those and either put those files in a more
stablished folder or delete them.

The other mess I got is ~/Pictures, I keep having to revisit and clean them
but I don't even know how to start.

------
callahanrts
\- ~/Desktop/ Contains mostly screenshots. I use `defaults write
com.apple.finder CreateDesktop false` to hide all the icons

\- ~/Documents/ is where stuff goes before it gets organized

\- ~/Documents/<topic>/ is where things go when there are enough of them to
form a group

\- ~/Documents/projects/<project-name>/ is where I clone projects from github
or create my own. Occasionally I clear out projects I haven't touched in a
while.

------
m-p-3
I usually go with this structure

    
    
      -Documentation  
      -Installers  
      --Drivers  
      --Games  
      --Operating Systems  
      -Media  
      --TV Shows  
      ---Show Name  
      ----Season  
      --Movies  
      --Music  
      ---Artist  
      ----Album  
      --Pictures  
      ---Year  
      ----Month  
      -Downloads (keep files there for 30 days max, then categorize or delete)
    

The whole thing is synced and versionned with Syncthing across several nodes.

------
weitzj
\- Using Gopath for all coding stuff, I.e I have a src/github
.com/MYUSername/Project path as well as any other checkouts from different
projects on Github or elsewhere.

Then there is a /scratch directory to dump any data, which I might need for
temporary processing, but which should survive restarts

A Documents directory with Ebooks

A desktop with temporary files (mostly screenshots) and the obligatory nested
folders like “old/old01”

------
zaphar
* ~/dotfiles has all my dotfiles version controlled with a shell script to set it all up

* ~/sandbox/ has various experiments and stuff that I'm not sure has a lifespan.

* ~/lib/<language_name> has most of my more serious projects. since I often need to add that to some sort of path variable.

* ~/DropBox/ has most of my essay writing and non code artifacts organized somewhat randomly if I'm honest.

~~~
zaphar
I do run a custom full text indexer on it all so I can search it. Which helps
me find stuff when I need it.

------
TazeTSchnitzel
~/Projects/<year>/<name>

The year is the year I created the project directory (used over multiple
years), so kind of arbitrary, but it's a useful rough guide. Started using
this system in ~2010 or so and never looked back.

I do have some miscellaneous other stuff (guess what ~/Music, ~/Diary contain)
but that's mostly it. I make heavy use of ISO-8601 YYYY-MM-DD dates in
filenames.

------
JasuM
\- Random stuff all over ~/

\- User-specific bin folder ~/LocalApps (with lots of scripts)

\- Projects etc. in a GoCryptFS-encrypted directory synced with Syncthing with
NAS (with NFS+Kerberos on my desktop rather than Syncthing). Vendor-
directories (/vendor/, /node_modules/) are not encrypted as not to slow down
development, they are bind-mounted to a cleartext directory.

\- PDFs, MP3s, etc. in Dropbox

------
noir_lord
~/.build (random stuff I've had to build)

~/projects/personal/ (any of my stuff)

~/projects/<orgname>/<projectname>/ (work stuff)

~/Dropbox <obvious>

~/Scratch <workbench for random stuff I don't care about backing up>

~/Journal <vscode journal plugin>

~/Applications <for stuff like yEd/WireframeSketcher that doesn't play nice
with linux file systems>

That's about it really.

~~~
lucb1e
What is the vscode journal plugin?

Dropbox is also not really obvious. It's obviously a reference to Dropbox Inc,
and I assume you don't work there so it must be a synchronised folder, but I
can't smell what's in there from this distance.

~~~
noir_lord
[https://marketplace.visualstudio.com/items?itemName=pajoma.v...](https://marketplace.visualstudio.com/items?itemName=pajoma.vscode-
journal)

And the related view plugin, excellent easy to use journaling with automatic
naming by day and other stuff.

It works mid because you can learn all of it in ten minutes and if you are
already a vscode user you’d have it open anyway.

------
mrhappyunhappy
Client work by folder name in Dropbox. Personal stuff mostly in documents but
a bunch of stuff on desktop or desktop/old

Mix of important and unimportant things I may delete when I find free time in
/downloads (usually when I run out of space)

Dropbox is my storage solution for personal and work. I may go NAS sometime
but been too lazy to switch. Oh, also have an external drive to hold photos.

------
kennu
For a long time I’ve kept everything important in project folders under
~/Projects. Each folder is a Git repository also stored in Bitbucket. I clone
these on all the computers I work with.

There are some exceptions like photos, videos and music which don’t fit Git
well so I keep them in their own places and backup manually. Luckily macOS
provides default locations.

------
mayneack
~/Downloads symlinked into ~/Dropbox, used for everything ephemeral.

~/Documents symlinked into ~/Dropbox has documents I actually need to keep
track of. There's not really that many.

~/Dropbox/Media/{Videos,Music,Books} sort of self explanatory

~/Pictures symlinked to ~/Dropbox/Photos

~/code has all the stuff I work on

~/source has stuff I don't edit/control

------
DanielBMarkham
Hard drive: nothing established yet. File system: since I use file names to
browse for stuff I've saved, and since the most common thing I can remember is
when I created them, I name beginning with datestamp, then title, then people
affected. Projects: this is a much more interesting question than can be
addressed here.

------
osrec
One download folder, one temp folder, one repos folder, one apps folder.
Everything I care about is a git repo in the repos folder, replicated in 2
other locations. Everything else, I don't mind losing (temp and download are
pretty transient anyway and apps can always be downloaded again).

------
ianai
By file type at first (Ie music, documents, professional development, books,
etc). For finances, I aggregate by year - 2016 Finances, 2017 Finances, etc.

Others have mentioned a process system so Parsing, Not Parsing, Long Term Not
Parsing (nas). I think I’m going to adopt that into my workflow as well.

------
wingerlang
I keep quite literally everything in my Dropbox folder.

I use Hazel to automatically clean my desktop by moving progressively older
files into Downloads -> Clean up. The clean up folder is also in my Dock, so
that I can move one or two item into the trash easily whenever something shows
up there.

------
csmeder
I take the same approach a forest takes: optimizing for regular “forest fires”
to clear out the old.

I start with the year: Eg. 2018

Then I break it into

\- Projects

\- photos

\- personal

\- etc...

Then each year I start a new folder Eg. 2019.

I only bring in Projects I’m still working on.

This method is not optomized for searching, but rather for destruction of what
is no longer needed. I find this the best thing to optimize for.

------
egypturnash
I am mostly an artist. I do both standalone images and large projects. This is
what I've settled on over the years:

 _~ /Documents/gfx/working/_ holds pretty much everything.

 _~ /Documents/gfx/working/ . this year._ alias of the appropriate yearly
folder, named to sort first in the Finder

 _~ /Documents/gfx/working/ big project 1_

 _~ /Documents/gfx/working/ big project 2_

 _~ /Documents/gfx/working/ big project 3_ aliases to big projects, space-
prefixed to sure ahead of the yearly folders

 _~ /Documents/gfx/working/2019/_

 _~ /Documents/gfx/working/2018/_

 _~ /Documents/gfx/working/2017/_

...

 _~ /Documents/gfx/working/1999/2000/_ Yearly directories. Big project folders
live inside the appropriate year.

 _~ /Documents/gfx/working/old big project 1_

 _~ /Documents/gfx/working/old big project 2_

 _~ /Documents/gfx/working/old big project 3_ aliases to big projects I don't
want to keep at the top of the list

There's some really old stuff a level up in _~ /Documents/gfx/_ but it's a
remnant of a time when I had different ideas about organization.

I keep _~ /Documents/gfx/working/_ in the Finder's favorites sidebar, along
with the _. this year ._ alias and the aliases for 3-4 current projects. Makes
it easy to get to them them through both the Finder and file dialogs.

Big projects have their own file structures within their directories. Usually
it's a bunch of Illustrator source files with Finder tags to tell me what's
been finished and/or posted to Patreon, and subdirectories for things like web
renders, reference files, book production, ads for the project, etc.

General reference/inspiration stuff either ends up in a directory outside of
this - maybe in _~ /Documents/ebooks/_, maybe in something like _~
/Pictures/reference/_ or _~ /Pictures/random inspirational/_, there's no solid
system. Reference stuff can also go in Evernote depending on how I figure I'll
want it.

------
echelon
Any opinions on partitioning? Or dual booting Linux and Windows?

I've been a Linux user for eons, but recently got Windows to dual boot for
video editing. I'm not quite sure where to put the partition, what FS to use
to share files between the two, etc.

~~~
johnchristopher
Use GPT. No more 4 partitions limit and extended partition fiddling when
risizing or moving stuff (that means UEFI for booting, if your computer is old
you might have to spend some time in the BIOS to set things up).

You can resize live from windows (since version 7 I believe).

I'd use an NTFS partition to share files (because fat32 don't have enough
prevention loss measure to my taste). NTFS partition access requires much CPU
cycles though.

[https://imgur.com/a/QnyCdc3](https://imgur.com/a/QnyCdc3)

I don't remember why I still divide /root and /home. Must be a habit.

------
amelius
Does anyone use a good indexer on Linux? I removed mlocate from my system
because it always eats up CPU cycles when I least want it to. Also, the index
is always out of date. And it doesn't index the contents of e.g. PDF files.

~~~
michaericalribo
Recoll is useful, though kind of arcane to use...but it has the upshot of
indexing even PDFs

------
verylittlemeat
I use tabbles on windows

I can organize, tag, annotate any file and then use the powerful search when I
need it.

It has useful plugins and is easy to batch tag things.

I don't even bother organizing files or folders anymore I just dump them all
in one place and then use tabbles.

------
galfarragem
'Every document belongs to a project':

[https://github.com/galfarragem/hamster-
system](https://github.com/galfarragem/hamster-system)

------
nikivi
[https://wiki.nikitavoloboev.xyz/unix/my-file-
system](https://wiki.nikitavoloboev.xyz/unix/my-file-system)

------
dabockster
Random stuff on my Desktop

Random stuff in Downloads

Large files on the 1 TB Seagate drive

Frequently used files on the SSD

Everything else gets dumped on the NAS drive

And symlinks everywhere (for when programs don't let me specify data storage
locations)

------
mark_l_watson
In my home directory I use ALL CAP directory names for stuff I don’t backup
like GITHUB for repos, TENSORFLOW for library source code and examples.

Lowercase for things that I backup

------
happppy
C:/ Here goes all my installed softwares

D:/

\- Movies

\- Programming projects //my personal projects

\- softwares //all softwares setups

\- Documents //all of my books

------
shatu29
I just have three directories in my Documents directory:

1\. code 2\. files 3\. garbage

Any important files that I may need in future lives on OneDrive.

------
nexxer
c:\install for downloads, once in a while cleaned out apart from directories
that I want to preserve. Browsers download there by default.

c:\work for work-related things, subfolder for each project.

Listary (and other app launchers previously) have made it easier to jump
around without caring where a folder is.

------
sam0x17
~/Desktop/workspace is always a folder containing all my git repositories.
That's it.

------
mrhappyunhappy
Don’t even ask about how we organize our favorites, that’s probably a
nightmare for many people.

------
fatboy93
Everything gets classified into a bunch of related folders and symlinked if
needed.

Other than that a Readme file

------
codeful
i often work with some kinf of text files. i tried to simulate my workspace.
Folders became like real world objects. Desk, incoming post box, archive,
whiteborad and so forth. Then there is a temp folder.

------
_mrmnmly
besides standard folders that are delivered with the OS, I tend to create
folder `/projects` with my personal side-gigs and `/work` with commercial
projects for other people. nothing fancy.

------
tezza
projects in subdirectories of

    
    
      c:/work  for Windows
      /work    for Unixen
    

Unfortunately user directories are too much complication to seek too all the
time

------
isostatic
I just use “locate” to find files. Don’t care where they are.

------
webyacusa
I keep my porn in a folder called: Definitely not porn.

------
rawoke083600
Its "Desktop-Placing" all the way down....

------
joshmn

      New Folder With Items

------
otabdeveloper2
The twist: I don't. Lol.

------
nickjj
The root of my drive:

├── apps

├── books

├── business

├── courses

├── downloads

├── games

├── media

├── music

├── notes

├── podcasts

├── research

├── src

├── tmp

├── tweets

├── twitch

└── youtube

Source code specifically (the contents of the src/ folder above):

├── ansible

├── contracts

├── courses

├── github

├── legacy

├── scripts

├── sites

└── tmp

------
xte
On physical side:

\- two SSDs for the OS and part of the /home data in mirror

\- two HDDs without raid for rest of my data

On logical side: mdadm+LUKS+lvm+nilfs2 for most of volume, /boot in ext4

On home taxonomy:

\- a "document" tree, mostly pdfs and org files about taxes, invoices, scanned
tickets, home/car/* documents etc in there I also have my maildir mounted from
a separate LV volume, and few dirs are "live" few are "archives". I have few
scripts that check for age and add "to be deleted/reviewed" older files in
org-agenda but are only a awful spaghetti code collection that cover only few
cases... Mostly guarantees period for stuff I buy, expire period for some tax-
related docs etc...

\- a "knowledge base / library" tree with mostly org and pdfs files + few
images/video/audio it's a mix between a personal wiki in org and a pdf-
libraries plus extras and few still-to-be-migrated leftovers (ZIM Wiki used in
the past and others)

\- a "work" tree composed mostly of text files with very few binaries, it
include a small fossil (VCS) wiki and few stuff are bind-mounted in personal
"KB/KL"

\- a "miscellaneous" tree composed of all that's not documents nor book nor
work stuff

\- a "multimedia" tree composed on personal videos/photos and few movies

\- a "temporary" tree for anything that need to be categorized, that do not
last longer etc. All files inside are "monitored" with a simple find+ls
script, file older than a year are reported weekly on my org-agenda with a
proper dired link and are mostly leftovers I periodically delete.

\- an "environment" tree contains my configs mostly inside org mode, other
simply "drop in" like firefox profiles, other still to be org-ifyed or nix-
ifyed via homeManager... Relevant configs are bind-mount to proper dotdirs in
home via global hwconfig.nix (NixOS).

\- a standalone "Desktop" dir, empty since few X apps keep creating it...
About freedesktop dirs my download dir is ram-mounted in /tmp/download since
anything I download and not refile somewhere is garbage.

As "todo when I have time and desire" I plan to:

\- completely org-ify my configs, NixOS included so I can deploy my new
desktop directly via Emacs, or to be more precise a stripped-down emacs with
only relevant configs booted from a NixOS custom live image. Actually I'm
quiet ready only for my mail setup (my_mails.org witch contains notmuch,
mbsync, IMAPFilter and afew configs etc tangled in their relevant places) and
a custom NixOS iso with add Emacs but not run it at login...

\- use afew to completely replace IMAPFilter and add to afew tagging some
"mail-management" query to help keep my maildir clean (like "all mail from
$biped that are not flagged or have other extra tags except attachments and
have more than two year" => mark for garbage collection)

\- extend and generalize in a single script my actual awful collection of
auto-doc-refilers (script that are executed by notmuch post-new hooks to
automatically collect and refile regular phone&c bills to docs taxonomy, add
agenda's todos for electricity bills that are NOT (sgrunt) attached as pdfs
but force me to log in to EDF portals to download them manually just to have a
proof I received them... etc).

\- consolidate and cleanup a bit with some kind of periodicity/strategy
instead of "when I feel in the mood of cleanup following an incoherent agenda
reminders about old files...

------
King-Aaron
Chronologically.

------
PurpleRamen
Everything is under $HOME/Data divided in categories:

    
    
      - Apps -> executable binary software 
      - Backup
      - Code -> sourcecode of software 
      - Config -> dotfiles and stuff which goes to $HOME/.config or .local
      - Documents -> PDF, Epub, etc. Everything which is mostly readonly
      - Notes -> Plaintext-documents which are for read/write
      - Pictures
      - Projects -> Active Projects
      - Software -> Setup-Files for binary software, roms, etc.
      - Text -> Plaintext-data like logs, traces, etc. Usually readonly and generated from Software
      - Vault -> Binary App-Specific Data. Some readonly, some read/write
      - Video
      - VirtualEnv -> Python-Environments
      - VM -> Other Environments
    

Every categoryfolder has subfolders which contain projects/product/app-
specific data. In case of App for example each folder is one app. In case of
Code each folder is a repository. In case of Config each folder is for one
specific app, with exception of misc which contains single config-files.
Projects cotains folders with mixed data, each related to a specific
shortliving task or project. Long living data go to other categoryfolders.
Readonly means I don't change those data by myself, while read/write means I
work with them regulary.

Overall everything quite simple. But reality is more complicate. $HOME/Data is
the store and used as base for a script which will generate several link in my
home-dir. This is done with #Tags in the foldername, or some predefinend
rules, or by using a list of predefinend targets from a file (mostly used for
Config-Entrys).

Main targets are:

    
    
      - $HOME/Archive -> Subfolders with #Done
      - $HOME/Playground -> Projects without a tag which are a git-repo
      - $HOME/Tasks -> All other Projects or subfolders with #Task
      - $HOME/Workspace -> Subfolders with #Workspace (usually from Data/Code or Data/Config)
    

I have then functions in my Editor and shell to access them comfortable and
can avoid crappy projects-addons.

BUT, this is not the whole of it. $HOME/Data itself is also just a linkfarm. I
don't have just one hard drive, but several drives and multiple devices from
which use them. $HOME/Data is just the merge from the available drives on each
device. Drives are mostly Dropbox, multiple NAS, Localdrive and external
Drive. The simple reason for this setup is that I have some data I sync
between devices, some other data are exclusive for specific locations (work)
and I'm legally obligated to not mix them with personal data. Some other data
are just to big to sync and I want them on a centralized system, and because
there are so many of them I have multiple of them, and sometimes also
workplaces with some NAS.

So, how I use this is, I mount drives somewhere, usually /mnt, and link them
to $HOME/HUB. My script then iterates through them, and updates $HOME/Data.
Hierachy is HUB/$DRIVE/$NAME/$CATEGORY. $CATEGORY are the topfolders from
$HOME/Data (App, Code, Config...). $NAME is another special that I use to
divide data even per drive. Normally I use it to separate personal workplace-
related data which I'm allowed to mix with other data, like my own scripts or
configs, or just some SFW wallpapers. but also old Projects where I could keep
the sourcecode or other data. My script then collects the folders under
$CATEGORY, generates $HOME/Data/$CATEGORY if it not exists, and links the
folder there. If there are multiple folders with the same name it adds also
$NAME to the linkname, so nothing gets forgotten.

I developed this in the last 10-15 years, and over the years it evolved in
some way or another. Biggest pain is to create new, rename or move existing
folders, because I in this case I can't work on the link. For this I use
scripts which in 99% works painless. Additionally I have some more scripts
which move files from certain locations (mainly download-folder) to specific
targets. Works fine for regulary files with structures names, not so much for
random stuff.

------
suncin
I use GNU/Linux and use the default layout.

~/Downloads <\- Everything I download, torrents seeding

~/Downloads/old <\- Entropy is here

~/Desktop <\- Empty I don't like to keep files here

~/Documents <\- Personal documents, my university stuff is grouped by
year/subject

~/Documents/Library <\- Here are all my e-books keep in perfect order, most of
this later

~/Dropbox <\- Cloud sync, mostly files shared with others mates

~/Pictures <\- Photographs group by month and year, or event name

~/Pictures/memes <\- Internet memes

~/Pictures/Inkscape <\- Vector images i created, mostly from tutorials
followed

~/Pictures/Blender <\- 3D projects, I just learning

~/Music <\- All my music keep in perfect order, most of this later

~/tools <\- Some programs downloaded and not installed globally

~/Videos <\- Unsorted videos, my own screencast, offline YouTube videos

~/Videos/Anime <\- Anime series keep in perfect order, most of this later

~/Videos/Movies <\- Movies keep in perfect order, most of this later

~/Videos/Series <\- TV series keep in perfect order, most of this later

~/Videos/Tutorials <\- Tutorials I purchased for offline consume

~/Workspaces <\- All my coding projects

~/Workspaces/github/<project name> <\- My personal and other open source code

~/Workspaces/<company name>/<project name> <\- Work and Freelance projects

For keep in order:

\- Music: I use
[https://picard.musicbrainz.org/](https://picard.musicbrainz.org/) if the
metadata isn't yet available then I left in downloads folder

\- e-books: I use [https://calibre-ebook.com/](https://calibre-ebook.com/)

\- Videos: I use
[https://www.tinymediamanager.org/](https://www.tinymediamanager.org/)

\- Projects: All my projects are GIT repositories

\- Encrypted stuff: Plasma vault for folders and
[https://www.veracrypt.fr/en/Downloads.html](https://www.veracrypt.fr/en/Downloads.html)
for disk

Sync folders between devices: rsync

Navigate between directories in terminal: ranger, z, oh-my-zsh, byobu

Compress files: tar and lrzip

------
c22
My home directory is a shared drive with:

~/Backup/... Just random things I needed to backup from somewhere else, stuff
like my wifi router config files ends up here, or images of my phones

~/Code/<project name>/... This is mostly source code I wrote organized by
project

~/Docs/<category>/... These are documents (mostly PDFs) organized by category,
e.g. "History", "Manuals", "Datasheets", etc... Some documents are further
grouped inside these

~/MyDocs/... These are documents I've generated myself, this is pretty flat,
the only further organization inside is taxes/<year>/...

~/Images/... ~/Images/backgrounds/... These are mostly images I've found
online, images that would make good backgrounds are copied into backgrounds.
Some of my machines pick desktop backgrounds automatically from there

~/Movies/<movie name>/ These are movies made by other people

~/Music/<artist>/<maybe album>/... Music made by other people

~/Photos/<device_YYYY-MM-DDn>/... These are photos I've taken, organized by
device and date

~/Temp/... Temporary files, theoretically this gets emptied out, realistically
I haven't run out of space yet

~/Videos/... ~/Videos/<device>/<YYYYMMDD>... ~/Videos/<project>/... Parts of
various video projects I've worked on. Source material organized by device and
date, bits for specific projects organized thus

~/VMs/... Images and state for various virtual machines

The home directory has a few other subfolders dedicated to important or
ongoing projects, for instance each of my kids has a folder, as does the house
I'm designing. The home directory also accrues a good amount of other random
files, often prefixed with some useful grouping id and an underscore. I try to
gather these up or delete them from time to time when it starts to feel
cluttered. A few files are mainstays. I also have a few dotfolders for things
I want to configure the same on different machines.

On my individual machines I usually link ~/Downloads and ~/Share to local
storage. My general rule is to always copy files from Downloads, leaving the
original file intact. Thus the Downloads directory acts as a historical
archive of everything I've ever downloaded on a machine. The Share folder
contains copies of files I'd like to share with the world. I use this folder
when configuring p2p filesharing services.

I let the OS manage the rest of the hard drive however it sees fit. If I'm
using a system that allows me to put files on the desktop I try to refrain
from doing so, but occasionally I'll use the desktop as a temporary space.

------
technovader
Google Drive

\- Documents

\- Photos

\- Games

\- Media

------
kstenerud
On my Nas:

Backups

Games

Incoming

Media

\- audio

\- books

\- photo

\- video

Projects

Software

Unsorted

