<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">XML Eye for the Object Guy</title><subtitle type="html">Tim Ewald embraces the XML lifestyle...</subtitle><id>http://blogs.msdn.com/tewald/atom.xml</id><link rel="alternate" type="text/html" href="http://blogs.msdn.com/tewald/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blogs.msdn.com/tewald/atom.xml" /><generator uri="http://communityserver.org" version="2.1.61025.2">Community Server</generator><updated>2003-04-09T04:42:00Z</updated><entry><title>Posting again!</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/tewald/archive/2004/06/28/168001.aspx" /><id>http://blogs.msdn.com/tewald/archive/2004/06/28/168001.aspx</id><published>2004-06-28T21:50:00Z</published><updated>2004-06-28T21:50:00Z</updated><content type="html">But at a new location: &lt;A href="http://www.pluralsite.com/tewald/default.aspx"&gt;http://www.pluralsite.com/tewald/default.aspx&lt;/A&gt;.&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=168001" width="1" height="1"&gt;</content><author><name>tewald</name><uri>http://blogs.msdn.com/members/tewald.aspx</uri></author></entry><entry><title>Post-PDC pondering...</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/tewald/archive/2003/11/05/57296.aspx" /><id>http://blogs.msdn.com/tewald/archive/2003/11/05/57296.aspx</id><published>2003-11-06T04:48:00Z</published><updated>2003-11-06T04:48:00Z</updated><content type="html">&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;
    &lt;p&gt;
        Back from PDC, mailbox dealt with, finally some time to post...
    &lt;/p&gt;
    &lt;p&gt;
        As &lt;a href="http://www.davidmcnamee.com/PermaLink.aspx/95994ff4-18d3-432e-b01d-2224432e21b5"&gt;David&lt;/a&gt; observes,
        for many of us last week was a wonderful whirlwind of &lt;a href="http://msdn.microsoft.com/Longhorn/understanding/pillars/Indigo/default.aspx"&gt;Indigo&lt;/a&gt; and &lt;a href="http://www.gotdotnet.com/team/dbox"&gt;Don&lt;/a&gt;,
        blended together&amp;#160;from Monday through Thursday.&amp;#160;Here are some thoughts...
    &lt;/p&gt;
    &lt;p&gt;
        Like&amp;#160;everyone I know, I'm in love with Indigo. The reason is&amp;#160;simple: the
        layered API hits the sweet spot.&amp;#160;It used to be that&amp;#160;building&amp;#160;distributed
        apps meant writing sockets code. Then along&amp;#160;came RPC and object RPC&amp;#160;systems
        that encapsulated grungy details behind a programming model. Hiding the details was
        good, the programming model was okay - except when it wasn't. Unfortunately, with
        those frameworks, you didn't have much choice. Indigo, in contrast, layers functionality
        so that hiding the grungy communication details doesn't mandate a particular high-level
        programming model. You get security, reliability, transactions, etc., whether you
        choose to deal directly with XML messages, map message bodies to object models, use
        simple request/response message exchange patterns or something more complex, or whatever.
        In short, you can build communication models the way you want without having to go
        back to sockets and do everything yourself. That is exactly where I want to be.
    &lt;/p&gt;
    &lt;p&gt;
        Don's talk introducing SOA on Monday afternoon was the best one I've seen him give
        in a long time. I've learned a lot about being a speaker from Don and it was great
        to see him deliver that performance.
    &lt;/p&gt;
    &lt;p&gt;
        Finally, I had the pleasure of spending&amp;#160;time with Steve Lucco, who works on Indigo
        with Don. Steve joined my wife Sarah as a lead vocalist in Band on the Runtime. He's
        really really smart and a great guy to hang out with. (Also, Steve's rendition of
        CPU Bound gets my vote for most hummable BotR tune, it's been stuck in my head for
        days.)
    &lt;/p&gt;
    &lt;p&gt;
        &amp;#160;
    &lt;/p&gt;
&lt;/body&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=57296" width="1" height="1"&gt;</content><author><name>tewald</name><uri>http://blogs.msdn.com/members/tewald.aspx</uri></author><category term="PDC" scheme="http://blogs.msdn.com/tewald/archive/tags/PDC/default.aspx" /><category term="Indigo" scheme="http://blogs.msdn.com/tewald/archive/tags/Indigo/default.aspx" /></entry><entry><title>Speaking at PDC</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/tewald/archive/2003/09/30/57295.aspx" /><id>http://blogs.msdn.com/tewald/archive/2003/09/30/57295.aspx</id><published>2003-10-01T03:01:00Z</published><updated>2003-10-01T03:01:00Z</updated><content type="html">&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;
    &lt;p&gt;
        Cleaning out my inbox after vacation, I find a note pointing me to this &lt;a href="http://www.btjdotnet.net/blog/PermaLink.aspx?guid=2a65c4c5-eaff-48a5-8792-a394a1406e25"&gt;post&lt;/a&gt; from
        Brian Jackson, wondering if I'll be speaking at PDC. Yes, and I'm looking forward
        to it. &lt;a href="http://www.gotdotnet.com/team/dbox"&gt;Don&lt;/a&gt;, &lt;a href="http://www.gotdotnet.com/team/mgudgin"&gt;Martin&lt;/a&gt; and
        I are going to deliver the pre-conference tutorial on XML and Web services. It'll
        be just like the old days... :-)
    &lt;/p&gt;
&lt;/body&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=57295" width="1" height="1"&gt;</content><author><name>tewald</name><uri>http://blogs.msdn.com/members/tewald.aspx</uri></author></entry><entry><title>Sharing the fruits of summer's labors</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/tewald/archive/2003/09/19/57292.aspx" /><id>http://blogs.msdn.com/tewald/archive/2003/09/19/57292.aspx</id><published>2003-09-20T00:23:00Z</published><updated>2003-09-20T00:23:00Z</updated><content type="html">&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;
    I did a lot of XML work over the summer. One of the byproducts was a &lt;a href="http://www.gotdotnet.com/team/tewald/xmlreaders.zip"&gt;pair
    of XML readers&lt;/a&gt;. The XmlElementReader wraps an XmlReader that is positioned on
    an Element node and allows you to read that element, but nothing more. It's useful
    for passing an XmlReader to a method, but ensuring that it only consumes the current
    element and nothing more. The XmlInscopeNamespaceReader also wraps an XmlReader. It
    provides&amp;#160;a method to lookup all of prefix/namespace URI bindings that are inscope
    at any given time.&lt;/body&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=57292" width="1" height="1"&gt;</content><author><name>tewald</name><uri>http://blogs.msdn.com/members/tewald.aspx</uri></author><category term="XML" scheme="http://blogs.msdn.com/tewald/archive/tags/XML/default.aspx" /><category term="System.Xml" scheme="http://blogs.msdn.com/tewald/archive/tags/System.Xml/default.aspx" /></entry><entry><title>I'm on MSDN TV</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/tewald/archive/2003/09/19/57287.aspx" /><id>http://blogs.msdn.com/tewald/archive/2003/09/19/57287.aspx</id><published>2003-09-19T23:51:00Z</published><updated>2003-09-19T23:51:00Z</updated><content type="html">&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;
    &lt;p&gt;
        As &lt;a href="http://staff.develop.com/candera/weblog2/PermaLink.aspx/8b92ee28-480c-4bc7-93f6-fcb63ad75310"&gt;Craig &lt;/a&gt;noted,
        my talk from the Applied XML DevCon in Portland, OR last August is now online courtesy
        of &lt;a href="http://msdn.microsoft.com/msdntv/default.aspx"&gt;MSDN TV&lt;/a&gt;! It's in two
        parts, here are links to &lt;a href="http://msdn.microsoft.com/msdntv/episode.aspx?xml=episodes/en/20030916WebServicesTE/manifest.xml"&gt;part
        1&lt;/a&gt; and &lt;a href="http://msdn.microsoft.com/msdntv/episode.aspx?xml=episodes/en/20030918WebServicesTE/manifest.xml"&gt;part
        2&lt;/a&gt;. I had a great time at that show, and this was a really fun talk and had a big
        impact on people (like Rich, who mentions it &lt;a href="http://webservices.xml.com/pub/a/ws/2003/09/02/typeless.html"&gt;here&lt;/a&gt;).&amp;#160;Lot's
        of people at the show and via email have asked for more info about the ideas I talked
        about. I haven't had time to write something up yet, I'm hoping to do it when I'm
        back from next week's vacation.
    &lt;/p&gt;
&lt;/body&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=57287" width="1" height="1"&gt;</content><author><name>tewald</name><uri>http://blogs.msdn.com/members/tewald.aspx</uri></author><category term="XML" scheme="http://blogs.msdn.com/tewald/archive/tags/XML/default.aspx" /></entry><entry><title>I need to clarify...</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/tewald/archive/2003/09/12/57286.aspx" /><id>http://blogs.msdn.com/tewald/archive/2003/09/12/57286.aspx</id><published>2003-09-12T21:47:00Z</published><updated>2003-09-12T21:47:00Z</updated><content type="html">&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;
    &lt;p&gt;
        Reading Micheal M's comment, I realized that I was not clear enough in my last post.When
        I said I didn't want to think about security, I meant &lt;em&gt;as a plumber&lt;/em&gt;. Part
        of my responsibility &lt;em&gt;as the designer or developer of an application&lt;/em&gt; is, as
        Micheal M, says, to think about everything as a possible security hole. He is absolutely
        right and I did not intend to imply otherwise. 
    &lt;/p&gt;
    &lt;p&gt;
        But&amp;#160;I need help. I can't write my own cryptography engine. I don't have the time,
        and, more importantly, I won't get it right. Similarly, I don't want to have to write
        my own SSL hand-shake to establish a secure channel with an HTTPS endpoint.&amp;#160;Luckly,
        those things are provided for me by my platform. However, that doesn't mean I get
        to abdicate all responsibility. At the very least, I have to:
    &lt;/p&gt;
    &lt;ul&gt;
        &lt;li&gt;
            Make sure I understand how these technologies work and I know how to use them correctly&lt;/li&gt;
        &lt;li&gt;
            Decide how to use these technologies to my application so that I ensure data integrity
            and confidentiality wherever it's required&lt;/li&gt;
        &lt;li&gt;
            Make sure I test my application to ensure that the technology does what I expect it
            to&lt;/li&gt;
        &lt;li&gt;
            Make sure I keep my platform up-to-date with patches that fix security holes&lt;/li&gt;
    &lt;/ul&gt;
    &lt;p&gt;
        SSL strikes a reasonable balance. I don't have to worry about implementing the cryptography
        or handshake protocol myself. I do have to worry about when and how I use it, keeping
        my implementation patched, and whether or not the cert presented to the client does
        in fact identify the server. That's tractable for me with my level of security expertise.
    &lt;/p&gt;
    &lt;p&gt;
        My point about &lt;a href="http://www-106.ibm.com/developerworks/webservices/library/ws-secure/"&gt;WS-Security&lt;/a&gt; and
        all the threads about &lt;a href="http://ws.microsoft.com/MsComService/MsCom.asmx"&gt;MsComServices &lt;/a&gt;was
        that I need to get more from my platform. I want to get replay detection and secure
        channels from my platform. As with SSL, I will still have to think long and hard about
        how and when to use these features, make sure I keep my implementation up-to-date,
        and test my implementation to make sure it works. But I won't have to implement everything
        myself.
    &lt;/p&gt;
    &lt;p&gt;
        Things are moving in the right direction with the &lt;a href="http://msdn.microsoft.com/webservices/building/wse/default.aspx"&gt;WSE
        2.0 Tech Preview&lt;/a&gt;. &lt;a href="http://msdn.microsoft.com/webservices/building/wse/default.aspx"&gt;WSE
        1.0&lt;/a&gt; provided the atoms for &lt;a href="http://www-106.ibm.com/developerworks/webservices/library/ws-secure/"&gt;WS-Security&lt;/a&gt;.
        2.0 provides molecules like &lt;a href="http://msdn.microsoft.com/ws/2002/12/ws-secure-conversation/"&gt;WS-SecureConversation&lt;/a&gt;.
        Increasing the level of abstraction in this way is key.
    &lt;/p&gt;
    &lt;p&gt;
        Thanks for raising this point Micheal. I don't wany anyone to think that I or anyone
        else at Microsoft is not VERY concerned about making software more secure. Ironically,
        I actually see removing myself from the lower level implementation details as a way
        to increase the security of my software. Using the right security features from my
        platform is a better choice, as long as I do so responsibly (see the bullet list above).
    &lt;/p&gt;
&lt;/body&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=57286" width="1" height="1"&gt;</content><author><name>tewald</name><uri>http://blogs.msdn.com/members/tewald.aspx</uri></author><category term="WS-Security" scheme="http://blogs.msdn.com/tewald/archive/tags/WS-Security/default.aspx" /><category term="XML" scheme="http://blogs.msdn.com/tewald/archive/tags/XML/default.aspx" /></entry><entry><title>"But I'm a plumber..."</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/tewald/archive/2003/09/11/57283.aspx" /><id>http://blogs.msdn.com/tewald/archive/2003/09/11/57283.aspx</id><published>2003-09-11T09:48:00Z</published><updated>2003-09-11T09:48:00Z</updated><content type="html">&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;
    &lt;p&gt;
        I've spent a lot of time with &lt;a href="http://www-106.ibm.com/developerworks/webservices/library/ws-secure/"&gt;WS-Security&lt;/a&gt; lately,
        partly because of the bruhaha over its use in &lt;a href="http://ws.microsoft.com/MsComService/MsCom.asmx"&gt;MsComService&lt;/a&gt;,
        and partly because I'm digging more deeply into WSE 2.0. Like most of my friends (and
        a penguin &lt;a href="http://www.gotdotnet.com/team/mgudgin"&gt;Gudge &lt;/a&gt;knows), I'm a
        plumber. I like spending time thinking about how to program with XML messages (feeding &lt;a href="http://radio.weblogs.com/0120191/2003/07/30.html#a140"&gt;my
        reputed addition&lt;/a&gt;). But I realized last weekend that there are limits, even for
        me. I realized that I want someone else to take care of security for me... 
    &lt;/p&gt;
    &lt;p&gt;
        It's not that I'm not interested - I think it's a fascinating topic. But I have too
        many other things going on to lose myself in it, and I don't trust myself to build
        something secure if I have to worry about all the details of signing, encryption,
        nonces, hashes, etc. myself. Hopefully a day will soon come when I can simply request
        a secure channel to a distant service and sit back and relax, confident that someone
        else has thought about the hard security problems for me. 
    &lt;/p&gt;
    &lt;p&gt;
        Then I can spend more time thinking about what the bodies of my message look like
        - the problem domain specific part that it's hard for other folks to help me with... 
    &lt;/p&gt;
&lt;/body&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=57283" width="1" height="1"&gt;</content><author><name>tewald</name><uri>http://blogs.msdn.com/members/tewald.aspx</uri></author><category term="WS-Security" scheme="http://blogs.msdn.com/tewald/archive/tags/WS-Security/default.aspx" /><category term="XML" scheme="http://blogs.msdn.com/tewald/archive/tags/XML/default.aspx" /></entry><entry><title>Changes in the works...</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/tewald/archive/2003/09/11/57281.aspx" /><id>http://blogs.msdn.com/tewald/archive/2003/09/11/57281.aspx</id><published>2003-09-11T09:36:00Z</published><updated>2003-09-11T09:36:00Z</updated><content type="html">&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;
    &lt;p&gt;
        Sam &lt;a href="http://www.intertwingly.net/blog/1586.html"&gt;welcomed me back&lt;/a&gt;&amp;#160;to
        the blogosphere... 
    &lt;/p&gt;
    &lt;p&gt;
        Your points are well taken. People here are very aware of the fact that developers
        may well look to Microsoft.com's services as an example to emulate, so they try to
        make sure they do the right thing. In this case, there's a been a lot of confusion
        around the fact that &lt;a href="http://www-106.ibm.com/developerworks/webservices/library/ws-secure/"&gt;WS-Security&lt;/a&gt; really
        offers levels of protection and, in this case, the level required is pretty low. That
        said, the&amp;#160;guys who built the service are working on the details for replay detection.
        I'll keep you posted as I find out more... 
    &lt;/p&gt;
    &lt;p&gt;
        In the same thread, &lt;a href="http://www.kuro5hin.org/user/Carnage4Life/diary"&gt;Dare&lt;/a&gt; commented
        that the use of&amp;#160;WS-Security in this context doesn't make sense to him and that
        a token like the one used in the Google service makes more sense to him. The problem
        with adding a token to every operation is that it goes in the body of the message.
        Since the goal in microsoft.com's case is to consume the token at a router that then
        passes the message on, it needs to be in a header so as to avoid violating the SOAP
        processing rules. Once you're using a header, you've got more code to write in any
        case. Given that, why not use an existing header that identifies users? I think it
        would have been more confusing if they'd made up some new header of&amp;#160;their own... 
    &lt;/p&gt;
&lt;/body&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=57281" width="1" height="1"&gt;</content><author><name>tewald</name><uri>http://blogs.msdn.com/members/tewald.aspx</uri></author><category term="WS-Security" scheme="http://blogs.msdn.com/tewald/archive/tags/WS-Security/default.aspx" /><category term="XML" scheme="http://blogs.msdn.com/tewald/archive/tags/XML/default.aspx" /></entry><entry><title>One more thing...</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/tewald/archive/2003/09/04/57279.aspx" /><id>http://blogs.msdn.com/tewald/archive/2003/09/04/57279.aspx</id><published>2003-09-05T04:10:00Z</published><updated>2003-09-05T04:10:00Z</updated><content type="html">&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;
    &lt;p&gt;
        Someone pointed out that signing a message wouldn't actually solve the all the issues
        Simon raised. It would stop someone from tampering with a message, but it wouldn't
        stop someone from replaying a message. You need to take additional steps to protect
        against that as noted on &lt;a href="http://www.intertwingly.net/blog/1585.html#c1062709767"&gt;this
        thread&lt;/a&gt; at Sam Ruby's blog. 
    &lt;/p&gt;
    &lt;p&gt;
        However, the real point I was trying to make on behalf of the developers at Microsoft.com
        who built this prototype service, is that security wasn't really their goal. 
    &lt;/p&gt;
&lt;/body&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=57279" width="1" height="1"&gt;</content><author><name>tewald</name><uri>http://blogs.msdn.com/members/tewald.aspx</uri></author><category term="WS-Security" scheme="http://blogs.msdn.com/tewald/archive/tags/WS-Security/default.aspx" /><category term="XML" scheme="http://blogs.msdn.com/tewald/archive/tags/XML/default.aspx" /></entry><entry><title>Using UsernameToken with the new microsoft.com Web service</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/tewald/archive/2003/09/03/57276.aspx" /><id>http://blogs.msdn.com/tewald/archive/2003/09/03/57276.aspx</id><published>2003-09-04T03:07:00Z</published><updated>2003-09-04T03:07:00Z</updated><content type="html">&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;
    &lt;p&gt;
        I spent my summer deep in an engineering project, the purpose of which will come to
        light in coming months. Now that the first phase of that work is complete, I have
        time to start posting again. And what better place to start than by answering questions
        raised by &lt;a href="http://www.pocketsoap.com/weblog/2003/08/1357.html"&gt;Simon Fell's
        recent post&lt;/a&gt; about the use of &lt;a href="http://msdn.microsoft.com/webservices/understanding/specs/default.aspx?pull=/library/en-us/dnglobspec/html/wssecurspecindex.asp"&gt;WS-Security&lt;/a&gt; with
        the new &lt;a href="http://msdn.microsoft.com/webservices/building/livewebservices/mscomservices/default.aspx"&gt;Microsoft.com
        web services&lt;/a&gt;.
    &lt;/p&gt;
    &lt;p&gt;
        Some of the guys at microsoft.com spent their summer working on the server-side infrastructure
        they need in place to support production Web service. They recently launched a prototype
        service that's intended to vet the plumbing. To use the service, developers have to
        register and get a username and password. Request messages carry a WS-Security UsernameToken
        containing the username and a digest based on the password, a nonce, etc.. Simon points
        out that, because the message is not signed, it doesn't provide any security. He's
        right, but that really isn't the intent. Rather, the UsernameToken is used like a
        cookie. It tracks invocations to gather metrics about how the services are used and
        to throttle requests so that servers aren't overwhelmed. The goal is to test the server
        plumbing and get a sense of how people use it. Google and Amazon do similar things
        with their public services.
    &lt;/p&gt;
    &lt;p&gt;
        So, why use a WS-Security header to do this? The service designers felt that a header
        would be preferable to an extra parameter on every call. A SOAP header made more sense
        than an HTTP header, because, long-term it is likely that messages will end up being
        routed on the server side for a range of operational and deployment reasons. Given
        that, WS-Security's UsernameToken mechanism seemed to fit the bill. They thought about
        requiring messages to be signed with the token to help protect against swiped tokens,
        modified messages, etc. They decided against signing for several reasons:
    &lt;/p&gt;
    &lt;ul&gt;
        &lt;li&gt;
            the service is read-only 
        &lt;/li&gt;
        &lt;li&gt;
            there's no private data to protect 
        &lt;/li&gt;
        &lt;li&gt;
            requiring signing would make it much harder to build message from any toolkit that
            doesn't support WS-Security 
        &lt;/li&gt;
    &lt;/ul&gt;
    &lt;p&gt;
        From my perspective, the last issue is the most significant. It's pretty easy to layer
        in a UsernameToken with a password digest with a toolkit that has no knowledge of
        WS-Security (like &lt;a href="http://www.myelin.co.nz/post/2003/9/4/#200309041"&gt;this
        Python client&lt;/a&gt;). It's harder to layer in XMLDSIG support.
    &lt;/p&gt;
    &lt;p&gt;
        The people who maintain the new service's web site are working on updating the text
        there to make it clearer that the service is not intended to be secure. (They're also
        working on posting the documentation for the service online.) Beyond that, there are
        two other changes they could make. FIrst, they could modify the service to require
        a signature, thereby mitigating the issues Simon raised. However, that would make
        consuming the service from any non-XMLDSIG enabled toolkit essentially impossible.
        Alternatively, they could change the service to use some other header that people
        don't associate with security, e.g., 
        &lt;MSCOMDEVTOKEN /&gt;
        . It isn't clear to me yet that either of those changes makes sense. But people here
        are definitely listening to your feedback!
    &lt;/p&gt;
&lt;/body&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=57276" width="1" height="1"&gt;</content><author><name>tewald</name><uri>http://blogs.msdn.com/members/tewald.aspx</uri></author><category term="WS-Security" scheme="http://blogs.msdn.com/tewald/archive/tags/WS-Security/default.aspx" /><category term="XML" scheme="http://blogs.msdn.com/tewald/archive/tags/XML/default.aspx" /></entry><entry><title>What to wear under your IBM power suit</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/tewald/archive/2003/05/06/57275.aspx" /><id>http://blogs.msdn.com/tewald/archive/2003/05/06/57275.aspx</id><published>2003-05-06T09:40:00Z</published><updated>2003-05-06T09:40:00Z</updated><content type="html">I heard a rumor that Grady now has a pair of Don's Boxers. COM really was about love… :-)&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=57275" width="1" height="1"&gt;</content><author><name>tewald</name><uri>http://blogs.msdn.com/members/tewald.aspx</uri></author></entry><entry><title>Welcome Chris!</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/tewald/archive/2003/04/22/57274.aspx" /><id>http://blogs.msdn.com/tewald/archive/2003/04/22/57274.aspx</id><published>2003-04-23T06:07:00Z</published><updated>2003-04-23T06:07:00Z</updated><content type="html">&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;a href="http://www.sellsbrothers.com/spout"&gt;Chris&lt;/a&gt; and I worked together for years at &lt;a href="http://www.develop.com"&gt;DevelopMentor&lt;/a&gt;, and now he has joined my &lt;a href="http://msdn.microsoft.com"&gt;team&lt;/a&gt; at Microsoft. I'm very much looking forward to working with him again!&lt;/div&gt;&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=57274" width="1" height="1"&gt;</content><author><name>tewald</name><uri>http://blogs.msdn.com/members/tewald.aspx</uri></author></entry><entry><title>Handling mandatory SOAP headers in ASP.NET</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/tewald/archive/2003/04/18/57273.aspx" /><id>http://blogs.msdn.com/tewald/archive/2003/04/18/57273.aspx</id><published>2003-04-18T11:19:00Z</published><updated>2003-04-18T11:19:00Z</updated><content type="html">&lt;p&gt;My latest House of Web Services column is now online &lt;a href="http://msdn.microsoft.com/msdnmag/issues/03/05/WebServices/default.aspx"&gt;here&lt;/a&gt;. It explains how to fix an issue mandatory header handling in ASP.NET. &lt;a href="http://download.microsoft.com/download/8/3/b/83b40d68-0206-4799-9ad1-fa5b3428c66c/WebServices0305.exe"&gt;Sample code&lt;/a&gt; is also available.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=57273" width="1" height="1"&gt;</content><author><name>tewald</name><uri>http://blogs.msdn.com/members/tewald.aspx</uri></author></entry><entry><title>A shortcut I learned today</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/tewald/archive/2003/04/09/57272.aspx" /><id>http://blogs.msdn.com/tewald/archive/2003/04/09/57272.aspx</id><published>2003-04-09T11:42:00Z</published><updated>2003-04-09T11:42:00Z</updated><content type="html">&lt;p&gt;
I mentioned &lt;a href="http://www.gotdotnet.com/team/tewald/default.aspx?key=2003-04-09T08:21:41Z"&gt;a few posts ago&lt;/a&gt; that I'd been spending all my time writing specs lately.
&lt;/p&gt;
&lt;p&gt;
One side benefit is that Tommy Williams told me that Word maps the 'F4' key to the last operation you completed. If you are deleting rows from a table (Alt-A, D, R), F4 saves you a lot of keystrokes. Maybe everyone else in the world new about this (if so, why didn't you tell me?), but it was a new to me, and very useful.
&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=57272" width="1" height="1"&gt;</content><author><name>tewald</name><uri>http://blogs.msdn.com/members/tewald.aspx</uri></author></entry><entry><title>Epiphanizing with Don</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/tewald/archive/2003/04/09/57271.aspx" /><id>http://blogs.msdn.com/tewald/archive/2003/04/09/57271.aspx</id><published>2003-04-09T11:42:00Z</published><updated>2003-04-09T11:42:00Z</updated><content type="html">&lt;p&gt;
After spending all day at an offsite for my new project, I went out to dinner with a member of my team, and eventually ended up back at Don's house. He was on fire, so we headed back into the office, where there are plenty of whiteboards. As is often the case, he was in the middle of an epiphany about XML APIs and I helped him work through some of his ideas. It was a blast - just like the old days. :-)
&lt;/p&gt;
&lt;p&gt;
I'm very optimistic about the future of XML. I haven't yet commented on all the recent posts about XML's relative suckiness or lack there of. Two things are clear to me: (most of) the basic protocol stack and APIs we have today are totally reasonable, and we can do a lot better (at least where APIs are concerned). As I &lt;a href="http://www.gotdotnet.com/team/tewald/default.aspx?key=2002-10-19T10:00-05:00"&gt;said&lt;/a&gt; way back when, there's a ton of work to do here.
&lt;/p&gt;
&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=57271" width="1" height="1"&gt;</content><author><name>tewald</name><uri>http://blogs.msdn.com/members/tewald.aspx</uri></author></entry></feed>