<?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>Rob Villahermosa's WebLog</title><link>http://blogs.msdn.com/b/robvi/</link><description /><dc:language>en-US</dc:language><generator>Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><item><title>Beta 1 Breaking Change List Publicly Available on GotDotNet!</title><link>http://blogs.msdn.com/b/robvi/archive/2004/07/07/175530.aspx</link><pubDate>Wed, 07 Jul 2004 21:01:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:175530</guid><dc:creator>robvi</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/robvi/rsscomments.aspx?WeblogPostID=175530</wfw:commentRss><comments>http://blogs.msdn.com/b/robvi/archive/2004/07/07/175530.aspx#comments</comments><description>&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;It's been a long while coming, and I lot have people have been asking for it.&amp;nbsp;&amp;nbsp;The compatibility breaking change list for Version 2.0 (Beta1) has now been published up on GotDotNet&amp;nbsp; publicly.&amp;nbsp; See the default page at &lt;/FONT&gt;&lt;A href="http://www.gotdotnet.com/team/changeinfo/default.aspx"&gt;&lt;FONT face=Arial color=#000080 size=2&gt;http://www.gotdotnet.com/team/changeinfo/default.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Arial color=#000080 size=2&gt;&amp;nbsp;for further details.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;There is a lot of good information up on this page.&amp;nbsp; First is a list of all the API's that were obsoleted in V2.0.&amp;nbsp; Second is a list of known breaking changes that you might encounter when running or transitioning your apps from V1.1 to V2.0 that we worked on as a team.&amp;nbsp; Third is a list of API Changes made between the two versions.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;I hope this information is useful, don't hesitate to comment on what you feel we need more of, are missing, etc.&amp;nbsp; Looking forward to some good feedback.&lt;/FONT&gt;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=175530" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/robvi/archive/tags/CLR+Version+Compatibility/">CLR Version Compatibility</category></item><item><title>Configuring your V1.1 apps to run against V1.0</title><link>http://blogs.msdn.com/b/robvi/archive/2004/04/21/117887.aspx</link><pubDate>Thu, 22 Apr 2004 04:48:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:117887</guid><dc:creator>robvi</dc:creator><slash:comments>4</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/robvi/rsscomments.aspx?WeblogPostID=117887</wfw:commentRss><comments>http://blogs.msdn.com/b/robvi/archive/2004/04/21/117887.aspx#comments</comments><description>&lt;P&gt;&lt;FONT face=Arial color=#000080 size=1&gt;A friend of mine was trying to get his V1.1 app to run against V1.0 without much luck.&amp;nbsp; His config file had a startup section that looked like this:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=1&gt;&amp;lt;startup&amp;gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT color=#000080 size=1&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;supportedRuntime version=&amp;#8221;v1.1.4322&amp;#8221;/&amp;gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;supportedRuntime version=&amp;#8221;v1.0.3705&amp;#8221;/&amp;gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT color=#000080 size=1&gt;&amp;lt;/startup&amp;gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT color=#000080 size=1&gt;This will NOT work on V1.0!&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;In V1.0, the V1.0 shim has no support for &amp;lt;supportedRuntime&amp;gt; tags so actually does not know what they mean.&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;FONT color=#000080 size=1&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;Now, here is where it gets unintuitive:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;In V1.1, they started worrying about backwards/forwards compatibility and decided that perhaps the &amp;lt;requiredRuntime&amp;gt; tag was not the best thing to use and introduced the &amp;lt;supportedRuntime&amp;gt; tag.&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;The V1.1 shim actually checks for the &amp;lt;supportedRuntime&amp;gt; tag first, and if it finds it ignores the &amp;lt;requiredRuntime&amp;gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT color=#000080 size=1&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;So, in V1.1 even if you have something like:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;FONT color=#000080 size=1&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;&amp;lt;?xml version=&amp;#8221;1.0&amp;#8221;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;&amp;lt;configuration&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;startup&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;requiredRuntime version=&amp;#8221;v1.0.3705&amp;#8221;/&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;supportedRuntime version=&amp;#8221;v1.1.4322&amp;#8221;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;supportedRuntime version=&amp;#8221;v1.0.3705&amp;#8221;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/startup&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;&amp;lt;/configuration&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;The V1.1 app will still run on V1.1 because the V1.1 shim reads the &amp;lt;supportedRuntime&amp;gt; tags first.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT color=#000080 size=1&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT color=#000080 size=1&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;The V1.1 app WILL NOT run on V1.1 though, if you don&amp;#8217;t include the &amp;lt;supportedRuntime&amp;gt; tags and only have the &amp;lt;requiredRuntime&amp;gt; tag.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;&amp;lt;?xml version=&amp;#8221;1.0&amp;#8221;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;&amp;lt;configuration&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;startup&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;requiredRuntime version=&amp;#8221;v1.0.3705&amp;#8221;/&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/startup&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;&amp;lt;/configuration&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT color=#000080 size=1&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;FONT size=1&gt;&lt;FONT color=#000080&gt;In this case, the V1.1 shim sees the &amp;lt;requiredRuntime&amp;gt; tag since there are no &amp;lt;supportedRuntime&amp;gt; tags.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=117887" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/robvi/archive/tags/Common+Compatibility+Questions/">Common Compatibility Questions</category></item><item><title>BlackBox Testing</title><link>http://blogs.msdn.com/b/robvi/archive/2004/03/04/84170.aspx</link><pubDate>Fri, 05 Mar 2004 03:46:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:84170</guid><dc:creator>robvi</dc:creator><slash:comments>9</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/robvi/rsscomments.aspx?WeblogPostID=84170</wfw:commentRss><comments>http://blogs.msdn.com/b/robvi/archive/2004/03/04/84170.aspx#comments</comments><description>&lt;P&gt;&lt;FONT face=Arial color=#000080&gt;Today I attended the Microsoft Research Group's Techfest.&amp;nbsp; It's like a giant science fair for the&amp;nbsp;folk over in MS Research to strut their stuff and show us blue badges the latest and greatest in the world of technology.&amp;nbsp; Anyways, I can't say much other than I was VERY impressed.&amp;nbsp; &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080&gt;In particular, a lecture by Colin Campbell from the Foundations of Software Engineering group was particularly interesting.(&lt;/FONT&gt;&lt;A href="http://research.microsoft.com/foundations/"&gt;&lt;FONT face=Arial color=#000080&gt;http://research.microsoft.com/foundations/&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Arial color=#000080&gt;)&amp;nbsp;One of the often forgotten areas of research is that of formal software testing practices.&amp;nbsp; I'm sure that everyone out there who's been through Electrical Engineering/Digital Electronics&amp;nbsp;101 courses knows about finite state machines and how you can model event driven scenarios as as set of transitions between various states.&amp;nbsp; In fact, I remember an interview question somewhere in which I was asked to model a Pop machine as an FSM in order to test it.&amp;nbsp; Anyways, the basis of using this model for testing comes from a language called ASML (Abstract State Machine Language).&amp;nbsp;&amp;nbsp;The idea is that ASML provides a&amp;nbsp;way to communicate a design non-ambiguosly, and that you can identify&amp;nbsp;the behaviours of your component and generate tests from this specification.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080&gt;Check out the free download: &lt;/FONT&gt;&lt;A href="http://research.microsoft.com/fse/asml/"&gt;&lt;FONT face=Arial color=#000080&gt;http://research.microsoft.com/fse/asml/&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Arial color=#000080&gt;&amp;nbsp;&amp;nbsp; Cool stuff, eh?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080&gt;This post is stated &amp;#8220;as is&amp;#8221; and confers no warrantees and guarantees no rights.&lt;/FONT&gt;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=84170" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/robvi/archive/tags/Random+Thoughts/">Random Thoughts</category></item><item><title>XML and my heartrate monitor info...</title><link>http://blogs.msdn.com/b/robvi/archive/2004/02/27/80897.aspx</link><pubDate>Fri, 27 Feb 2004 08:51:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:80897</guid><dc:creator>robvi</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/robvi/rsscomments.aspx?WeblogPostID=80897</wfw:commentRss><comments>http://blogs.msdn.com/b/robvi/archive/2004/02/27/80897.aspx#comments</comments><description>&lt;P&gt;So, one of my passions in life outside of work is riding bicycles.&amp;nbsp; I currently have 2 bikes - one is a&amp;nbsp;2002 Cannondale 900 SL, and the other is a 2000 LiteSpeed Ultimate.&amp;nbsp; The Cannondale 900 SL is actually a replacement for my beloved Killer V 900 which I raced on through college but was unfortunately stolen from my balcony last year :(&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Anyways, to get down to the technical part of this post... I started training with a heartrate monitor about 2 years ago.&amp;nbsp; It's a Polar 710.&amp;nbsp; It kinda sucks that I have to use the Polar Software to do everything, because I think it'd be pretty cool to be able to&amp;nbsp;store that data to Pocket PC's, watch computers, and other electronic toys that don't exactly run the Polar Software.&amp;nbsp; Well, .I took a look at the format they're using to store data.&amp;nbsp; It's pretty much straight text - there are the recording parameters at the beginning of the file, but then after that it's the periodic data that the monitor takes every time it does a reading.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;I'm going to munge all this into a nice XML file so I can then feed it to other programs for consumption.&amp;nbsp; Hehe, isn't technology great?&amp;nbsp; It can make you faster biker...&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=80897" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/robvi/archive/tags/Random+Thoughts/">Random Thoughts</category></item><item><title>Help Us Help You</title><link>http://blogs.msdn.com/b/robvi/archive/2004/02/23/78788.aspx</link><pubDate>Tue, 24 Feb 2004 03:43:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:78788</guid><dc:creator>robvi</dc:creator><slash:comments>8</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/robvi/rsscomments.aspx?WeblogPostID=78788</wfw:commentRss><comments>http://blogs.msdn.com/b/robvi/archive/2004/02/23/78788.aspx#comments</comments><description>&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;All too often I notice that we're slammed by the media as the &amp;#8220;evil empire&amp;#8221; who doesn't care tenderly&amp;nbsp;for its customers.&amp;nbsp; I agree that we've made our share of mistakes in the past, but we're really trying very hard to change that misconception.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;Here's your chance to help us help all you devs out there with compatibility issues.&amp;nbsp; We want your feedback!&amp;nbsp; I know a lot of you have PDC bits and have had a chance to upgrade from V1.0 and V1.1, and I've personally met quite a few of you out there who've come to Redmond for DevLabs or ISV labs.&amp;nbsp; Just today I got a lot of comments about a quick talk on some of our CLR compatibility efforts I gave at the VSIP Summit.&amp;nbsp; I'd love more, you know how to contact me :)&amp;nbsp; I also have a question - how would you folk like to be able to discuss compatibility issues you run into with us?&amp;nbsp; Would a newsgroup dedicated to CLR Compatibility be something you'd like to see?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;This post is provided &amp;#8220;as is&amp;#8221; and provides no warranties and confers no rights.&lt;/FONT&gt;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=78788" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/robvi/archive/tags/CLR+Version+Compatibility/">CLR Version Compatibility</category></item><item><title>Breaking Changes: past, present, and I can't speak about the future</title><link>http://blogs.msdn.com/b/robvi/archive/2004/02/20/77421.aspx</link><pubDate>Sat, 21 Feb 2004 04:36:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:77421</guid><dc:creator>robvi</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/robvi/rsscomments.aspx?WeblogPostID=77421</wfw:commentRss><comments>http://blogs.msdn.com/b/robvi/archive/2004/02/20/77421.aspx#comments</comments><description>&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;Ok, so a large part of my job is finding breaking changes and helping make sure that they get fixed.&amp;nbsp; These changes are classified as backward or forward compatibility breakers.&amp;nbsp; Backward compatibility means a newer version of the .NET FX can run older apps and forward compatibility&amp;nbsp;means an older version of the .NET FX can run newer apps. There are currently two released versions of the .NET FX out there (excluding service packs) these are 1.0.3705 and 1.1.4322 or V1.0 and V1.1 for short.&amp;nbsp; &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;There are a bunch of apps out there built on V1.0 that people are upgrading to V1.1.&amp;nbsp; Keep in mind that you have to be aware of the breaking changes between these two versions!&amp;nbsp; &lt;/FONT&gt;&lt;A href="http://www.gotdotnet.com/team/upgrade/apiChanges.aspx"&gt;&lt;FONT face=Arial color=#000080 size=2&gt;http://www.gotdotnet.com/team/upgrade/apiChanges.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Arial color=#000080 size=2&gt;&amp;nbsp;gives you a list of API changes.&amp;nbsp; To read the list after you've downloaded it, the left hand column represents removed API's and the right hand column represents added API's.&amp;nbsp; Breaking changes are highlighted in Red.&amp;nbsp; If you find an API has changed, you likely can get around the problem by updating your &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.gotdotnet.com/team/changeinfo/default.aspx"&gt;&lt;FONT face=Arial color=#000080 size=2&gt;http://www.gotdotnet.com/team/changeinfo/default.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Arial color=#000080 size=2&gt;&amp;nbsp;gives a list of other breaking changes in both forward and backward directions.&amp;nbsp; If you've upgraded to V1.1 and are encountering problems, check here.&amp;nbsp; This is a great resource as it shows workarounds for a lot of common problems that I've seen being asked.&amp;nbsp; &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;Obviously, our focus is predominantly on maintaining backwards compatibility.&amp;nbsp;&amp;nbsp;This makes sense, as you can't expect to take advantages of new features and expect your code to run fine on an older version of the FX where these features did not exist.&amp;nbsp; At the same time, the line is tough to make - what about improvements?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;Sometimes fit and finish and improvements to the overall quality of FX are somewhat hindered because of the requirement to maintain compatibility.&amp;nbsp; A great example of this is making additions to enums.&amp;nbsp; Trust me, there are a ton of extremely intelligent folks here who debate the issue of moving forward and making something great vs keeping things compatible to no end.&amp;nbsp; In the end, rest assured we're doing our best to satisfy as many needs out there as possible.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;This posting is posted &amp;#8220;as is&amp;#8221; and guarantees no warranties and confers no rights.&lt;/FONT&gt;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=77421" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/robvi/archive/tags/Common+Compatibility+Questions/">Common Compatibility Questions</category></item><item><title>Why Compat, when there's Side by Side?</title><link>http://blogs.msdn.com/b/robvi/archive/2004/02/19/76704.aspx</link><pubDate>Fri, 20 Feb 2004 06:11:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:76704</guid><dc:creator>robvi</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/robvi/rsscomments.aspx?WeblogPostID=76704</wfw:commentRss><comments>http://blogs.msdn.com/b/robvi/archive/2004/02/19/76704.aspx#comments</comments><description>&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;I used to (and still do) play computer games.&amp;nbsp; I remember playing this flight simulator game as a kid on Windows 3.x which I totally loved.&amp;nbsp; I used to think about playing it at school and couldn't wait to get home just so I could sit my arse down and shoot down attacking cat-alien beings.&amp;nbsp; Anyways, I installed some poker game one day and it apparently copied over some newer .dll's that my beloved flight sim needed and everything broke.&amp;nbsp; That stunk.&amp;nbsp; Well, side by side seems to be a solution to this - just allow multiple versions of libraries to exist simultaneously and you'll never hit this &amp;#8220;.dll hell&amp;#8221; problem.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;This is a great idea, but we often forget that there are drawbacks.&amp;nbsp; First, what if a new FX version has significant&amp;nbsp;perf improvements?&amp;nbsp; It would suck if your app couldn't take advantage of this especially if there were no changes that would break its functionality.&amp;nbsp; Second, if you want to run against one and only one version of the FX what happens if someone doesn't have that version and doesn't want to install it?&amp;nbsp; Here's a scenario - you have this managed app that doesn't ship with the redist on its CD, but your laptop has a newer FX version installed. You're sitting in a hotel room in TimBuk2 and they only happen to have dial-up 'net access that's sporadic at best.&amp;nbsp; It would smell like old cheese to have to download the redist before running the app.&amp;nbsp; Wouldn't it be great to just have it work on the newer FX?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;I could go on and on about this, but the truth is simple.&amp;nbsp; Though side-by-side is an important concept and can be a solution in some scenarios, the need for compatibility going forward is great.&amp;nbsp; I'm glad I can be part of this, it's a huge problem and we're on the forefront of trying to solve it.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000080&gt;&lt;FONT face=Arial size=2&gt;Anyways, that's it for today's rant.&amp;nbsp; I'm going to eat sushi over in Redmond Town Center now as it's my friend's bday and on your bday you get to eat free.&amp;nbsp; They have lots of tuna there everytime I go and it's always pink and fresh.&amp;nbsp; Mmmmm... tuna ;)&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;This posting is provided "AS IS" with no warranties, and confers no rights.&lt;/FONT&gt;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=76704" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/robvi/archive/tags/Random+Thoughts/">Random Thoughts</category></item><item><title>How do I detect what .NET Framework version is installed on a machine?</title><link>http://blogs.msdn.com/b/robvi/archive/2004/02/17/75272.aspx</link><pubDate>Wed, 18 Feb 2004 06:15:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:75272</guid><dc:creator>robvi</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/robvi/rsscomments.aspx?WeblogPostID=75272</wfw:commentRss><comments>http://blogs.msdn.com/b/robvi/archive/2004/02/17/75272.aspx#comments</comments><description>&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;I see this question asked again and again on various newsgroups.&amp;nbsp; After picking some of the &lt;STRONG&gt;BIG brains&lt;/STRONG&gt; I work with here are two methods you may want to consider: &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;&lt;STRONG&gt;Method 1:&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;1.) Under HKLM\SOFTWARE\Microsoft\.NETFramework\policy\ check to see if the version you want is installed (for example, look for the v1.1 folder and 4322 for the version number to detect the released version of V1.1)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;2.) Under HKLM\Software\Microsoft\.NETFramework\InstallRoot get the path where the Framework is installed. Create a directory string by concatenating the install root and the version under policy. E.g. "C:\WINDOWS\Microsoft.NET\Framework\" + "v1.1" + "." + "4322"&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;3.) Look at the directory, if mscorlib.dll (or another critical .dll to the .NET framework is there) the runtime is installed.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;&lt;STRONG&gt;Method 2:&lt;/STRONG&gt; &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;There's a caveat to this method in that the shim gets left behind when we uninstall if there is more than one version of the CLR on the machine, but it still can be useful depending on what version you're looking for:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;LoadLibrary(&amp;#8220;mscoree.dll&amp;#8220;); - if this fails then there's no runtime installed&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;GetProcAddress(&amp;#8220;CorBindToRuntime&amp;#8220;); - if this fails there's no runtime installed&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;CorBindToRuntime(&amp;#8220;GetRequestedRuntimeInfo&amp;#8220;); &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;GetRequestedRuntimeInfo(xxxx); where xxxx is the build number.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;This posting is provided "AS IS" with no warranties, and confers no rights.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial color=#000080 size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=75272" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/robvi/archive/tags/Common+Compatibility+Questions/">Common Compatibility Questions</category></item></channel></rss>