My computer root file system adheres the Filesystem Hierarchy Standard. But my home directory is a mess. Thus I try design something like pfhs (Personal Filesystem Hierarchy Standard) to organize my files.
bin: executable.
etc: dotfiles
img: disk images, including:
iso
vm
ova
vdi
vhd
vagrant
docker
VM: Virtual machines
opt: softwares (like bin
, but not single executable)
src: source files, including:
repo
git
hg
darcs
svn
bzr
cvs
tar: tarballs, zips, etc.
code: single files.
repo: repositories
sources: I am the owner
contrib: I have push access
forks
gists
private: unpublished, internal usage, without sensitive data
secrete: with personal data
font
pkg: Binary software distribution/installers.
game: like pkg, but limited to games
ref: references, including:
dict: dictionaries
api: api doc
tmp: temporary files, no backup needed.
var: temporary files to process, backup needed.
bkp:
bup
attic
borg
log: chat logs
mail: mails
book: epub, mobi, pdf, djvu, etc.
image:
sample
icon
wallpaper
photo:
jpg
tiff
raw: DNG, X3F, etc
audio:
voice
music
video:
sample
talk
event
movie