Archives

Archives / 2003 / July
  • Weekend

    There is nothing better than 5:00 PM on Friday. A full weekend of being unplugged works wonders for me.

    Of course, being a geek and all, I also use it as a time to work out some of the more complex problems without the pressure of actually working. There is just something about geek and workaholic that go hand-in-hand. Even away from the keyboard, I think about code I'll work on when I get there. Oh well.

    I am off to clean the paintball gun. After all, nothing takes your mind off of work better than getting peppered with hot-pink paint. ;-)

    [Now Playing: They Might Be Giants - Istanbul (Not Constantinople) (02:38)]

  • Joel on Linux

    Joel made some interesting comments about Linux and the German government migration to the platform. It spawned an even more interesting thread in his forums.

    The best post was from Philo:

    Why does Linux *have* to be a market success? The market has Windows, and that seems to be satisfying most people just fine.
    Is there a need for Linux somewhere?

    I'm not sure I agree with the implication, but it is an interesting question. 10 points for being gutsy at least.

    Personally I think there is a need for Open Source products. Not because they add value (some do, most don't) but because they keep the big boys honest. They are the software world's equivalent to a "running game"; it may not always produce good results, but that doesn't diminish its role.

    [Now Playing: Guns N' Roses - My Michelle (03:40)]

  • view

    Roy started a stir last week when he brought up the every thorny topic of C# Case Sensitivity. I've not seen so many people take sides on such a ridiculous issue since the great debate over Pamela Anderson's breasts (were that better before, after, or after-after?).

    What most VB developers miss with C# isn't really Case Insensitivity, it is Case Correction. When you define a variable in VB with the name sOmEvAr, VB will automatically correct future references as your type. So if you accidentally enter SoMeVaR, it fixes it for you right then, preventing an inevitable compiler error. This is something that could be added to the IDE without adversely impacting developers who don't want the feature (just turn it off). And if the implementation worked similar to Word's auto-correct feature, you could undo the IDE's correction by pressing CTRL-Z (any auto-correction is considered an undoable step).

    So lets all just cool our heads for a bit and remember that just because you develop one way, doesn't make you any more correct than the next guy. And for the record, they were better before.

  • view

    Joel is talking about Vault and CitiDesk today. I feel it is the most brilliant post he has ever made. The fact that it includes a quote from me has nothing whatsoever to do with it... ok, that's a lie. ;-)

    My only experience with CitiDesk has been from toying around with it. I've not had a need for any serious use yet. But as I said last week, this will not stop me from checking out every new release. I'm hoping 3.0 has something in it that I can really use over here.

  • Heroes and Friends

    I'm about to leave to attend a memorial service for a childhood friend of my wife and I. His name was Seth Michaud and he was a Captain in the US Marines. On June 22 he was killed in Djibouti, Africa in a friendly fire incident. He leaves behind a wife and 18-month old son.

    My wife and I grew up with Seth and many of our happiest memories include him (I once stole 31 gas caps with him for a scavenger hunt... bad bad bad). And while we have not seen him in some time, his loss hit like a ton of bricks. It reminded me that every man and woman who has given their life for my country has left behind a legacy. A legacy that I knew nothing about and thought little of, until now. I'm glad part of Seth's legacy includes me. I'm a better person for having known him and anyone who knew him will never forget.

    On the Friday before his death he posted a profile on Classmates. While I try my best to maintain my macho-manliness at all times, I must admit to crying like a baby after reading his profile that Sunday night.

    We all have many heroes and many friends in our lives. I was privileged enough to have someone who was both.

    Rest in peace my friend and thank you.

    seath-michaud-photo-01

    Some links:

    [update: fixed some broken links]

  • Blogeting?

    As a customer of Sourcegear (Vault) and Fog Creek (FogBugz), I was thinking today about how much blogs are influencing my purchasing decisions. I don't think we can call it "Marketing", its more like "Blogeting".

    In the past I would learn about new products either from a friend or by seeing an advertisement. My decision to purchase was based almost exclusively on the demo experience. I'm sure that I missed out on a lot of great products simply because I didn't "get it" when I played with their demonstration product. If they didn't hook me within 10 minutes I moved on without so much as a second thought.

    But with these two products something different occurred; I learned about them from the owner's personal blog (Eric Sink of Sourcegear and Joel Spolsky of Fog Creek). This changed the entire sales paradigm by injecting a personal connection not found in normal business relationships. I found I cared more about them, their company, and their products. I was no longer dealing with "Faceless Company X" but a real human being. I was buying a product from someone that I knew, I liked, and wanted to be involved with.

    This connection also effected my demo experience. Although in both cases I found the initial releases didn't fit me, I didn't walk away. This was because I wanted to like their products. I liked them so much, how could I not? So I stuck around and eventually purchased each product when it did fit my needs (I purchased Vault at 1.1 and FogBugz at 3.0). And since I had watched the product grow and became part of the community around the product, I can't see me ever leaving.

    I'm a customer for life and that means a lot in today's market. Thanks guys.

  • view

    As I said before, I really like Sourcegear's Vault. Well I finally put my money where my mouth is and purchased it today. Now I just need to start building the repository.

    I just love new toys. :)

  • Vault 1.1

    This past week I've spent some time playing around with the 1.1 preview for Sourcegear's Vault source control system. After a few minutes I was impressed, after a few days I am in love with it. 
     
    A little background on Vault might be in order. Vault is a full features Source Control system that handles both CVS and VSS versioning styles. It is also their answer for replacing Visual SourceSafe. They make this really easy by offering a complete migration tool. It was written using C# and uses ASP.NET Web Services to connect to its SQL Server database. All-in-all, very cool product.
     
    The single most important improvement over 1.0 is the integration with FogBUGZ. Although other SCC providers can be integrated, Sourcegear is the only provider to build their implementation directly into the product. Most other implementations are simply hacks devised by FogBUGZ users to parse comments for the bug#. But with Vault you get a dedicated field for this purpose, making it a lot less error prone.
     
    Integration with FogBUGZ gives Vault an almost complete answer to the Borland StarTeam Task feature (my all time favorite SCC feature). Tasks allow you to put any collection of changes into a single context. For example, you could have a task "Fix error when printing" and every checkout and checkin would happen within the context of that task. This let you know what code was changed for any given task. Now I can achieve similar results with a combination of Vault & FogBUGZ. So when you want to know exactly what was changed to fix your printing error, just look at FogBUGZ and it will list the files (you can even run a diff against them from your browser).
     
    Why almost complete? It is still missing one key aspect of a task based system. In a true task based system, checkouts should be related to a task (not just the checkin). This is only a minor issue for me and if you use a CVS style of versioning then it isn't an issue at all (being that you don't checkout in the first place).
     
    Most of the other changes seem are what you would expect from a point release. There are some noticeable performance improvements and I'm told the Visual SourceSafe import has improved a lot. There is also a new feature called Keyword Expansion but I have no earthy idea what that means.