# Sunday, May 28, 2006

A little bird shared with me the snack highlights for Tech Ed 2006:

1,250,000 pieces of "Mikes & Ikes" will be consumed over the course of a week at Tech Ed 2006
18,750 pounds of salad will be prepared and offered at meals
83,700 ice cream novelty/ fruit and yogurt bars have been ordered for this function
60,000 eggs will be eaten by attendees at breakfast (this is equal to 4,800 dozen cartons of eggs)
It will take 4 semis to transport the 150,000 bottles of water consumed on this show
The total amount of fruit ordered will fill 3/4 of full size tractor-trailer
1.6 million ounces of coffee will be poured and consumed (conservative estimate)
More than 50,000 pounds of carbohydrates will be consumed at Tech*Ed (Atkins who?)
1,500 table cloths will be used and re-set on a daily basis:  (7,500 for the week)
A minimum of 2,000 antacid tablets are likely to be consumed at this event

Now it just so happens that after my very first Tech Ed (Dallas, 1999, as an attendee on a press pass) I got some stats on snacks that year:

183,000 Bottles of Logo Water
14,000 Gallons of Coffee
8, 000 Gallon of Iced Tea
38,000 pints of Milk
37,500 link sausages = 337,500 inches 28,125 feet, 9,375 yards or 5.32 miles.
27,000 Granola Bars
69, 000 Lemon wedges or 11,500 lemons... 275 Trees worth.
200,000 creamers for coffee
333,000 packets of Sugar
27,000 apples
36,000 bananas
3500 pounds of scrambled eggs
7700 Omelets
110,000 Soft Drinks

Anyone care to compare and contrast?


Sunday, May 28, 2006 7:57:27 AM (Eastern Daylight Time, UTC-04:00)  #    
# Saturday, May 27, 2006

I'm surely not the only one who's noticed that most of the blogs by members of the Visual C++ team have one thing in common: they're not updated terribly often. Typically there's one team member (maybe someone with insomnia?) updating one while the others languish. So now it seems they've decided to make a group go of it with the Visual C++ Team Blog. It appeared yesterday and has had two entries so far. I hope it gets lots of updates!


Saturday, May 27, 2006 6:14:19 PM (Eastern Daylight Time, UTC-04:00)  #    
# Friday, May 26, 2006

Our free "what is SharePoint" seminar went off without a hitch on a grey cool Peterborough afternoon. The recurring theme from attendees, as well as some contacts I invited who couldn't make it, was "is it really free? How can that be?" Windows SharePoint Services really is free with Windows Server 2003. Here's a quote from the Microsoft site:

Now shipping as part of Windows Server 2003 R2 or available for download at no additional charge, Microsoft Windows SharePoint Services technology in Windows Server 2003 is an integrated portfolio of collaboration and communication services designed to connect people, information, processes, and systems both within and beyond the organizational firewall.

It really is free. Tell your friends!

We got a few inquiries from folks who lived a little too far away to attend and they asked about a webcast or another location. Please leave a comment if you or someone you know would like to attend one of these, either real or virtual. We just spent an hour and a half putting WSS through its paces and showing what it does out of the box.


Friday, May 26, 2006 4:37:49 PM (Eastern Daylight Time, UTC-04:00)  #    
# Thursday, May 25, 2006

I came across a page full of pictures that play with perspective and scale:

The artist's page gives you thumbnails that don't always show the cool part of the picture. This fan page has a whole pile of them all one after another to get you started seeing how they work. There are more at the artist's page though, plus instructions on how you can buy prints, so even if you start at the fan page, you should end up at the artist's page. According to Wikipedia and another article I found recently, he's a Canadian who illustrates children's books and wins awards for it. That explains all the snow, moonlight, and autumn leaves, I guess :-).


Thursday, May 25, 2006 11:37:17 AM (Eastern Daylight Time, UTC-04:00)  #    
# Wednesday, May 24, 2006

While helping a client with the mechanics of localization recently, I came across a very thoughtful blog entry. It goes beyond what properties you set on a form or what method you call to look up a resource, and instead talks about some of the project management aspects of localization. If you have any chance that you'll need alternate language support, you should read this post. He talks to timing (too soon and translators will translate buttons that later go away or have a name change, but don't wait too long because it's hard to estimate how long translating and testing will take), QA, reuse, and context. Excellent things to consider before you start building those satellite assemblies.


Wednesday, May 24, 2006 10:54:06 AM (Eastern Daylight Time, UTC-04:00)  #    
# Tuesday, May 23, 2006

If you don't subscribe to the Flash, you really should. It's an email notification about upcoming events, training, webcasts, case studies, and other information sources. You can personalize it so you only get information you care about, and you'll always be "in the loop" about upcoming opportunities.

Right now, they're running a pair of contests around the Flash:

  • New subscribers to MSDN Flash who sign up before June 28 2006 are entered into a draw for a $16,800 desktop prize package.

  • Existing subscribers (like me) who personalize their subscription before June 28, 2006 could win a $5,000 Microsoft Training Package.

Not bad, eh? Just the other day someone asked me "how do you find all these webcasts and things?" The Flash is how.



Tuesday, May 23, 2006 10:22:57 AM (Eastern Daylight Time, UTC-04:00)  #    
# Monday, May 22, 2006

My parents both originally trained as physicists (one is now a high voltage researcher and inventor of amazingly compact power supplies, the other an world expert in software QA) and so I grew up learning and knowing things most people didn't. I was often surprised that people hadn't heard of certain scientists or their work.

I knew all the experiments on this list, and they are all beautiful and simple (the mathematician still lurking in me always gives points for elegance) and if you are at least a little familiar with them, you will "get" how our world works a little better. Physicis is cool after all: I can say this despite my father's characterization of chemistry and chemical engineering (my degrees are in chemical engineering) as "Stir well" and "Pump well" respectively. Some of them go back hundreds of years (one is thousands of years ago,) and each is illustrated with a little animated gif that really does help you to understand them.

Take a look!


Monday, May 22, 2006 7:31:10 AM (Eastern Daylight Time, UTC-04:00)  #    
# Sunday, May 21, 2006

As most of my readers know, there are three kinds of managed-to-native interop available to the C++/CLI programmer using Visual Studio 2005, as there were to the Managed C++ programmer using Visual Studio 2002 or 2003. Those are COM Interop, P/Invoke, and C++ Interop (formerly and more colourfully known as It Just Works Interop.) COM Interop is slow, but if you have a COM component already written, maybe in VB 5 or something, it's just the ticket. P/Invoke is good for C-style DLLs, and popular with people who want to call into the Windows API. C++ Interop is the easiest (say it with me: include the header, link to the lib) and fastest, and it's available only from C++.

So why would a C++ dev, who can just include-the-header-link-to-the-lib, ever use P/Invoke? Because it handles marshalling and translation for you. Take a look at this (reasonably old) post by Kenny Kerr. He includes this function in the post:

[DllImport("Native.dll", PreserveSig=false, CharSet=CharSet::Unicode)]
bool BrowseForComputers(IntPtr parentWindow,
                        bool multiSelect,
                        [MarshalAs(UnmanagedType::SafeArray, SafeArraySubType=VarEnum::VT_VARIANT)]
                        array<String^>^% computers);

That would be pretty grody work without P/Invoke. Let the feature help you where it can.


Sunday, May 21, 2006 7:22:49 AM (Eastern Daylight Time, UTC-04:00)  #