General Ramblings comments edit

OK, conference organizers, listen up:

You never get the box lunch right. Ever. Even when I was in grade school and you were the field trip organizer, you still never got it right.

Not everyone wants a pre-made meat sandwich, and not everyone who doesn’t want meat is a vegetarian. Giving me the choice between soggy ham, limp turkey, or sprouts-on-rye isn’t a choice. I might consider the ham, but you made it six hours ago, threw a really moist tomato on there, and wrapped it tight as you could in plastic, thereby ensuring the tomato juice permeates the bread and makes it entirely inedible.

Normally I wouldn’t even complain, except you make the assumption everyone’s going to eat the box lunch so you don’t give me enough time to go somewhere and get something else - I eat your lunch, or I don’t eat at all.

I am tired of eating a lunch that consists of an undersized apple, a small bag of greasy chips, and a cookie. I’m tired of having people with lower food standards look at me with that pathetic gaze and offer me another bag of greasy chips.

There are ways you can fix this and still keep your precious box lunch. Seriously.

  • Stop pre-making the sandwiches. Put the individually packaged ingredients for each sandwich in the box instead so I can assemble it myself, ensuring the bread isn’t soggy and that I can entirely ignore that overripe tomato slice.
  • Offer the peanut butter and jelly option. Yeah, I know there are nut allergy people. I think they can figure out not to eat the PB&J.
  • Actually ask me what I want during conference registration. Not just a checkbox for the “vegetarian option,” but actually a menu of four or five different things you could package up that maybe aren’t sandwiches. Or let me select which ingredients go on my sandwich from the menu. It can’t be that hard.
  • Buffet.  I get a plate, I walk down the line of available items, I pick up what I want. Wow.
  • Give me the money you’d have spent on the box lunch and enough time to hit the Burger King down the street. I’ll come back happier and probably have change left over.

Conference organizers everywhere, heed my call! No more box lunches!

gists, dotnet, testing comments edit

I use Snippet Compiler quite a bit for quick one-off testing to see if something will work. Something I’ve been doing a lot lately is doing little quick checks to see how you’d do certain things with TypeMock Isolator. Snippet Compiler basically starts you out with a very thin framework for a console application and when you hit the “Start” button, it builds and runs the app. (You could do the same thing in Visual Studio, but Snippet Compiler is very lightweight and is totally built for this sort of experimentation.)

To make my TypeMock experimentation easier, I created a template for a basic console app that will launch a separate process with TypeMock enabled and run the NUnit console test runner. The template starts you out with an empty class and an empty test fixture, ready to populate with tests. When you run the app, the NUnit console runner will execute any test fixtures you put in the current assembly.

Snippet Compiler showing the TypeMock
template.

Instructions on how to set up Snippet Compiler with this template are included. Basically, drop the template into your Snippet Compiler templates folder and add references to NUnit and TypeMock.

[Download TypeMockSnippetTemplate.zip]

GeekSpeak comments edit

I participate in agile projects where we have a daily standup meeting to discuss high-level task status and roadblocks. I’ve noticed that many times I find there is a general feel that if the manager is out sick or can’t otherwise make the daily standup that the team feels the standup is inherently canceled. When you run past their desks to find out where the missing members are to round them up, they’re astonished: “What? We’re still having a standup?”

Even if the manager is sick, even if one of the team members is out, yes, we are still having the standup. Why am I being so jerky about it? It’s just a standup, right?

Jason Yip wrote about patterns of daily standup meetings to address the more holistic concerns about what should and shouldn’t happen at a standup, so I won’t re-hash that. Go read that article - I’ll wait.

Good. Now let me tell you what the standup means to me and why I believe you shouldn’t skip the standup.

  1. The standup is for the team, not the manager. It’s great when the manager is there. And, yes, I know that in some projects you may not have a manager - it may be a peer scrummaster or some other leader. Regardless, the meeting isn’t for that leader - it’s for the team. You’re not reporting your status to the manager, you’re reporting to the team.
  2. The standup is a vestigial sign of discipline. In any team, it’s important to know that your peers can meet commitments and that you can trust them to have your back. If you can’t trust your team to make a simple standup, how can you trust that they’re on top of any of the other tasks they’re working on?

Now, it may be that the standup is at a bad time of day or that maybe it should be an every-other-day standup because there’s not enough developing to warrant daily updates. It may be that there are too many people (or too many uninvolved people). There are a lot of potential problems with a standup’s format, but those can be addressed - so address them. Again, the Yip article talks about some of these problems and potential solutions.

Regardless, it is not OK to skip the standup.

gaming, xbox comments edit

This weekend [finally] brought an end to my latest struggles with Xbox Live digital rights management. I didn’t get a call from Xbox Support, which I was told I would get, but I did notice that several folks on the Xbox Live forums, also in my situation, suddenly had their issues resolved without any notification, so I figured I’d give it a shot, too.

When Xbox Support has fixed you up, you’ll be able to go into the Xbox Marketplace section of the dashboard, go to “Account Management,” view your Download History, and select “Download Again” for each of the items you purchased. Doing that will automatically re-license the downloadable content to the console so the other gamers in your household can play it without you having to be logged in and you should be able to play it without having to sign into Xbox Live. You don’t need to delete the content first - just select “Download Again” and the license for the content will transfer.

Took about 15 minutes to go through my history and download everything a second time, but after that, I was totally in business again. And, hey, it only took, what - four months?

dotnet, vs comments edit

I’m in the process of updating a bunch of old Visual Studio 2003 projects and solutions to, well, something a little newer. I found this odd behavior issue where there were some references that were marked to as “Copy Local” and that would work fine in a Visual Studio build, but when run from MSBuild, the references weren’t getting copied correctly, which would cause unit tests to fail and such because things weren’t where they should be.

A little Googling led me to this forum post which basically boils down to:

Go through your projects in a text editor and look for references with <Private> tags in them. Like <Private>True</Private> or <Private>False</Private>. “Private” is a synonym for “Copy Local.” Somewhere in the actions MSBuild is taking to locate dependencies, it’s finding your dependency somewhere else and deciding not to copy it.

What I ended up donig is going through each converted .csproj file and removing the <Private> tags manually. Rebuild, and everything works in both Visual Studio and MSBuild. Once you’ve got that working, you can go back in and update things to where you think they need to be, and when things start failing, you’ll know exactly where the problem is.