June 7, 2003
@ 12:58 AM
I was quite nervous when I started my talk and it showed. Most of the feedback for my talk contained one or more of the following sentiments
  1. The speaker seemed knowledgeable about the topic.
  2. The speaker was nervous while talking.
  3. The speaker should have provided more samples especially since his talk ended 30 minutes early.
The last was especially damning and was shared by most of the attendees that bothered to post comments. This was entirely my fault. I assumed the crowd would be familiar with XSD and the terminology around it without considering the fact that without examples statements like "xs:key/xs:keyref is preferable to using xs:ID/xs:IDREF because the former can provide scoped identity constraints while the latter do not" are hard to follow.

The only sample/demo I showed was how to actually work around an issue that has bothered me about ASP.NET Web Services for a while. I showed how to use a custom SoapExtension to perform Schema validation of incoming SOAP Messages according to the schema defined in the WSDL types section. This gets around that by default an ASP.NET web method does not ensure that an incoming SOAP message actually conforms to the schema described in the WSDL, instead it just checks to see if the SOAP message "kinda looks like it conforms to the schema". This is due to limitations in the XmlSerializer some of which I described in my article on XML Serialization in the .NET Framework.

I need to talk to the TechEd folks to see if I can post my slides and code online. If I can't it probably isn't a great loss, the schema guidelines are based on the ones in my W3C XML Schema Design Patterns: Avoiding Complexity piece while the stuff on custom SoapExtension objects that perform validation should show up in an upcoming MSDN Magazine article by Aaron Skonnard.

The good thing about the negative reaction to my talk is that the worst has happened. I gave a talk, it sucked, now I no longer feel nervous about giving a talk. At least it can't suck as much as my TechEd talk did. :)

With any luck I should get another talk at speaking during PDC