December 2012 Blog Posts
More fun with Nuget, or NuGet Still Sucks

I like Jimmy Bogard.  A lot.  He seems really cool.  We’ve never met, and besides maybe an occasional cross comment on blog posts, I don’t think I’ve ever talked to him.

But he seems cool, and he seems to be a really good developer, much better than I am (though a sick hamster with some JQuery skills is probably a better developer than I am, but I digress).

Anyhoo, he had a recent post about some presentation he gave in various places like Dublin and Kiev and Guam and Haiti and Narobi (okay, I’m exaggerating), and posted about it here.  I do not like the word “polygot” much but the idea that I could get a codebase from a really good developer that “showed how to build a single application that combined relational, key/value, document and graph databases, without resulting in a huge mess” was pretty appealing to me at this point in time, for various reasons.

I have always believed that you should be able to download a codebase and have it immediately compile.  Well, to a point.  If you have to have a database server installed, you can’t really enforce that with a download, but you get the idea.

So, I went to Github to get the code, but since I don’t have Git installed at the moment (yeah, yeah, I know.  I’m using Team Foundation Service at the moment.  Yeah, yeah, I know.  Bite me.), I had to download his entire presentation zip, which is actually pretty cool, a lot of good stuff to look at.

So, I unzip and try to compile.  Not a chance.  Missing references all over the place.  Okay, that’s understandable, he uses large numbers of nuget packages (here’s an example): 


No problem.  You can tell Visual Studio to get missing Nuget packages on build, nice feature, right?  Here it is:



Pretty awesome, right?  So when you build, it will download all of the……huh.  No, it won’t.  What the hell?

Having forgotten this, it took me 10 minutes or so to remember that you have to actually tell the Visual Studio solution that you really mean it (what the fuck) by right clicking on the solution and choosing the “yes, I really fucking mean that I want you to manage Nuget packages.”

Okay, that was annoying, but now at least as I build it is managing all of the dependencies and at least I will get a clean……build failed.  What?

Hmm, let’s try to manage the packages through the little gui thing.  It says there are packages missing, would you like to update?  Yes, I would.  Oh, that didn’t work, it is saying the same thing, but no error message.  That is so totally useful.

What it was, was that Jimmy was using an alpha build of the next version of the Entity Framework, but guess what, they don’t actually keep all of the alpha builds in Nuget, just the most recent (I guess), so it couldn’t find the alpha1-1123blahblahblah package and bombed out.  So, we can just go into the packages.config and change the build number right?  No, apparently not, it gets confused, so you have to go into the gui package manager thingy and remove the missing version, and then go to the command line so that you can indicate you want the latest –pre build.

Of course, I still can’t run the app after successfully building it, as the database is missing, or I can’t find it, or whatever.

Sorry, this just sucks.  If you have a lib directory with all of your dependencies in your source and reference that, you will never have problems downloading source code and building it.  You miss all the ‘nice’ Nuget features, but, somehow life still goes on when you don’t use.

It is really good code to read though, so I’m glad I downloaded it.

posted @ Sunday, December 23, 2012 3:40 PM | Feedback (6)
Another reason I hate ESPN

As the wonderful game crew (or whatever the hell they call their Sunday morning goof-fest) gathered to pick the Steelers-Bengals game, they all picked the Steelers (which is a kiss of death right there), but the kicker came when Berman explained that he was picking the Steelers because Franco Harris was attending the game (it being the 40th anniversary of the Immaculate Reception game).

Right.  That certainly guarantees it, doesn’t it?  That’s the sort of logic that dominates the booyahs in Bristol.

Naturally, the Steelers just lost. 

posted @ Sunday, December 23, 2012 3:19 PM | Feedback (0)
Cleaning up Outlook RSS Feeds Subfolders

One of the wonderful <sarcasm> features </sarcasm> of Outlook’s RSS Feeds is that you cannot select multiple subfolders and delete them, instead you have to select them one by one.

Ever accidentally import an OPML file more than once?  Nothing like dozens and dozens of duplicate folders.  It would be nice to just nuke everything and start over.

Anyway, there is a programmatic way of doing it, which can be found here.  Although it references Outlook 2007, the code works with Outlook 2013 (for the most part as I did have to manually delete a couple of them).  I changed the path to “\\Outlook\RSS Feeds” on my system, YMMV

Obviously, if you wanted to delete a subset of them, you could hack the code up a bit, but I’ll leave that as an exercise for the reader.

posted @ Sunday, December 16, 2012 2:16 PM | Feedback (0)
VSCommands Friendly Solution Name

If you are one of those annoying people who like to have 2 or 3 or 9 instances of Visual Studio open at once while working on multiple branches of the same code base (and only an idiot would want to do this, obviously), it helps if you can get Visual Studio to include the branch name in the title, otherwise, you end up having to open a file and hover over it to help remember which is which.

If you download VSCommands Lite for use in VS 2010, you can set what are called friendly names, but unfortunately, the links to the release notes in Stack Overflow are all 404s now.  Here’s the syntax:

Friendly Name: {solutionName} - {branchName}

Friendly Name: Solution Path Regex:  .*\\(?<branchName>.*)\\(?<solutionName>.*(?:.sln))

posted @ Tuesday, December 04, 2012 9:23 AM | Feedback (0)