Source Control from Hell

Published Fri, Oct 29 2004 20:16 | William

Everything I'm about to discuss is complete fiction and bears no resemblance to reality - at least that's my story and I'm sticking with it.

There's a product out there that begins with “Source” doesn't end with “Safe” but a word that's synonomous with the opposite of OnSite.  I have never seen a product that I hate as much as it. I mean if you ever think SourceSafe is a pain - try this crap and have some real fun. 

This week alone I've lost 4 hours because of it.  It's really cool because a lot of times it just freezes up in the middle of pulling over a project.  Sometimes it leaves your files in a half locked state and you have to completely restart IIS.  Other times it works fine, until of course more than 1 person tries connecting to it at once.  We now have a policy where we have to send out an email to everyone on the team and announce when you're going to pull something down and when you're done.  As goofy as it sounds, it's actually a feasible solution and has helped out immensely.

Looks like the problem is that Source Offline wraps a bunch of COM calls w/ P/Invoke - so even though it's multithreaded, it doesn't matter because the server isn't.

Today I had a wonderful day.  I'm right up against a BIG deadline and all was pretty much on schedule.  I decided to stay late b/c no one in the government will ever be in the office working after 5:00 and most of the folks I worked with were taking the kids Trick Or Treating.  So that meant I could go pull down all the latest builds of everything and get ahead.  But NO.  Right in the middle of pulling down a rather large project w/ Get Latest Version, the Server connection closed, popped up an error message and caused VS.NET to freeze.  I went and took a dump and came back 20 minutes later and it was still hung.  So I had to kill VS.NET.  When I got it back up, two of the files I was working on since noon were corrupted!  Yep, couldn't even open them in the designer.  So I had to go back and revert to the previous version which effectively set me back about 6 hours.  The creators of this hellish project need to be included in my prayer list...

On a brighter note, my new SPOT Watch arrived today and I finally got it up and running.  I had one a year ago when they first came out but I lived in Augusta where the only thing you can get is Sweet Tea, Grits and Church.  Hence no coverage.  So I gave it to a friend who could use it.  Greenville, SC is about 10000000000 lightyears ahead of Augusta and fortunately it has coverage. This one is cooler than my old one too - I even see a section for Programs which is intriguing.  I KNOW for a fact that there are people writing programs for the CLR right now and my one man goal is to pull this off.  Sure, I doubt Remoting is supported or MSMQ and I doubt you can run a Biztalk orchestration on it, but I don't really need to do any of that at the moment and the best part is that surely Source Offhell won't ever be able to run on it which is reason enough to buy one.

KC had a good post a while back about how Portable Media Center and SPOT both have the ability to run programs but Gen1 of either of them  doesn't let you access it - hence he wasn't buying either until that point.  Well, I totally respect his viewpoint but I have very little of substance in my life so purchasing expensive toys gives my life meaning. And now I can check my email from my phone, my PDA or my watch.  The only bad part is that I haven't gotten much but spam lately.  Maybe I need to write some more political stuff because for some reason, that seems to generate a lot of traffic.

Casey was right again on this - you can write about technology all day long and you may or may not get a post or two.  Write about politics, stippers, religion or post pictures of your girlfriend's butt, and viola - traffic.  Weird phenomenon indeed.

Filed under:

Comments

# William said on October 30, 2004 12:39 AM:

I've gotten to the point where I refuse to store my stuff in any kind of source control. I've heard good things about Vault but I haven't tried it. I just do incremental backups three times a day in a little batch program. Source Safe literally ate an entire library I wrote and that was the last time I ever used it. The only thing I have ever seen work on really large drawn out projects is a CVS type setup. I worked on a project on and off for almost five years that had a CVS system and it never ate anything. But it had a full time admin managing checkins and checkouts. Lately because of the type of work I've been doing I can get away with just backing up my own work to the server three times a day. It creates a bunch of folder but that works better than just overwritting if I ever need to roll back. At the end of each week my network admin burns a backup of everything under the main folder so on Monday I can delete everything and start a new week of backups. The weekly backups are placed in storage for something like ten years so I can go back a long ways if I need to. It's kind of a pain but it beats having some sh!tty software eat my work. One of these days off the record I'll tell you my Source Safe story. I used to be in a study group with a bunch of the Source Safe developers. Don't ever stick your stuff in that abortion of an app.

# William said on October 30, 2004 1:05 AM:

Ok Andy - before I respond I want to mention that my post had nothing whatsoever to do with my company, any of our clients or the Source control provider you reference. OUCH - Goddamit those lightning bolts hurt. Actually, in my hypothetical scenario the lead architect of my imaginary company used .Reflector to get to the problem and found it. He identified it to the specific few lines of code causing the problem. When he told the wonderful folks at the hypothetical company what it was, they responded "We have 40,000 seats and not one problem" So I ask you this. If you have a multithreaded client, talking over sockets, with code that blocks on the socket and the server merely P/Invokes [STATHREAD] old com libraries a la Source Safe - do you foresee a good ending? I already had blind hatred for this hypothetical company because they are anti-booth babe
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsoftware/html/software06012004.asp

but now I really hate them. Vault is a first rate product. It's hypothetical counterpart isn't fit to sniff Rosie ODonnels grundle.

My a33 is bleeding right now because I lost some critical work today. Fortunately I remember everything I did and I have the benefit of knowing what I did earlier, but by all measures it looks like I'm going to pull at a minimum 61 hours this week - and that's doing .NET Work - not even Biztalk stuff.

I really wish that crappy source control, work deadlines, my two MVP Courses (Sharepoint and Sql Server 2005) dont' ever all decide to converge in a single week again. Learning cool new stuff isn't as fun when you have pressing issues to address. And that's not to mention the gates outside of my complex decided to quit working. how the f*ck am I supposed to find the time to go Egging and TPing people's houses with all of this sh1t?

# TrackBack said on October 30, 2004 4:23 AM:

Bill skriver i sin post

Search

This Blog

Tags

Community

Archives

News

My other sites

Cool Stuff

Book Stuff

Security

ORM

Data Access

Funny Stuff

Compact Framework Stuff

Web Casts

My KnowledgeBase Articles

My MVP Profile

Design Patterns

Performance

Debugging

Remoting

My Fellow Authors

My Books

LINQ

Misc

Speech

Syndication

Email Notifications