Wednesday, November 09, 2005

Really ... I wish I could just go to all of the amazing sessions around me. So many things I haven't explored yet in VS2005 that I could  be learning!! Though of course, I'm thrilled to be able to share what I have learned by giving the sessions. So I will just keep working at making my own sessions as good as I can.

I did sit in on a bit of Kathleen Dollard's "Polishing your Winforms Apps" session this morning. There is just so much to learn...

There are a LOT of attendees here this year. I overheard someone (not official) say something like 3000. That would be amazing. I think it was 1600 last year.



Posted from BLInk!
Wednesday, November 09, 2005 2:39:50 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
I plan to show off this mega visualizer in my Debugger Visualizer session today as well as the DateTime visualizer that John Mueller wrote for his DevSource article.

Posted from BLInk!
Wednesday, November 09, 2005 9:47:13 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

I will be doing a session on Tablet PC development at GUVSM.NET on December 12th. This is sponsored by the MSDN Canada Speaker Bureau. A beautiful time of year (though perhaps a wee bit frigid) to visit a beautiful city. I plan to stay an extra day to see the Provence exhibit at the museum of Fine Arts.



Posted from BLInk!
Wednesday, November 09, 2005 9:31:29 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

There's nothing like planning ahead! I will be visiting 3 user groups in late June (yes that's 2006) in Canada's Atlantic provinces. Places I have wanted to go for a long time so I am thrilled to be able to visit the groups and see these beautiful provinces at the same time. I will be going to INETA groups in Moncton New Brunswick, Halifax Nova Scotia and St. John's Newfoundland. Thanks to Amanda Murphy and Derek Hatchard for having me and also accommodating a schedule that allowed me to spread the talks out so that I can explore these magical places.



Posted from BLInk!
Wednesday, November 09, 2005 9:28:39 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

it came to me in an email from my sister and was too funny not to share...



Don't Forget: www.acehaid.org
Wednesday, November 09, 2005 8:54:34 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
WSE 3.0 is now fully released. Thanks to Mark, Sidd (the two I worked with most closely) and the whole team for all the work on this great product that I love to love. Hmm, I wonder if my session on Thursday will be the first presentation to use the full release of wse 3.0? Too bad it's only a one hour slot...

Posted from BLInk!
Wednesday, November 09, 2005 1:13:14 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

They are both sessions that I am doing tomorrow.

Customizing your Debugging Experience at 8am (gotta talk to Carl about those 8am sessions) and then my favorite ado.net 2.0 topic at 2pm. Tomorrow. Vegas. DevConnections.



Posted from BLInk!
Wednesday, November 09, 2005 12:53:09 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Tuesday, November 08, 2005
Where better to talk about the MenuStrip, ToolStrip and other cool new WinForms controls but in Las Vegas. Jessica Fosler who owns these pieces of VS2005 WinForms is presenting today. Unfortunately, I'm now up in my room prepping my own 4 sessions but definitely enjoyed meeting her this morning in the speaker room. Charles Petzold was there who's new Programming Windows Forms (for VS2005) book has an entire chapter called "Cruising the Strip" in his book about these tools. Being in Las Vegas had us all giggling over the possibilities of jokes Jessica could make in her presentation. Hopefully, we didn't corrupt her too much.

Posted from BLInk!
Tuesday, November 08, 2005 4:31:04 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Monday, November 07, 2005

Typical - must leave for the airport in 1/2 hour and have been doing client work all morning. Still have to pack (thank goodness I washed all my clothes already). Hopefully my travelling duds aren't too wrinkly!

I am so looking forward to another DevConnections conference and then a vacation in Zion National Park and Bryce Canyone with my husband!



Don't Forget: www.acehaid.org
Monday, November 07, 2005 12:01:55 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

This story on Mena Trott is linked on the home page of cnn.com.



Don't Forget: www.acehaid.org
Monday, November 07, 2005 11:59:13 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

I found this article by way of VT blogger, Mark Chadwick.

Vermont ranked as smartest state in the country

BARRE, Vt. --Vermont is the brightest state in the country, according to a Kansas publisher.

Morgan Quitno Press ranked Vermont at the top of the list, ahead of Connecticut, which was second, followed by Massachusetts, New Jersey and Maine.

"Vermont shines in many key areas of education," said Scott Morgan, president of Morgan Quitno Press. "A high percentage of its students excel in reading, writing and math. In addition, schools in Vermont have smaller class sizes and lower pupil-teacher ratios than in most other states."

The publisher compiled its yearly list of the smartest states measuring 21 factors.

Last year, Vermont ranked third, and second the year before.

Arizona was at the bottom of the list, below Mississippi, New Mexico, Nevada and California.

The publisher also says Vermont is the healthiest state, the second safest and the third most livable.

That was nice to hear after seeing Fortune's (I think that's where it was, but I can't find it) list showing Vermont as the #6 most unfriendly state when it comes to taxes - 6th highest ratio of taxes vs. household income.



Don't Forget: www.acehaid.org
Monday, November 07, 2005 9:38:54 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

MSDN Nuggets has a bunch of short videos (similar to hte great 10 minute groktalks) on how to do a variety of things in .net.

I caught this one by Mike Taulty that is on hosting windows forms controls in asp.net. What I really liked is the way he demonstrated the code access security issues that you have to be aware of. Rather than saying "don't do this", he did do it and showed what happens. Nice.

Follow the above link and look for "Hosting a WinForms Control on an ASP.NET web page".

One thing that really surprised me was seeing Mike's email on the beginning of the video. I had no idea he worked for Microsoft!



Don't Forget: www.acehaid.org
Monday, November 07, 2005 9:11:09 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Sunday, November 06, 2005

If you are going to DevConnections and plan to get outdoors:



Don't Forget: www.acehaid.org
Sunday, November 06, 2005 6:50:03 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

The rules for using Query Notification have finally settled after evolving through all of the betas and ctps. Here they are copied and pasted directly from the msdn help files:

Applications that use query notification features need to take into account the following special considerations.

Valid Queries

Query notifications only support certain Transact-SQL statements.

First, to support notifications, queries must not contain:

  • Derived tables.

  • Rowset functions.

  • The UNION operator.

  • Subqueries.

  • Outer or self-joins.

  • The TOP clause.

  • The DISTINCT keyword.

  • A COUNT(*) aggregate.

  • AVG, MAX, MIN, STDEV, STDEVP, VAR, or VARP aggregates.

  • User-defined aggregates.

  • A SUM function that references a nullable expression.

  • The full-text predicates CONTAINS or FREETEXT.

  • A COMPUTE or COMPUTE BY clause.

  • Aggregate expressions if GROUP BY is not specified in a select list. If GROUP BY is specified, the select list must contain a COUNT_BIG(*) expression, and cannot specify HAVING, CUBE, or ROLLUP.

  • An INTO clause.

  • Conditions that will preclude results from changing (e.g. WHERE 1=0).

  • FOR BROWSE (or be running with SET NO_BROWSETABLE ON).

  • A READPAST locking hint.

Second, queries must not reference:

  • Temporal tables or table variables.

  • Tables or views from other databases or servers.

  • Any other views or table-valued functions.

  • Any system tables or views.

  • Any nondeterministic function, including ranking and windowing functions.

  • Any server global variables.

  • Any Service Broker queue.

  • Synonyms.

Finally, queries must reference a base table or view.

Rapid Updates

An application that uses Query Notifications must take into consideration cases where a notification occurs immediately. When data is changed on the server, a notification message will be sent to the appropriate Service Broker queue. Applications need to reregister to receive additional notifications. Therefore, if a data set is updated quickly by multiple applications, an application could receive a notification, retrieve the data, and then get another update notification almost immediately after the cache has been refreshed. Applications that use Query Notifications must be written to take this case into account. If an application uses data that is constantly updated, another strategy for caching data may be more appropriate.

Transactions

If multiple modifications are made to a set of data with a registered notification request, and those changes occur within a transaction, only a single notification event will be sent.

Service Account for SQL Server

An application will not receive notifications from an instance of SQL Server that uses the Local System account as the service account.



Posted from BLInk!
Sunday, November 06, 2005 5:24:09 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
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
Sunday, November 06, 2005 4:11:39 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

I might be speaking at some pennsylvania groups this summer for INETA. I mapped them out on Virtual Earth so I could visualize where they were relative to one another, then it was easy to share the scratchpad with the user group leaders and Nancy Mesquita who is the coordinator so they could see the same map..

Very handy.



Don't Forget: www.acehaid.org
Sunday, November 06, 2005 12:49:32 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

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
Sunday, November 06, 2005 12:05:24 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

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
Sunday, November 06, 2005 11:42:17 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Saturday, November 05, 2005

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
WSE
Saturday, November 05, 2005 3:56:16 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

One of the bloggers I was so happy to finally meet in person was Hilton Giesenow.

He didn't get to stay at TechEd for long, but Kate did manage to get this picture ... Hmmm I think this is when I was trying to figure out why none of my usb devices were being recognized.



Don't Forget: www.acehaid.org
Saturday, November 05, 2005 9:56:31 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  |