Scott Hanselman

Moving life into CVS and DocumentLocator and the Authoritative Source

January 26, 2004 Comment on this post [3] Posted in Africa | Bugs | Tools
Sponsored By

I need an Authoritative Source

You know I picked up a TabletPC recently.  I will probably attend the North Africa Developer Conference in Morocco this year and I wanted to bring my TabletPC rather than my Corporate Laptop.  It's a lot lighter (6 lbs vs. 11 lbs) and the batteries last forever (at least 6 hours versus barely 2).  It is a 1.5 GHz box, while my Corporate Evo N800w is a 2 Ghz.  We'll see if that really makes a difference.

Anyway, I sat down and prepared to move all my presentations and demos and C:/Utils over to the laptop.  It's about 2 gigs of Powerpoints, demos, code, and goodness.  If you've seen one of my presentations when I'm particularly hopped up on Diet Coke, you know I use most of it! :)  So, I made a C:\demos folder and started a copy. 

Then, I stopped.  What the heck am I doing?  If I copy this stuff straight, I'll have demos/presentations/code on three machines (my desktop as well).  Every once in a while I make an important change to a PowerPoint, or find a major bug in some demo. 

So, I said, it's time to move some of my life into An Authoritative Source (ne: Source Control).  Less for the version control and more to define and authoritative source for information that I can pull from.

Tangent: My Contacts

I recently installed Plaxo in an attempt to bring some semblance of organization to my information-life.  It provides, for all intents, a location for all your contacts that can sync to Outlook or Outlook Express on other machines.  It provides:

  • Conflict Resolution and Synchronization - Changes made by me/Changes made by others
  • Storage - I can install it on a new machine and bring my contacts down immediately.
  • File System Independance - I can bring it down into multiple clients without concern over file system (or application)
And that's exactly the kind of problems that need solving for my presentations and demos.
Back to the Story:
 
I have used Source Safe since before it was owned by Microsoft (Remember One Tree Software) and I've used various *nix source control systems.  But, I hate it.  Between Data Corruption and the general malaise I feel when I use it, it wasn't an option for my personal data.  Not to mention the whole "make writable" nonsense.   I'd prefer my personal files be writable be default, thank you very much.
 
I really dig what the SourceGear Guys are doing with Vault, but I'm a little nervous putting my data in a Database.  It's kind of hard to restore a single row (file) from a SQL Server Database, and it feels a little more opaque that I'm confortable with.  So, while I might use them for development, I needed a system that was more flexible. 
 
I've come up with two, one for code, and one for everything else.
 
My chosen solutions:
 
1. CVS
 
I'm keeping my source code (largely text-based) in CVS.  For the client, TortoiseCVS also use a namespace extension and intregrate directly into Explorer.  They've recently updated Tortoise to 1.6 and it's more stable and very easy to use.  I installed the free CVS NT Service and had it up and storing source in 30 minutes.
 
Pros: Also, it's file system based and easy to backup and can be accessed from multiple clients, including a Web Client and Tortoise.  Tortoise provides a very seemless experience and is my preferred way to work with code. 
 
Cons: CVS is too complicated for my wife to use and offers many advanced features like tagging and branching that are very "Source Code specific" IMHO.  For that, it's perfect for my code.   It does mean storing all your code in a "sandbox" that is a copy of what's on the repository.  It's non-trivial for the novice to setup things like Check-In notifications and it doesn't support any kind of full text indexing.  It doesn't automatically add files to the repository when you save them to a folder. 
 
Basically, it's a nice source control system that I will use, but it's not a Document Management System.
 
2. Document Locator
 
If you haven't tried DocumentLocator yet, do.  If you aren't ready to download a trial, checkout their awesome Flash demos.  This just might be the product for me.  It also stores data in SQL Server, but it's not trying to be a Source Control System (even though it is that, and lots more).
 
Pros: It includes a namespace extension for Explorer that makes your document repository show up next to My Computer.  You can open and save files from any Windows app directly into the Repository.  I have started using it for all my "My Documents" type files.  It supports versioning, has hooks into SCC (the Source Control APIs for Visual Studio) and most importantly it's EASY.  It also replaces dtSearch with Full-Text Indexing of all files, including scanned/OCRed TIFFs and PDFs.  I've long wanted to start scanning more documents and bills into my system, but I don't want to just dump a bunch of JPEG files into a folder.  DocumentLocator has some sweet scanning integration and scans, OCRs and imports your documents into the repository.  It supports a totally extensible schema and arbitrary tags that are also searchable.  It also supports notifying people of changes and additions and will also suck documents directly out of Outlook and into the repository if the document meets a specific filter.
 
Cons:  Backing up a single file while it's still inside the repository is still a challege, but I just back the whole SQL Server up anyway.  And if you don't have SQL Server, just use MSDE and you can still store up to 2 gigs of files.
 
 
Both CVS and DocumentLocator act as an authoritative source for my data.  I run the services side-by-side on my home server and pull from them as I please.  I've got all my source CVS'ed and running on my TabletPC now, and I'll my documents and presentations full-text-searchable in Document Locator.  Whew.  That's a good weekend's work.  Now it's time to watch Bernie Mac.

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

facebook twitter subscribe
About   Newsletter
Hosting By
Hosted in an Azure App Service
January 27, 2004 3:15
Is there a version of DocumentLocator for personal use? The cheapest one I can find on the website is 2500 bucks. That is a little to rich for my blood.

-Ryan
January 27, 2004 14:37
Subversion also stores it's data in a database however it's got many more features than CVS. The mono guys are even beginning to use it.
January 30, 2004 3:02
Dude,

Read this with a lot of interest - I had the same problem as you (code and documents need storing), but I opted for a different solution:

1. Code: Subversion. Runs on NT quite well, and TourtusSVN is the same as TourtusCVS (forked codebase, I beleive). Works for me. Same problem with my wife, tho - she couldn't handle CVS or SVN (well, not without a few lost document headaches....) so.....

2. Documents: Sharepoint Portal Server. Windows Sharepoint Services would have worked, but I wanted to install the whole thing (joy of being an MVP / having an MSDN license). She can fire documents into it, version them, create folders, sites etc etc for the various bits she needs etc.

Damn it, she's better at SPS than I am now!!

I think I'll have to have a look at DocumentLocator, but SPS is doing the job at the moment :)

Comments are closed.

Disclaimer: The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.