The World’s Leading Microsoft .NET Magazine
   
 
The .NET Addict's Blog

My Top Tags

                                                           

My RSS Feeds








Latest Diggs - Programming

Internet Blogs - Blog Top Sites

Site Hits

Total: 2,502,635
since: 19 Jan 2005

Murphy's Law of Demos in Full Force Tonight - CLINQ demo at NYC .NET UG

posted Thu 21 Feb 08

So tonight I was at the NYC .NET User's Group which is, obviously, in New York City. I was giving a demonstration of some CLINQ functionality. One of my demos is the Network Messaging Demo which you can find on CodePlex with the 1.0 release of CLINQ (don't worry, I'll be updating the releases to 1.0.0.1 shortly). Anyway, this demo application suite has a console application which is broadcasting messages on a peer mesh, and a listener WPF app that is receiving messages on that mesh.

The idea behind the demo was to illustrate how I can write CLINQ queries to split the network messages into two bins automatically and have the UI bind to the right data without having to write a background polling loop. Right before the presentation, I think two or three people were in the room, I got the networking demo application working. WCF was fine with my broadband network card (the peer mesh doesn't work when you have no active NICs!!) and everything was peachy. For a few brief, shining moments of pure demo bliss, everything was awesome.

Then I get into the presentation, start up PowerPoint, everything is rolling alone. I decide to switch over to the networking demo and what happens? Nothing. I get a blank window. The console app starts up and hangs and the WPF app starts up and hangs with no visible window. Turns out that both apps were locked because the ports were hung and not responding for some reason. As I sit here typing this, my damn networking demo is running properly in the background.

First of all I want to thank the nice folks in the NYC .NET UG for having me out to spew my lambda love. Second, I would like to state that Murphy and his laws can kiss my ass. The moral of the story is that I should not be doing demos that involve networking in front of live audiences - it's too brittle. This means I'll have to come up with another demo that involves more transformers!!

I will have the slides from my presentation made available either through this blog or uploaded on to CodePlex, though I probably won't get to it tomorrow since I won't get home off the train until 10:30ish (I'm on the train now...). I'll also update the network messaging demo documentation and possibly the CLINQ FAQ to include a note about how you must have a non-localhost IP address to take part in a peer mesh, even if all your apps are running locally.

All in all the presentation went well and I loved answering questions. There's a truckload of really smart people in NYC with lots of great ideas and I got some ideas for ways to improve CLINQ that I think might come in handy, such as support for continuous aggregates and maybe some other goodies. Looking forward to being back with the NYC .NET UG folks again, and maybe having better demo luck the next time I show off CLINQ :)

tags:        

links: digg this    del.icio.us    technorati    reddit




1. Quest4Denali left...
Thu 21 Feb 08 9:43 pm

Was a great speech, although not a big fan of LINQ your demo of language extensions left me with a ton of new ideas.

Thanks for stopping the group.


2. Johnmshea left...
Fri 22 Feb 08 6:22 am

O'Callahans law says that Murphy was an optimist. Seriously though I read somewhere that the original Murphy was a tester (a sergeant?) at the JPL or one of those similar American organisations that developed high speed jet planes and rockets. He was reknown for testing how far the human body can be stressed under higher G forces. Apparently after one gravity sled smashed off the end of a runway, he crawled out all bloody asking "what was the reading, what was the g - force?" But the instrumentation was wired wrongly. He then stated (which was later misinterpreted another way) - something like "If there is more than one way for something to go wrong it will, therefore steps should be taken so that there can be only one (preferred) result". I am sure it was not so clumsy, but in any case he meant that the design of the wiring of the sled should be such that it could only ever be functional . I would say a somewhat difficult task, but for software demos - an impossible task. But then again perhaps its an urban myth and some Irish Leprechaun is laughing away at every IT conference.


3. Kevin Hoffman left...
Fri 22 Feb 08 6:29 am

That's fascinating background information on Murphy ... I love that kind of detail. I generally like to write my demos in such a way that there are no known ways it can fail - I try and run the demo on 3 or 4 different machines... I just didn't anticipate windows firewall blocking the ports on me. I looked and sure enough, 50000 and 50001 had been disabled.


4. Sung left...
Fri 22 Feb 08 8:52 am

I have enjoyed your speech last night although I have felt that it was a bit shorter than I expected wanting to know more about it.

Because of that failed network demo (left/right bin stuff) I was eager to check out what had happened on your blog so I guess that demo did encourage me to check your site out ;)


5. Quest4Denali left...
Fri 22 Feb 08 10:16 am

Kevin, just re-read my post. I meant to say thanks for stopping by the group. Even with all of the snow here in NYC we're looking at how we can implement CLINQ within our Business Logic engine to provide iteration tracking support.


Tag Related Posts

CLINQ v1.1.0.0 Released!

Fri 02 May 08 5:38 P GMT-05
tags:          

CLINQ v1 Demo - Network Message Filtering

Wed 09 Jan 08 7:47 P GMT-05
tags:        

Continuous LINQ v1.0.0.0 Released

Tue 08 Jan 08 4:53 P GMT-05

Building a Ledger Style for WPF Grids

Tue 21 Aug 07 3:30 P GMT-05
tags:    

Continuous LINQ - Can I write games with it?

Mon 13 Aug 07 3:09 P GMT-05
tags:        

Continuous LINQ

Mon 06 Aug 07 1:21 P GMT-05
tags: