>> For what it is worth, I work this way: I keep everything for a project in a >> folder. When I start to rework or improve, I make a copy of the folder and >> set it aside. For what it's worth, I work this way: I first create a project folder (i.e., myProject 1.0). When I have the program doing something of value, I then duplicate the entire folder and only rename the project folder (i.e., myProject 1.1). I also add "read me files along the way to describe specific differences/featrues/problems. For specific functions/features/aspects, I create stand-alone programs that I add as needed. By making them stand-alone, I build a library. I never alter the internal code of any project to reflect any version number, other than for client beta versions. At the end of any project, I have literally dozens of "past" project files. I keep what I think are important and trash the rest. And, as a result of my methodology, I have numerous stand-alone functions that can be used for future projects. It's a constantly growing process. tedd PS: Your mileage may vary. ___________________________________________________________________ <mailto:tedd@...> http://sperling.com/