Monthly Archives: November 2005

Caching at the middle tier – hey, I did it!

I’m reviewing my demo that I built for caching data at the middle tier that is part of my query notification session at DevConnections next week – and had a funny moment. I wrote this a while ago and am just revisiting it and felt pretty impressed with myself when I saw how it worked. It’s a little complex but now it seems simple. I used what I learned watching Pablo Castro’s DAT320 session that I have on my TechEd 2005 video as the basis for this. I watched him do it in the video and translated the concepts into a simpler version using VB. I had to deal with some differences in the way static variables interact with shared methods in VB that had me pretty confused (as I’m not so adept with that)  – very different than how Pablo did it in his C# demo. But I did get it working and now have a big satisfied grin on my face. And next week I get to share (show it off) with attendees of my session.

Don’t Forget: www.acehaid.org

My new presentation aid

This is an attempt to alleviate a problem that I have had a few times when presenting. Even though I check the time constantly during my talk (and will be using a travel clock from now on rather than my watch – great tip from Kate Gregory and also they were provided for us at TechEd), I have, on a few occasions gotten so involved with the talk that I couldn’t even remember what time it started or when it was supposed to end. Stupid, right? Hey, let’s just call it “passion”! You should be thrilled that I am so enthralled, eh? 🙂

Well, since I am aware that this is a problem, rather than just saying “well, that’s silly, I can remember next time” I have a better plan of attack!


 No, they are not glued to my laptop. Just laid out on top of it for the photo op.



Don’t Forget: www.acehaid.org

WSE 3.0 to be release on launch day!

yippee!!

What this means of course is that I will be making some last minute changes to my presentation computer 1 day before I do my What’s new in WSE3.0 session at DevConnections. Hey, this is bleeding edge, right? I am willing to take the risk… 🙂

Currently I am running VS2005 RTM with the October CTP bits and having only one issue (which may or may not be related to the out of synch bits).

What is that issue you ask? I can’t seem to do encryption and signing when my webservice is on IIS. When it’s on the development web server, all is well. When I move it to the webservice, I get some wierd problem regarding “decryption” from the Cryptography API. (“Error occurred while decoding OAEP padding”.)  I have given all necessary permissions to the ASPNET account for reading the web server certificate and even as a last straw, gave “Everyone” full access to it. Hopefully, I will either get an answer to my question about this problem on the newsgroup or it will mysteriously disappear when I install the RTM bits. Or… I will have to skip that particular demo :-(, but since that session is in one of the 60 minute slots, that might be a good thing.

Don’t Forget: www.acehaid.org

TCP Tracing and WSE 3.0 – aha! Now I get it.

One of the interesting new features of WSE 3.0 is the use of MTOM and ability to transmit binary data as a Mime attachment. I have seen a few demos of this (one in Mark Fussell’s overview video, the other, a grok talk by John Bristowe) where they used different tcp tracing tools (check out this one from Simon Fell) to see what is truly happening to the attachment over the wire. Last month I tried using the tool that Mark had demo’d with and could never get it to work. Today I used the TCPTrace tool (that’s Simon’s) and was not seeing any messages come through the tcp trace.

This was because, as we all know by now, I am NOT a plumber. I could see Mark setting the Url to a different port in his demo, but when I did that, I was getting an error that my Addressing Actor (on port 8080) was not the same as the real service endpoint (on port 1932).

Mark’s article on What’s new in WSE3.0 even says “if you want to try this out, don’t forget to change the URI” but I could not figure out how.

After some googling I was noticing repeated references not only to Actor but to Via. This finally helped me find the solution.

The goal here (normally only explained in passing by all those plumbers who grok this stuff) is to create an extra little pipe for the message to go through. The trace tool can read from that pipe. We have to lay the one end of the pipe at the true service endpoint (in my case, the one that is on port 1932) and the other end of the pipe we can put on any port we want (I think any ol’ one, but I have mostly seen 8080 used and that’s what I am using myself.). In code, we tell the client where the true endpoint is (the Actor) and the port that we are detouring through (called the Via) . Then the message goes through that pipe where tcp trace is listening and does eventually get poured out into the actual web service. (This happens in reverse also).

So to make it happen, after creating a reference to the proxy in the client, we shove in this information about redirecting the ports:

‘be sure to reference the Addressing namespace

Imports Microsoft.Web.Services3.Addressing

dim wsproxy as new MyWebService()
wsproxy.Destination=new EndpointReference(new Uri(“http://localhost:1932/MyService/MyService.asmx), new Uri(“http://localhost:8080/MyService/MyService.asmx))

Then I tell the tracing utility to listen on port 8080 (my “Via” or detour) and that the destination is at localhost:1932.

And it works. And now I understand it – which I didn’t when I started. Just kept hitting my head with that plumber’s wrench until I figured it out.

Don’t Forget: www.acehaid.org

Task Manager – Can’t Close it?

Have you ever accidentally double clicked on the task manager and lost all means of closing it? I did this the other day and could not for the life of me figure out what had happened to it and where the control bar went and what to do to make it go away! Somehow, I managed to double click on it again in my frustration and realized what was going on.

As far as I can tell, it is impossible to close the task manager once you have done this. But really all you need to do is double click on it again and the control bar comes back and all is normal again.

I can’t understand why this would be a “feature”. It’s awfully confusing.

Don’t Forget: www.acehaid.org

Another view of South Africa

Very coincidentally, there is an art exhibit by Vermont artist, Sally Linder, from her visit to South Africa in 2002 that is on display through the end of this week. I read about it in Seven Days and  went to see it a few days ago. We passed by some of the tin house shantytowns at 60+ miles per hour as we went from the bustle of the airport to the fantasy of Sun City (with it’s not so fantastic past). Sally Linder went to South Africa and straight to the shanty towns as part of the Ark of Hope project. She visited the well-known Soweto and two other towns, Zandspruit and Diepsloot where she met and painted portraits of the residents and their life there. Although I am very excited by the potential of what I saw at TechEd, what she shares in her paintings and words reflecting her experience there is a reminder of how far there is to go. My hope is that the impact of the developer community in South Africa benefits all of South Africa’s citizens and this only builds on my desire to work more closely with the SA Developer community, which began while I was there.

Don’t Forget: www.acehaid.org

Conferences and my social life

One of the things that I am looking forward to at DevConnections in Las Vegas (besides the conference, besides the sessions and besides to my return to Coral Reef where I Kathleen Dollard and I ate 3 nights in a row last year…) is seeing my friends that I only see from one conference to the next. Although I’ll definitely miss Alex Homer and Dave Sussman (and didn’t see them in October as i didn’t go to the MVP Summit), there is a whole host of friends and people who I admire and really enjoy a chance to chat with, who are speaking at Connections (too many to list) that really make these events extra special. Take a look at the speaker list for VSConnections, ASPConnections, SQLConnections and the special 20th anniv C++ Connections (which is bringing together the C++ elite – many academics as well as practioners).

This is of course only enhanced by all of the conference attendees as well. Last spring, I had a great time hanging out at the INETA booth in the exhibitors hall and helping people find user groups in their area or even encouraging them to start one! Getting a chance to “expand” on the sessions is also great – there is only so much you can cover in the time frame of the sessions – and it’s fun when people are interested in digging further into a particular area over lunch or a beer or just hanging out in the common area.

When it gets close to time to leave home, leave my beautiful little state, leave my pets and hubby behind, I start getting sad and wondering why I have chosen to do this. But as soon as I arrive at the conference hotel and am immersed in the buzz of so many people with the same passions as myself, there is no question as to why I am there.

One new entry to the Connections conference is Charles Petzold who is going to talk about ink as a new medium for developing applications. You should have seen Charles doing his tablet pc talk last winter at Windows Anywhere. It was a rare opportunity to actually watch him think as he demonstrated how one experiment led him to another and then another. I sure hope his talk is not scheduled at the same time as any of mine.

Don’t Forget: www.acehaid.org