Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

How do you organize your disk for your projects?

I find that I spend a lot of time looking for files, which adds extra overhead to my work.

I keep trying to implement organization schemes, but they end up being too complex or inconsistent, and so I typically end up putting stuff in ~/temp and working from there.

My work is eclectic:

  • I have projects for school, research, and fun
  • I code in various languages (scala, java, matlab, ruby, python, javascript/html, latex)
  • I use various build methods (make, sbt)
  • I use a combination of svn, mozy, and dropbox for backups
  • I have large data files (on the order of gigabytes) from different sources in different formats that have different levels of processing (and so do not all need to be backed up). Also, where do the processing scripts for the data go?

I would like a relatively flat organization scheme that allows me to share code between projects and allows the data to be accessed easily from all projects. I would like the backups to be minimal so that only the necessary things needs to be backed up.

Overall, it seems like a big mess that makes starting work intimidating.

Are there any good resources where I can read on how to better organize?

Especially appreciated would be examples of how you do your project organization.

share|improve this question

closed as not constructive by Tom Wijsman, afrazier, Sathya Mar 25 '11 at 6:28

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

add comment

2 Answers 2

but they end up being too complex or inconsistent

We can't do this for you as your personal data would differ from ours.

The first time can be hard, but I guess on a next iteration your structure will most likely improve...

and so I typically end up putting stuff in ~/temp and working from there

I think should really try to get that folder empty or even gone, it will force you to get your structure right.

My work is elastic: I do this and that and this and that...

I don't see how this is a problem, your language and build specific things remain in the project folder so you don't need to organize within the folder at all?

I would like a relatively flat organization scheme that allows me to share code between projects and allows the data to be accessed easily from all projects. I would like the backups to be minimal so that only the necessary things needs to be backed up.

Share what code? Put libraries apart in a Libraries folder, I have no clue how your back-ups work.

share|improve this answer
add comment

I have the following structure:

Root Folders: Work, Personal, Archive. Subfolders deeper than these are unimportant, structure them however you want. I move individual files to Archive when done, or entire folders when the projects associated with them are completed.

Sync: The work folder syncs to my workplace with dropbox, where it is then backed up with SyncBack. The personal folder syncs to my Android phone with dropbox. It's currently backed up manually by hand each month to external USB drive. From the sounds of it you do want incremental backups, which SyncBack will do.

Search: Copernic desktop search to search the entire folder structure. It's very good and easy to install, and free for the personal version.

Paperless-ness: I use an Epson Workforce scanner to scan any paper documents to PDF and OCR the text into an underlying layer for searching. The PDF just goes into whichever folder suits (usually archive)

share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.