<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>All About Interop : OSP</title><link>http://blogs.msdn.com/dotnetinterop/archive/tags/OSP/default.aspx</link><description>Tags: OSP</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Where were we 3 years ago? &amp;quot;Java apps don't interop with apps built on MS technology.&amp;quot;</title><link>http://blogs.msdn.com/dotnetinterop/archive/2008/03/28/where-were-we-3-years-ago-java-apps-interop-with-other-apps-from-all-vendors-but-ms.aspx</link><pubDate>Fri, 28 Mar 2008 21:26:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8342163</guid><dc:creator>DotNetInterop</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/dotnetinterop/comments/8342163.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dotnetinterop/commentrss.aspx?PostID=8342163</wfw:commentRss><description>&lt;FONT family="Calibri"&gt;&lt;SIZE=3&gt;
&lt;P&gt;Ha!&amp;nbsp; I wrote recently about the history of .NET Interop in the industry, and how perceptions in the industry have changed so much. &lt;/P&gt;
&lt;P&gt;I was looking for some old benchmark code (dirty little secret - I do not use a project management and code versioning system, but the more code I write, and the older I get, the more i need one. . . hmmm, do you think I could get a deal on Visual Studio's Team Foundation Server? hee hee)&amp;nbsp; anyway while I was looking for the old code, I came upon a text file containing an dialogue from an &lt;A class="" href="http://www.javalobby.org/java/forums/t18836.html?start=15" mce_href="http://www.javalobby.org/java/forums/t18836.html?start=15"&gt;old javalobby thread&lt;/A&gt;, from May 2005.&amp;nbsp;I participated in the thread as part of the run-up to JavaOne 2005, in which Microsoft was participating formally, with a booth, and some sessions, and so on (and yes, I was one of the 3 or 4 people from Microsoft who were going to be there.)&amp;nbsp; Here is one part that was written &lt;STRONG&gt;&lt;EM&gt;to me.&amp;nbsp; &lt;/EM&gt;&lt;/STRONG&gt;The context was around .NET, and why it is at least interesting to "Java developers" or devs who use Java primarily.&amp;nbsp; I had stated that interop was one key reason that .NET should be interesting to Java devs.&amp;nbsp; Here's what I got back: &lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT color=#660066&gt;I think you're underestimating the size of the wall between MS and the rest of the development community.&amp;nbsp; The MS shops have little interest in interop, because they know it just won't work well. MS doesn't do interop. And the non-MS shops know that too, plus they know that they'd better not get tied to MS products anyway. Java apps interop with other apps from all vendors but MS. That's plenty.&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P mce_keep="true"&gt;"Microsoft doesn't do interop." &amp;nbsp;&amp;nbsp; Customers "know it just won't work well."&amp;nbsp; Wow.&amp;nbsp; Three short years ago.&amp;nbsp;&amp;nbsp; Also the statement "Java apps interop with other apps from all vendors but MS" -&amp;nbsp;(by which I think he meant "Java apps don't interop with apps built on MS technology."&amp;nbsp;&amp;nbsp;&amp;nbsp; All of this is just nutty. &lt;/P&gt;
&lt;P mce_keep="true"&gt;Here's another excerpt from that thread, where my counterpart in the dialogue attempts to make a distinction between "good interop", which is supported just for interop's sake, and "bad interop", which is supported in order for a company to make money.&amp;nbsp; Put aside for a moment whether that distinction is a valid one.&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;BLOCKQUOTE border="1"&gt;
&lt;P mce_keep="true"&gt;&lt;FONT color=#660066&gt;&lt;STRONG&gt;dubious&lt;/STRONG&gt;: I'm singularly unconvinced that [Microsoft] really give a flying fark about &lt;I&gt;true&lt;/I&gt; "interoperability," but want to use "interoperability" as a bludgeon to try and increase their market share.&lt;/FONT&gt; &lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;STRONG&gt;Dino&lt;/STRONG&gt;: My real question is, what is the practical difference between "true interoperability" and interoperability pursued for the sake of gaining market share, or revenue, or profit? &lt;/P&gt;
&lt;P&gt;&lt;FONT color=#660066&gt;&lt;STRONG&gt;dubious&lt;/STRONG&gt;: The practical difference is that "true interoperability" really does make things interoperate. To say that Word now lets you save documents in XML, but it's just a proprietary format wrapped in XML tags, that's not true interoperability.&lt;BR&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Dino&lt;/STRONG&gt;: I'd like to understand this. XML is extensible, right? That means, anyone can define a schema, based on the extensibility rules for XML. Anyone can name their schema, publish it, and then invite others to read and use it. this is what Microsoft did with WordProcessingML, effectively. Or am I wrong on this? 
&lt;P&gt;The WordProcessingML that MS-Word can save to or load from - it is a schema defined and licensed by MS. It is &lt;A class="" href="http://en.wikipedia.org/wiki/Reasonable_and_Non_Discriminatory_Licensing" mce_href="http://en.wikipedia.org/wiki/Reasonable_and_Non_Discriminatory_Licensing"&gt;RAND&lt;/A&gt; today, and also free, but not guaranteed to be free forever. It is undeniably "proprietary" in the sense that MS owns the IP. It is not an OASIS or W3C standard. But it is available for anyone to use, if they agree to the license. &lt;FONT color=red&gt;&lt;I&gt;[side note: as of 2008, the &lt;A class="" href="http://msdn2.microsoft.com/en-us/library/aa212812(office.11).aspx" mce_href="http://msdn2.microsoft.com/en-us/library/aa212812(office.11).aspx"&gt;WordProcessingML&lt;/A&gt; has been included in the &lt;A class="" href="http://www.microsoft.com/interop/osp/default.mspx" mce_href="http://www.microsoft.com/interop/osp/default.mspx"&gt;Open Specification Promise&lt;/A&gt;, which as I have &lt;A class="" href="http://blogs.msdn.com/dotnetinterop/archive/2006/10/31/use-office-2003-xml-schema-no-worries.aspx" mce_href="http://blogs.msdn.com/dotnetinterop/archive/2006/10/31/use-office-2003-xml-schema-no-worries.aspx"&gt;noted previously&lt;/A&gt;, goes way beyond RAND]&lt;/I&gt;&lt;/FONT&gt; &lt;/P&gt;
&lt;P&gt;... Is this interop? "True interop"? or is it the other kind, the bad kind? &lt;/P&gt;
&lt;P&gt;&lt;FONT color=#660066&gt;&lt;STRONG&gt;dubious&lt;/STRONG&gt;: Again, I don't know details, so maybe it is true interop, I don't know. But I absolutely will not trust it, even if it is true interop. &lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;This is how things &lt;I&gt;really were&lt;/I&gt;. And this was only 3 short years ago.&amp;nbsp; The guy refused to grant one inch on the "Microsoft does interoperability" issue.&amp;nbsp; Even in the face of countervaling facts, he gripped his opinions ever more strongly.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Getting back to the premise, that there is a distinction between "good" and "bad" interoperability... Let me say that I ascribe to the capitalist philosophy.&amp;nbsp; I believe that companies do what they do in order to make more money.&amp;nbsp; A corollary of that is that "interop just for interop's sake" is an idea that no real company pursues.&amp;nbsp;&amp;nbsp;Another corollary is, "it's not bad to make money, by delivering interop."&amp;nbsp;&amp;nbsp; This is just capitalism. &amp;nbsp;So I don't accept the premise that interop can be "good" or "bad".&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Thinking about it now, I guess maybe using a thread from a javalobby forum isn't the best example. The forums there are the birthplace of many flamewars. It seems like the participants view it as good sport. Probably safe to assume that the participants there are not representative of the broader development community. But, I will say.. my perspective was that I saw lots more incredulity than was justified around Microsoft interop capabilities , and not just at javalobby. &lt;/P&gt;
&lt;P&gt;There's a guy I know, a really bright guy, sharp technologist and a very successful software entrepreneur. He knows his stuff. He &lt;I&gt;cannot believe&lt;/I&gt; that I have a Windows XP machine running IIS on the internet. (actually I have several)&amp;nbsp; They have been running for maybe 5 years this way. Even today this guy cannot believe it. He laughs when I tell him. He thinks I'm an idiot. He is certain that the only reason the machines haven't been hacked (ever) is that they haven't been found yet. &lt;/P&gt;
&lt;P&gt;But I have the IIS logs that show the machines have been sniffed. I have the urlscan logs that show they get probed regularly. I'm a little hesitant to even *say* "those machines have never been hacked", because it seems like threatening fate. I know that all software is vulnerable, and it's just a matter of time and effort for any machine, any operating system. So I'm not daring anyone, not explicitly anyway, to just &lt;I&gt;go ahead and try&lt;/I&gt; to hack my WinXP "servers". But the point is, they have been out there for a long long time, and&amp;nbsp;I haven't had a breech yet. &lt;/P&gt;
&lt;P&gt;Some people will never change their minds. They learn something once, and it stays forever.&amp;nbsp; They have write-only storage in their brains.&amp;nbsp; Once they "know" something, regardless how it came to be that they "know it", things don't change. They never re-examine.&amp;nbsp; Obviously this is not a blanket statement.&amp;nbsp; A person can be close-minded about some things and open-minded about others.&amp;nbsp;The software entrepreneur I spoke of, he's learned a ton as he built successful software companies, one after the other.&amp;nbsp; He's open minded about business.&amp;nbsp; But he's not about Windows security.&amp;nbsp; In the same way some people are just not open-minded about interop, regardless what the facts say. &lt;/P&gt;
&lt;P&gt;Hmmm, do I sound defensive lately?&amp;nbsp;&amp;nbsp; Maybe my &lt;A class="" href="http://en.wikipedia.org/wiki/Biorhythm" mce_href="http://en.wikipedia.org/wiki/Biorhythm"&gt;biorhythms&lt;/A&gt; are in a downcycle.&lt;/P&gt;
&lt;P&gt;The good news is that over time, the skew between the perception and reality on .NET interop capabilities, has lessened.&amp;nbsp; Thanks be to Scott McNealy!&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/SIZE&gt;&lt;/FONT&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8342163" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Interop/default.aspx">Interop</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/OSP/default.aspx">OSP</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Java/default.aspx">Java</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/History/default.aspx">History</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/WordML/default.aspx">WordML</category></item><item><title>InfoCard Relying Party for Java, PHP, etc</title><link>http://blogs.msdn.com/dotnetinterop/archive/2007/06/25/infocard-relying-party-for-java-php-etc.aspx</link><pubDate>Mon, 25 Jun 2007 21:12:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:3524726</guid><dc:creator>DotNetInterop</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dotnetinterop/comments/3524726.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dotnetinterop/commentrss.aspx?PostID=3524726</wfw:commentRss><description>&lt;P&gt;I missed &lt;A class="" href="http://self-issued.info/?p=11" mce_href="http://self-issued.info/?p=11"&gt;this&lt;/A&gt; when it came out last month at the Interop event in Las Vegas.&amp;nbsp; Bob Muglia &lt;A class="" href="http://www.microsoft.com/presspass/press/2007/may07/05-23MetasystemPR.mspx" mce_href="http://www.microsoft.com/presspass/press/2007/may07/05-23MetasystemPR.mspx"&gt;announced&lt;/A&gt; that the &lt;A class="" href="http://self-issued.info/?p=8" mce_href="http://self-issued.info/?p=8"&gt;specs for Information Card have been added to the Open Specification Promise&lt;/A&gt;, and there are now several new open source projects set up to deliver code for Relying Party implementations in PHP and Java.&amp;nbsp;&amp;nbsp;In addition, there was an &lt;A class="" href="http://self-issued.info/?p=12" mce_href="http://self-issued.info/?p=12"&gt;infocard interop&amp;nbsp;connect-a-thon&lt;/A&gt;, basically a get together among various imeplementors of the specs to verify that everything works together as envisioned.&amp;nbsp; Previously, Kevin Miller delivered a &lt;A class="" href="http://blogs.msdn.com/richardt/archive/2006/12/12/firefox-extension-for-windows-cardspace.aspx" mce_href="http://blogs.msdn.com/richardt/archive/2006/12/12/firefox-extension-for-windows-cardspace.aspx"&gt;FireFox add-in that does InfoCard&lt;/A&gt;. &lt;/P&gt;
&lt;P&gt;What does this mean?&amp;nbsp; This means that (a) websites based in Java or PHP can accept Information Cards for user identity (of course it is already pretty simple for an ASP.NET based web app to accept an InfoCard identity), and (b) users who surf the web with FF can use InfoCards as well.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;This is all really good news for Interop in the identity space!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3524726" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Interop/default.aspx">Interop</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/OSP/default.aspx">OSP</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Java/default.aspx">Java</category></item><item><title>Using Virtual PCs to Ship Evaluation Versions of Apps</title><link>http://blogs.msdn.com/dotnetinterop/archive/2007/01/17/using-virtual-pcs-to-ship-evaluation-versions-of-apps.aspx</link><pubDate>Thu, 18 Jan 2007 00:07:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1484862</guid><dc:creator>DotNetInterop</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dotnetinterop/comments/1484862.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dotnetinterop/commentrss.aspx?PostID=1484862</wfw:commentRss><description>&lt;SPAN style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: Calibri; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA; mso-fareast-theme-font: minor-latin"&gt;Microsoft partners can ship preconfigured Virtual Hard drives (VHDs), containing Windows as well as their own apps, for evaluation purposes.&amp;nbsp; For more on this check out the VHD Test Drive Program, &lt;A href="http://www.microsoft.com/technet/try/vhd/partners.mspx"&gt;&lt;FONT color=#0000ff&gt;http://www.microsoft.com/technet/try/vhd/partners.mspx&lt;/FONT&gt;&lt;/A&gt;. &lt;/SPAN&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1484862" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Virtualization/default.aspx">Virtualization</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/OSP/default.aspx">OSP</category></item><item><title>Use Office 2003 XML Schema, no worries</title><link>http://blogs.msdn.com/dotnetinterop/archive/2006/10/31/use-office-2003-xml-schema-no-worries.aspx</link><pubDate>Tue, 31 Oct 2006 17:49:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:904160</guid><dc:creator>DotNetInterop</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/dotnetinterop/comments/904160.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dotnetinterop/commentrss.aspx?PostID=904160</wfw:commentRss><description>&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Arial','sans-serif'"&gt;In the past I've posted some articles [&lt;A class="" href="http://blogs.msdn.com/dotnetinterop/archive/2005/03/29/403331.aspx" mce_href="http://blogs.msdn.com/dotnetinterop/archive/2005/03/29/403331.aspx"&gt;1&lt;/A&gt;, &lt;A class="" href="http://blogs.msdn.com/dotnetinterop/archive/2005/03/04/385184.aspx" mce_href="http://blogs.msdn.com/dotnetinterop/archive/2005/03/04/385184.aspx"&gt;2&lt;/A&gt;] about generating Office 2003 documents from a server-side Java application.&amp;nbsp;I also posted some &lt;A class="" href="http://dinoch.dyndns.org:7070/WordML" mce_href="http://dinoch.dyndns.org:7070/WordML"&gt;example code&lt;/A&gt;. &amp;nbsp;Of note, the &lt;A class="" href="http://www.microsoft.com/office/xml/default.mspx" mce_href="http://www.microsoft.com/office/xml/default.mspx"&gt;Office 2003 XML Reference Schemas&lt;/A&gt; are now also available under the &lt;A class="" href="http://www.microsoft.com/interop/osp/default.mspx" mce_href="http://www.microsoft.com/interop/osp/default.mspx"&gt;Open Specification Promise&lt;/A&gt;.&amp;nbsp; &amp;nbsp;Basically, with the OSP, &lt;EM&gt;Microsoft irrevocably promises not to assert any Microsoft Necessary Claims against you for making, using, selling, offering for sale, importing or distributing any implementation to the extent it conforms to a Covered Specification&lt;/EM&gt;.&amp;nbsp; In other words, Microsoft promises not to bother you if you use the specs covered under OSP.&amp;nbsp; This promise is subject to some conditions, check the OSP website for full details.&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Arial','sans-serif'"&gt;-Dino&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=904160" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Interop/default.aspx">Interop</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/XML/default.aspx">XML</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/OSP/default.aspx">OSP</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Java/default.aspx">Java</category></item></channel></rss>