Loren Halvorson's Blog

If your only tool is a hammer...

  • Subversion 1.5.1 Windows install is available

    I've been working on a presentation for our next User Group meeting on Continuous Integration, and wanted to set up a local Subversion server.  Of course I wanted to use the latest and greatest versions of everything. So I've been checking back daily for the appearance of the installer for Subversion 1.5.1 for Windows.  Setup-Subversion-1.5.1.en-us.msi showed up on August 15, 2008.

  • Automatic Properties Work in .NET 2.0

    This was sort of an accidental discovery, I'm not the first to stumble on it, but it doesn't seem to be widely known. A colleague of mine asked me about an interesting behavior he noticed after switching to Visual Studio 2008.  He was still targeting the .NET 2.0 framework, but noticed the automatic property feature worked.

  • We're starting a .NET user group in south-central Minnesota

    We are starting a .NET user group in Mankato, which is in south-central Minnesota. Hopefully we can attract developers in the area that (like me) sometimes find it hard to make the 1-1/2 hour drive to the nearest .NET user group in Minneapolis. They're doing a great job up there in the Twin Cities, and I'll still try to make it to some of their meetings, but I just have a feeling there is a community of developers here that don't get much of a chance to hang out with geeks and talk shop.

  • Visual Studio Industry Partners (VSIP) program not needed to build a Domain Specific Languages (DSL)

    After listening to a DotNetRocks podcast that interviewed Kevin McNeish on DSLs and Software Factories, I was curious to check out the DSL toolkit for internal use by our developers. After installing the Visual Studio 2008 SDK, I started seeing a “VSIP License Required” in the Visual Studio 2005 splash screen, and “A VSIP license is required to use this version of Microsoft Visual Studio” in the about box of Visual Studio 2005.  However, within Visual Studio 2008’s about box I see “Visual Studio SDK License”.  I was confused and wondered exactly when a VSIP license is required. I contacted someone at Microsoft and received clarification on this.

  • MSBuild 3.5 just made my day

    While doing some troubleshooting on a project I needed to manually copy some debug assemblies around after every build. But there were a lot of them, and whenever I need to do something repeatedly I try automate it with a script of some sort...because I'm lazy of course. There are a lot of choices today for a little quick and dirty script like this, Batch files, VBScript, Powershell, NAnt, but I thought I'd give MSBuild a try because I figured it would be the least amount of hassle, since moving files around is one of it's main duties during a build. The script was simple to write, but I hit a snag...the destination files were read only, and the copy errored out. MSBuild 2.0's copy task doesn't have an option to overwrite read only files. But MSBuild 3.5 does, so I learned a couple of tricks.

  • Two things I learned tonight moving an ASP.NET site from IIS6 to IIS7

    Tonight I moved moved an ASP.NET site from IIS6 to IIS7. Things seemed broken pretty badly at first, and I wondered if I was making a mistake to leave the comfort of IIS6. However, it turned out to be minor changes to the web.config. I'm sure they're already well known and well documented, but I figured I would scribble them down in case I ever need to do it again.

  • Just for fun, controlling a Lego Mindstorms NXT robot with Windows Workflow Foundation

    Recently I was asked to give a presentation on Windows Workflow Foundation to some developers. Unfortunately I had never worked with it. So last week while I was reading an article about workflow, it occurred to me that the designer seemed very similar to the NXT-G programming environment my kids use to program their Lego (R) Mindstorms (R) NXT robot. There's no better way to learn something than to actually try to do something real with it, so I decided to try to write my own custom activities to control a robot through Bluetooth connection.