Converting all my current downloads to a new system is a bit daunting,
I think, rather sooner than later you'll regret that. If you only have
a few (hundred) programs, a one-folder approach may be sufficient. If
you have a really large collection (some 5000 progs with 18 GB *is*
large ;-) ) you either sort it by category or use a database driven
approach. Else you don't need to start a collection at all, because
you'll hardly ever get hold of a program, again.
1. Leave the current downloads alone, just start the new system as of
today
Use one system and stick to it. Else you'll find yourself reorganizing
over and over again.
2. Wait until one weekend I am very very bored and have nothing else
to do, and... ;-)
That's nothing which can be done properly on a couple of weekends,
let alone one. One weekend is only enough time to destroy a system;
not enough to build a (proper) new one.
IMHO, you should think about the reason why you archive old versions.
I usually only do this during beta testing periods, after license
changes, when a program gets a complete rewrite or lots of new
functions (and I think that the lean version may come handy one day.)
If you can't come up with a good reason, ditch the old versions. A
mere possibility of unnoticed *ware changes (and such) usually doesn't
pay off. Usually somebody finds out quickly enough (and posts some
notice) to get a working copy somewhere. And, why, few programs
really *are* indispensable.
To answer your original question: As you already may have guessed -
I use a similar system. Back in the early nineties I started with
a Download folder, thematic subdirectories and program directories.
(Took part of the ideas from browsing Simtel and Garbo.)
After Windows, Linux, OS/2 and a couple of other OS variants got
out, a new classification level proofed useful: Underneath the
Download folder I added a general directory for OS versions, a
folder for Hardware drivers (only the ones *I* need), one folder
for every OS (containing the programs sorted by categories, again),
and a few general folders where I thought the side by side placement
of similar programs more important than the OS they run on. These
include Knowledge programs and Development tools.
Few years later, fat thematic categories got subfolders. Maybe
at the same time I started a strict scheme for program folders.
Top level (if necessary) Version folders. That folder contains an
Install, a Src and an Extract folder (again: only those needed).
The Extract folder of course can contain a whole directory tree,
if the program likes to create one.
The above may sound *very* big. But, although it is a couple of
GByte, at the moment, it is by far smaller than yours. The reason
is: I only keep programs worth to do. There are few programs within
the collection I haven't used at least twice or thrice. Every
program gets 2 information files: a *.xml and an Info file. The
first contains all necessary information (author, license state,
homepage and such). The latter holds special characteristics.
Program (sub-)category folders hold Info files, too. They contain
hints about programs suitable for the purpose, but for some reason
stored within another category. (Usually multi-purpose programs.)
Another useful information held inside these files is a list of
disappointments. When I test a not-so-good program (which therefore
gets deleted immediately) and I think I may run across it again,
than I note version, name and reason, why the program failed.
Because my collection is well sorted, it only takes an instant
to go to an appropriate category. And keeping only the best, it
takes another instant to find the best suitable program.
I don't update my whole collection on a regular basis. Instead,
whenever I need a certain program and think I miss something (or
else think I could do with an update) I check all programs of the
same (sub-)category and maybe do a search with the names of the
most popular ones to find out, whether new gems have been written.
IMHO, that's a manageable step-by-step approach, which over the
years builds a decent collection without stealing too much time
for organization tasks... ;-)
BeAr