# Saturday, 02 June 2007

A while back the blogs went nuts with the FizzBuzz game. It all started with a discussion of asking people to write code in job interviews. I do this, and I feel it really helps me to hire good people. However I ask something that appears to be much simpler than FizzBuzz, and I get interviewees who completely and utterly mess it up. I don't just mean that they write code the compiler would reject -- they write things that are too complex or that aren't in the language we just agreed they were going to write it in -- and when they look over what they've written on the whiteboard they don't see a problem.

Why the blogs went nuts is that commenters to the original post just couldn't resist trying to submit a solution. The general form was "man, you're an idiot, that problem is way too simple, it's just four lines of code! Like this:" immediately followed by a solution that DID NOT WORK. This unintentional hilarity continued with people trying to correct each others solutions and often failing. Then as that started to wind down, the language zealots came along to prove that FizzBuzz solutions posted by random commenters only had errors in them because of the languages the commenters chose, and that a Ruby version or the like would be much easier. Some of those had errors too. Assembly language, Cobol, Perl, ... I'll let you search out those solutions (quality varies) yourself.

But one in particular I really like for its spectacular uselessness while demonstrating great strength with the tool. Can you believe FizzBuzz in C++ compiler error messages?

 T0=boost::mpl::int_<0>,
 T1=boost::mpl::vector<boost::mpl::int_<1>>,
 T2=boost::mpl::vector<boost::mpl::int_<2>>,
 T3=Fizz,
 T4=boost::mpl::vector<boost::mpl::int_<4>>,
 T5=Buzz,
 T6=Fizz,

Take a look at what Adam Petersen has done. Would I hire him? You betcha.

Kate

 

Saturday, 02 June 2007 09:19:01 (Eastern Daylight Time, UTC-04:00)  #    
# Friday, 01 June 2007

During my blogging hiatus, we went live with an aggregating site for Microsoft Regional Directors around the world. The Region aggregates our blog postings, using a human editor to extract posts that are interesting and relevant to a wide audience. It also features upcoming speaking appearance and recent publications by RDs, as well as profiles and bios of us all arranged by geography and technical expertise. (Here's mine.)

Regional Directors are smart and technical, but we're also business focused. We do a lot of speaking and a lot of writing. If you know even one smart RD, let that be an endorsement for the rest of us. Check out the Region and discover some new experts to add to your "blogs I read" or "search hits I trust" list. I'm really proud to call these folks my colleagues.

Kate

Friday, 01 June 2007 09:01:49 (Eastern Daylight Time, UTC-04:00)  #    
# Thursday, 31 May 2007

It's time to get serious about planning my Tech Ed time next week. So far I have these immovable rocks, some of which I hope will be a don't-miss for you too:

I will be spending time at the RD Booth too so if you miss me at one of my sessions, look for me there! I'm hoping to have a fantastic week meeting developers and talking about Vista, C++, and interop in my real world and in yours. I'm also hoping to stay INDOORS as much as I can. Here at home it's in the high 20s even low 30s (Celsius, in other words HOT) but the humidity is nice and low. I know that's not what I'll find once I get to Orlando.

Kate

Thursday, 31 May 2007 11:52:54 (Eastern Daylight Time, UTC-04:00)  #    
# Wednesday, 30 May 2007

Again a blogging pause. Just too darn much work and a fair amount of speaking too. I'll do some "what's upcoming" shortly, but first here are the materials from my talk at the Toronto .NET User Group this week. I helped to found this group five years ago and it was great to be back. I've been doing this Vista talk a lot lately (Code Camp, DevTeach, a webcast last week, and now in Toronto) and it seems like people keep wanting to hear it. It's hard to fit it in a single evening but yes, you can learn what you need to get your app working on Vista in just an hour or two.

The first demo - the one app that has a manifest for the whole thing. Play with the required level or take the manifest away (remove the post build step) to see virtualization. UACDemoSolution1.zip (68.65 KB)

The second demo - the partitioned app with an asInvoker manifest for the overall app and a requireAdministrator manifest for the privileged exe. Also shows how to put the shield on the button. UACDemoSolution2.zip (68.2 KB)

Some fun with the Vista look and the effort VistaBridge saves. CommonFileDialogSolution.zip (1.88 MB)

The deck. ItsVistaTime.zip (790.18 KB) Zipped because the four digit extension seems to be causing a problem. It's .pptx which means you need the viewer for it.

More in the days to come!

Kate

Wednesday, 30 May 2007 23:49:16 (Eastern Daylight Time, UTC-04:00)  #    
# Friday, 30 March 2007

About six months ago, I posted a few UAC screen shots and compared the text on them, the icons (the four colour shield vs a shield with a big exclamation mark) and the colours of the area where the title appears. Now Raymond Chen summarizes those four colours for people who have trouble remembering them.

The more you understand what UAC is saying, the less frustrating you will find it.

Kate

Friday, 30 March 2007 12:09:45 (Eastern Standard Time, UTC-05:00)  #    
# Thursday, 29 March 2007

Nikola Dudar has posted his talk and demos from the MVP Summit and SD West. If you would like to put the STL/CLR through its paces this is a great starting point.

Kate

Thursday, 29 March 2007 12:03:37 (Eastern Standard Time, UTC-05:00)  #    
# Wednesday, 28 March 2007

Apparently your project hash table can get corrupted, and if this happens to you, during a build you will go to 100% CPU and Visual Studio will stop responding. Yuck! There's a hotfix if you need it.

Kate

Wednesday, 28 March 2007 11:59:43 (Eastern Standard Time, UTC-05:00)  #    
# Saturday, 24 March 2007

Oh yes! I have been waiting for the marshaling library for ages! And I just pointed to a VC++ team post about the common controls changes for MFC. Here's the marshaling library in a nutshell:

Back and forth between all the different kinds of strings, various managed and unmanaged types, all the stuff about where things are allocated and how they are freed ... it's usually just 4 or 5 lines of code each time but it's gross and you have to look it up every time. Now these templates will take care of it for you. Beautiful! And on top of that, it's sometimes even faster than doing it yourself the old way!

And check this out, all those who are allergic to angle brackets:

Watch the whole video, of course. Go, Sarita!

Kate

Saturday, 24 March 2007 11:54:14 (Eastern Standard Time, UTC-05:00)  #    
# Friday, 23 March 2007

Eileen Brown wants women who work in technology to answer a quick little survey about what that experience is like. I found some of the questions a bit hard to answer (I don't have a boss, for example) but I did my best. Now you try:

Here’s the link.  Please forward this to all the women you know and support 2 deserving charities...   http://tinyurl.com/22bbax

Kate

Friday, 23 March 2007 11:45:50 (Eastern Standard Time, UTC-05:00)  #