<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://msmvps.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>@ Head : Orcas</title><link>http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx</link><description>Tags: Orcas</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP2 (Build: 40407.4157)</generator><item><title>String.IsNullOrEmpty : update on that nasty null reference exception</title><link>http://msmvps.com/blogs/bill/archive/2009/03/10/string-isnullorempty-update-on-that-nasty-null-reference-exception.aspx</link><pubDate>Tue, 10 Mar 2009 12:08:26 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1677289</guid><dc:creator>bill</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1677289</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2009/03/10/string-isnullorempty-update-on-that-nasty-null-reference-exception.aspx#comments</comments><description>&lt;p&gt;Back in April 2006, &lt;a href="http://msmvps.com/blogs/bill/archive/2006/04/04/89234.aspx" target="_blank"&gt;I blogged about a nasty JIT compiler optimisation&lt;/a&gt; that would cause String.IsNullOrEmpty to throw a null reference exception;&amp;#160; ironic really given that is the very thing you’d use the IsNullOrEmpty method to check against.&amp;#160; Well since then, due to popular demand on the connect site, this bug has been fixed in .NET 2.0 SP1 (which implies .NET 3.0 and 3.5)&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://msmvps.com/kb/940900/"&gt;&lt;em&gt;940900&lt;/em&gt;&lt;/a&gt;&lt;em&gt; (http://support.microsoft.com/kb/940900/ ) FIX: You receive the NullReferenceException exception when you call the String.IsNullOrEmpty function in an application that is built on the .NET Framework 2.0&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1677289" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Whidbey/default.aspx">Whidbey</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VB10/default.aspx">VB10</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Bug/default.aspx">Bug</category><category domain="http://msmvps.com/blogs/bill/archive/tags/CSharp/default.aspx">CSharp</category><category domain="http://msmvps.com/blogs/bill/archive/tags/.NET/default.aspx">.NET</category></item><item><title>New release of Snippet Editor</title><link>http://msmvps.com/blogs/bill/archive/2009/02/04/new-release-of-snippet-editor.aspx</link><pubDate>Tue, 03 Feb 2009 17:31:38 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1668548</guid><dc:creator>bill</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1668548</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2009/02/04/new-release-of-snippet-editor.aspx#comments</comments><description>&lt;p&gt;Snippet Editor 2.1 is now released on codeplex:    &lt;br /&gt;&lt;a title="http://www.codeplex.com/SnippetEditor" href="http://www.codeplex.com/SnippetEditor"&gt;http://www.codeplex.com/SnippetEditor&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Apart from the few minor bug fixes, it includes improved search and now support for Visual Studio 2010 as well as 2008 and 2005.&lt;/p&gt;  &lt;p&gt;I’ve also added a “buy me a beer” button to this blog, and on the codeplex site, so if you like the Snippet Editor you can help put a smile on my face :) &lt;/p&gt;  &lt;p&gt;&lt;a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;amp;hosted_button_id=2895732"&gt;&lt;img title="donate" alt="donate" src="http://msmvps.com/cfs-filesystemfile.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bill/bymeabeer.jpg" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;The snippet editor remains free: no advertisements, no nag screens.&amp;#160; &lt;/p&gt;  &lt;p&gt;yep, free as in beer ;)&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Enjoy :)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1668548" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Whidbey/default.aspx">Whidbey</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VB10/default.aspx">VB10</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Snippets/default.aspx">Snippets</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category><category domain="http://msmvps.com/blogs/bill/archive/tags/CSharp/default.aspx">CSharp</category><category domain="http://msmvps.com/blogs/bill/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS+10/default.aspx">VS 10</category><category domain="http://msmvps.com/blogs/bill/archive/tags/XML/default.aspx">XML</category></item><item><title>Snippet Editor is now on CodePlex</title><link>http://msmvps.com/blogs/bill/archive/2008/12/28/snippet-editor-is-now-on-codeplex.aspx</link><pubDate>Sun, 28 Dec 2008 09:13:22 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1657880</guid><dc:creator>bill</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1657880</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/12/28/snippet-editor-is-now-on-codeplex.aspx#comments</comments><description>&lt;p&gt;I’ve just finished uploading the Snippet Editor to CodePlex&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.codeplex.com/SnippetEditor" href="http://www.codeplex.com/SnippetEditor"&gt;http://www.codeplex.com/SnippetEditor&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;It includes some minor bug fixes from the previous release.&lt;/p&gt;  &lt;p&gt;Enjoy :)&lt;/p&gt;  &lt;p&gt;And Merry XMas :)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1657880" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Whidbey/default.aspx">Whidbey</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VB10/default.aspx">VB10</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Snippets/default.aspx">Snippets</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category><category domain="http://msmvps.com/blogs/bill/archive/tags/CSharp/default.aspx">CSharp</category><category domain="http://msmvps.com/blogs/bill/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS+10/default.aspx">VS 10</category></item><item><title>.NET 3.5 SP1 source code</title><link>http://msmvps.com/blogs/bill/archive/2008/09/12/net-3-5-sp1-source-code.aspx</link><pubDate>Thu, 11 Sep 2008 15:36:26 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1647492</guid><dc:creator>bill</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1647492</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/09/12/net-3-5-sp1-source-code.aspx#comments</comments><description>&lt;p&gt;When Visual Studio 2008 SP1 was released it didn’t have the source code for the framework like the original version of 2008 had. Well now it has !!&amp;#160; Actually &lt;a href="http://blogs.msdn.com/rscc/archive/2008/08/28/net-framework-3-5-sp1-sources-are-available.aspx" target="_blank"&gt;it was released almost two weeks ago&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1647492" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category><category domain="http://msmvps.com/blogs/bill/archive/tags/CSharp/default.aspx">CSharp</category><category domain="http://msmvps.com/blogs/bill/archive/tags/.NET/default.aspx">.NET</category></item><item><title>Microsoft continues to treat VB as a 2nd class citizen</title><link>http://msmvps.com/blogs/bill/archive/2008/05/09/microsoft-continues-to-treat-vb-as-a-2nd-class-citizen.aspx</link><pubDate>Thu, 08 May 2008 15:43:28 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1617524</guid><dc:creator>bill</dc:creator><slash:comments>8</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1617524</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/05/09/microsoft-continues-to-treat-vb-as-a-2nd-class-citizen.aspx#comments</comments><description>&lt;p&gt;It&amp;#39;s bad enough when the Windows Live team continually releases their SDKs omitting VB, but when XNA 3.0 CTP is released and &lt;strong&gt;&lt;em&gt;STILL NO VB&lt;/em&gt;&lt;/strong&gt; support, it&amp;#39;s getting beyond a joke.&amp;nbsp; XNA 3 is for Visual Studio 2008 and lets you do cool things like create games for Zunes, unless of course you want to do that in VB.&lt;/p&gt; &lt;p&gt;&lt;a href="http://msmvps.com/blogs/bill/WindowsLiveWriter/MicrosoftcontinuestotreatVBasa2ndclassci_182C/XNA%20hates%20VB_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="638" alt="XNA hates VB" src="http://msmvps.com/blogs/bill/WindowsLiveWriter/MicrosoftcontinuestotreatVBasa2ndclassci_182C/XNA%20hates%20VB_thumb.png" width="544" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1617524" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Rant/default.aspx">Rant</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category><category domain="http://msmvps.com/blogs/bill/archive/tags/CSharp/default.aspx">CSharp</category><category domain="http://msmvps.com/blogs/bill/archive/tags/.NET/default.aspx">.NET</category></item><item><title>Where's the .NET framework ?</title><link>http://msmvps.com/blogs/bill/archive/2008/04/14/where-s-the-net-framework.aspx</link><pubDate>Mon, 14 Apr 2008 02:08:35 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1585917</guid><dc:creator>bill</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1585917</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/04/14/where-s-the-net-framework.aspx#comments</comments><description>&lt;p&gt;In putting together some virtual machines for testing on hyper-v, I was amazed and disappointed to find that Microsoft is NOT pushing out the .NET framework any more.&amp;nbsp; On Windows XP, windows update offers only .NET 1.1 and 2.0.&amp;nbsp; Vista includes 3.0.&amp;nbsp; So why is it that Microsoft will push out 2.0, but not 3.0 or 3.5 ?&amp;nbsp; Why isn&amp;#39;t 3.0 and 3.5 being offered to XP, and why isn&amp;#39;t 3.5 being offered to Vista ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1585917" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category><category domain="http://msmvps.com/blogs/bill/archive/tags/.NET/default.aspx">.NET</category></item><item><title>Auto properties : What ifs ...</title><link>http://msmvps.com/blogs/bill/archive/2008/03/28/auto-properties-what-ifs.aspx</link><pubDate>Fri, 28 Mar 2008 02:40:17 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1557969</guid><dc:creator>bill</dc:creator><slash:comments>4</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1557969</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/03/28/auto-properties-what-ifs.aspx#comments</comments><description>&lt;p&gt;Paul Vick posted a speculative post as to &lt;a href="http://www.panopticoncentral.net/archive/2008/03/27/23050.aspx"&gt;Automatically Implemented properties&lt;/a&gt; for VB10.&amp;nbsp; Although it&amp;#39;s kind of nice, it really is just a minor modification from what C# did in 3.0 and misses a lot of the &amp;quot;what if&amp;quot; scenarios we should be asking. &lt;/p&gt; &lt;p&gt;What if :&lt;/p&gt; &lt;ul&gt; &lt;li&gt;You want to add a break point on the property set&amp;nbsp; or get?  &lt;li&gt;You need to add some validation or logging ?  &lt;li&gt;You want your existing code to look consistent ?&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;What&amp;#39;s being proposed falls down on all those counts.&amp;nbsp; A better approach, IMO, would be to just auto collapse properties, similar to what Refactor! does. That works with existing code&lt;sup&gt;1&lt;/sup&gt;, and addresses all the what ifs above.&lt;/p&gt; &lt;p&gt;I also expect there will be IDE issues around the syntax Paul proposes as it is no different from the opening line of a Property today. So when you hit enter at the end of that line, you&amp;#39;d expect code completion. So adding lines between these auto properties will potentially break code.&lt;/p&gt; &lt;p&gt;And when you do press enter, let&amp;#39;s assume it does complete the code block for you:&amp;nbsp; it would need to include the backing field otherwise it risks breaking code elsewhere. That&amp;#39;s a major change from today, where unless you use a snippet, you only get the property stubs.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;What I would like to see, is allow the backing field to be declared inside the property block, such as :&lt;br /&gt;&lt;br /&gt;&lt;/p&gt; &lt;div style="font-size:11pt;background:#f3f5f4;color:black;font-family:consolas;"&gt; &lt;p style="margin:0px;"&gt;&amp;nbsp;&amp;nbsp; &lt;span style="color:#3092b1;"&gt;Public&lt;/span&gt; &lt;span style="color:#3092b1;"&gt;Property&lt;/span&gt; Name() &lt;span style="color:#3092b1;"&gt;As&lt;/span&gt; &lt;span style="color:#3092b1;"&gt;String&lt;/span&gt;&lt;/p&gt; &lt;p style="margin:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#3092b1;"&gt;Dim&lt;/span&gt; m_Name &lt;span style="color:#3092b1;"&gt;As&lt;/span&gt; &lt;span style="color:#3092b1;"&gt;String&lt;/span&gt;&lt;/p&gt; &lt;p style="margin:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#3092b1;"&gt;Get&lt;/span&gt;&lt;/p&gt; &lt;p style="margin:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#3092b1;"&gt;Return&lt;/span&gt; m_Name&lt;/p&gt; &lt;p style="margin:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#3092b1;"&gt;End&lt;/span&gt; &lt;span style="color:#3092b1;"&gt;Get&lt;/span&gt;&lt;/p&gt; &lt;p style="margin:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#3092b1;"&gt;Set&lt;/span&gt;(&lt;span style="color:#3092b1;"&gt;ByVal&lt;/span&gt; value &lt;span style="color:#3092b1;"&gt;As&lt;/span&gt; &lt;span style="color:#3092b1;"&gt;String&lt;/span&gt;)&lt;/p&gt; &lt;p style="margin:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_Name = value&lt;/p&gt; &lt;p style="margin:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#3092b1;"&gt;End&lt;/span&gt; &lt;span style="color:#3092b1;"&gt;Set&lt;/span&gt;&lt;/p&gt; &lt;p style="margin:0px;"&gt;&amp;nbsp;&amp;nbsp; &lt;span style="color:#3092b1;"&gt;End&lt;/span&gt; &lt;span style="color:#3092b1;"&gt;Property&lt;/span&gt;&lt;/p&gt;&lt;/div&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Then the property truly can be collapsed and expanded as it is fully encapsulated.&lt;/p&gt; &lt;p&gt;I&amp;#39;d also especially like us to be able to specify the default prefix used for backing fields when generated, be it m_ or _ or m etc.&amp;nbsp; We shouldn&amp;#39;t have to change our coding styles to match an inflexible code generator.&lt;/p&gt; &lt;p&gt;I think this feature needs to be looked at in terms of existing code, and code maintenance, not just a quick fix for writing pass through properties.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;font size="2"&gt;&lt;em&gt;1. There&amp;#39;s a bug in Refactor with properties in a Module, where it hides the property, not the backing field.&lt;/em&gt;&lt;/font&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1557969" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VB10/default.aspx">VB10</category></item><item><title>Can't get no VB Action ?</title><link>http://msmvps.com/blogs/bill/archive/2008/03/27/can-t-get-no-vb-action.aspx</link><pubDate>Thu, 27 Mar 2008 05:30:01 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1556123</guid><dc:creator>bill</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1556123</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/03/27/can-t-get-no-vb-action.aspx#comments</comments><description>&lt;p&gt;Paul Stovell &lt;strong&gt;&lt;em&gt;finally&lt;/em&gt;&lt;/strong&gt; &lt;a href="http://www.paulstovell.net/blog/index.php/vbnet-wheres-actiont-support/"&gt;notices the lack of support for statement lambdas in VB9&lt;/a&gt;.&amp;nbsp; Unfortunately Vb9 only supports lambda expressions such as can be expressed in today&amp;#39;s expression trees.&amp;nbsp; .NET 4.0 will most probably include support for lambda statements, and hopefully at the same time VB10 will have support for them too.&lt;/p&gt; &lt;p&gt;When support for multi statement lambdas was dropped from VB, I complained bitterly.&amp;nbsp; It&amp;#39;s a real pain, especially if you want to just add something benign like logging into a lambda: in VB9 you can&amp;#39;t easily.&amp;nbsp; Yes there are &amp;quot;work arounds&amp;quot;, but if you need to capture surrounding variables, then it&amp;#39;s a huge pain as you need to manually write the captures (promotion of local variables into fields in another class).&lt;/p&gt; &lt;p&gt;Of course fixing this feature, is on my &lt;a href="http://msmvps.com/blogs/bill/search.aspx?q=%22VB+10+thoughts%22&amp;amp;o=Relevance"&gt;VB10 wish lists&lt;/a&gt;.&amp;nbsp; It&amp;#39;s &lt;a href="http://msmvps.com/blogs/bill/archive/2007/10/05/vb-10-thoughts.aspx"&gt;listed as item 6 in the first part&lt;/a&gt; of &lt;a href="http://msmvps.com/blogs/bill/search.aspx?q=%22VB+10+thoughts%22&amp;amp;o=Relevance"&gt;VB10 feature wishes&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;The nice thing for VB in all of this though, is it will probably never have to separate what can and can&amp;#39;t be expressed as an expression tree.&amp;nbsp; C# has kind of made a mess around anonymous delegates and lambdas (I&amp;#39;ve even heard Anders admit to that !). ;)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1556123" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/LINQ/default.aspx">LINQ</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VB10/default.aspx">VB10</category></item><item><title>Using the Microsoft.VisualStudio.Zip assembly</title><link>http://msmvps.com/blogs/bill/archive/2008/03/14/using-the-microsoft-visualstudio-zip-assembly.aspx</link><pubDate>Thu, 13 Mar 2008 23:50:16 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1542387</guid><dc:creator>bill</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1542387</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/03/14/using-the-microsoft-visualstudio-zip-assembly.aspx#comments</comments><description>&lt;p&gt;I got an email today asking about the use of the Microsoft.VisualStudio.Zip assembly.&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;Hi, &lt;p&gt;my name is XXXXXX and I&amp;#39;m from XXXXX. &lt;p&gt;I&amp;#39;m writing a custom .Vsi writer and I saw that in the Code Snippet Editor for VB 2008 (a great tool!) you made use of the Microsoft.VisualStudio.Zip assembly. &lt;p&gt;What are licenses related to this assembly? I mean.. can I reference it to a project of mine (which I&amp;#39;ll release as an open source) or only Microsoft people can use it?&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;That&amp;#39;s not an easy question to answer as I am certainly no lawyer.&amp;nbsp; But I did use it, and Microsoft has pointed to and distributed the code I wrote that uses it. But I am not from Microsoft, and Microsoft may have done that unknowingly.&lt;/p&gt; &lt;p&gt; The Microsoft.VisualStudio.Zip library ships with Visual Studio and is installed in the GAC, but usually you need to &lt;a href="http://msmvps.com/blogs/bill/archive/2005/09/20/66921.aspx"&gt;turn off fusion view&lt;/a&gt; to reference it.&amp;nbsp; My belief is that as long as you don&amp;#39;t distribute the dll then there is no licensing issue. And I believe that you may even be technically able to distribute it to systems that have Visual Studio as they have a license to use it, but that&amp;#39;s a grey area. &lt;/p&gt; &lt;p&gt;Personally, I think intent is the real issue, and I honestly can&amp;#39;t see anything bad in anyone referencing the assembly if they are writing tools to extend Visual Studio in a manner that doesn&amp;#39;t compete with Microsoft&amp;#39;s different SKU&amp;#39;s.&lt;/p&gt; &lt;p&gt; The sad thing is Microsoft doesn&amp;#39;t actually provide a Zip library as part of .NET that you can reference and use in &lt;strong&gt;&lt;em&gt;ANY&lt;/em&gt;&lt;/strong&gt; project.&amp;nbsp; They provide and use Zip for their Packaging classes but they only include API for working with office OpenXML files.&amp;nbsp; They also provide the gzip stream stuff, but there&amp;#39;s a fair bit of work to make that work with actual zip files.&amp;nbsp; The sad part of this is Microsoft views zip as important, be it .VSI files and Visual Studio, or OpenXML files&amp;nbsp; such as docx etc which are renamed zip files, yet they don&amp;#39;t provide a Zip library as part of .NET, even though they have written one and use it themselves.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1542387" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Rant/default.aspx">Rant</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category></item><item><title>Windows Live team continues insults at VB'ers ...</title><link>http://msmvps.com/blogs/bill/archive/2008/03/12/windows-live-team-continues-insults-at-vb-ers.aspx</link><pubDate>Tue, 11 Mar 2008 14:11:54 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1540078</guid><dc:creator>bill</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1540078</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/03/12/windows-live-team-continues-insults-at-vb-ers.aspx#comments</comments><description>&lt;p&gt;After &lt;a href="http://msmvps.com/blogs/bill/archive/2008/03/04/live-search-gives-vb-the-finger.aspx"&gt;my post&lt;/a&gt; about the first set of insults from the Windows Live team and the Search API samples, it was nice to see some VB samples released.&amp;nbsp; Sadly though they were just the C# samples run through an automated tool.&amp;nbsp; I mean look at this bullshit code from them :&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Select Case searchFlagsValue&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Case 0&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Flags = SearchFlags.None&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Exit Select&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Case 1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Flags = SearchFlags.MarkQueryWords&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Exit Select &lt;p&gt;&amp;nbsp; ....... &lt;p&gt;&amp;nbsp; &lt;p&gt;The Exit Select is just utter crap. The only reason it&amp;#39;s there is because the c# code uses break statements inside a switch block and that&amp;#39;s what their machine translation mapped to Exit Select. It shows an incredible ignorance of VB, and demonstrates yet again complete contempt for the VB audience. &lt;p&gt;To add insult to insult, they also decided not to include the Windows.Forms sample for VB. &lt;p&gt;&amp;nbsp; &lt;p&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1540078" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Whidbey/default.aspx">Whidbey</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Rant/default.aspx">Rant</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VB10/default.aspx">VB10</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category><category domain="http://msmvps.com/blogs/bill/archive/tags/CSharp/default.aspx">CSharp</category></item><item><title>Now the entire Windows Live team says f*ck you VB</title><link>http://msmvps.com/blogs/bill/archive/2008/03/05/now-the-entire-windows-live-team-says-f-ck-you-vb.aspx</link><pubDate>Wed, 05 Mar 2008 00:17:19 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1533485</guid><dc:creator>bill</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1533485</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/03/05/now-the-entire-windows-live-team-says-f-ck-you-vb.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://msmvps.com/blogs/bill/archive/2008/03/04/live-search-gives-vb-the-finger.aspx"&gt;Yesterday I reported&lt;/a&gt; how the Windows Live Search team posted samples in 5 different languages, but not VB.&amp;nbsp; Well today the Live team has posted their Live ID Web Authentication SDK, which boasts :&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt; This release includes a sample application for each of six different programming languages: ASP.NET, Java, Perl, PHP, Python, and Ruby.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;But when they say ASP.NET, they actually mean C#.&amp;nbsp; Yes Microsoft can release samples in six different languages just as long as none of them are VB.&amp;nbsp; (can you say &amp;quot;&lt;a href="http://msmvps.com/blogs/bill/archive/2007/10/22/is-vb-the-n-gg-r-of-programming-languages.aspx"&gt;the n word&lt;/a&gt;&amp;quot; ?)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1533485" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Rant/default.aspx">Rant</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category></item><item><title>Live Search gives VB the finger</title><link>http://msmvps.com/blogs/bill/archive/2008/03/04/live-search-gives-vb-the-finger.aspx</link><pubDate>Tue, 04 Mar 2008 03:39:59 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1532687</guid><dc:creator>bill</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1532687</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/03/04/live-search-gives-vb-the-finger.aspx#comments</comments><description>&lt;p&gt;Microsoft&amp;#39;s Live Search API team have released samples in Java,&amp;nbsp; PHP, C#, Python and Ruby, but no VB samples.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/results.aspx?DisplayLang=en&amp;amp;nr=20&amp;amp;categoryid=10&amp;amp;freetext=Live+Search&amp;amp;sortCriteria=date"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="710" alt="live search" src="http://msmvps.com/blogs/bill/WindowsLiveWriter/LiveSearchgivesVBthefinger_CE3C/live%20search_3.png" width="540" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Better not say the &amp;quot;&lt;a href="http://msmvps.com/blogs/bill/archive/2007/10/22/is-vb-the-n-gg-r-of-programming-languages.aspx" target="_blank"&gt;N word&lt;/a&gt;&amp;quot;, even though that&amp;#39;s the way it seems yet another team at Microsoft chooses to treat their supposedly most popular language base.&amp;nbsp; The question remains though, what will it take for the divisions inside Microsoft to treat VB equally.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1532687" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Rant/default.aspx">Rant</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VB10/default.aspx">VB10</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category></item><item><title>videos from Lang.Net symposium</title><link>http://msmvps.com/blogs/bill/archive/2008/02/22/videos-from-lang-net-symposium.aspx</link><pubDate>Fri, 22 Feb 2008 03:47:02 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1521364</guid><dc:creator>bill</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1521364</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/02/22/videos-from-lang-net-symposium.aspx#comments</comments><description>&lt;p&gt;Thanks to &lt;a href="http://www.panopticoncentral.net/archive/2008/02/20/22883.aspx" target="_blank"&gt;Paul Vick&lt;/a&gt; for pointing out the &lt;a href="http://langnetsymposium.com/agenda.asp" target="_blank"&gt;Lang.Net symposium&lt;/a&gt; talks are now on the web.&amp;nbsp; I&amp;#39;ve only watched a few so far, but here&amp;#39;s my thoughts/review of them&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://langnetsymposium.com/talks/2-04%20-%20Visual%20Basic%20-%20Paul%20Vick.html" target="_blank"&gt;&lt;strong&gt;Paul&amp;#39;s talk on VB.Next&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;A quick overview of one area VB will probably be heading is making the language more scriptable.&amp;nbsp; This isn&amp;#39;t anything revolutionary as we all recall VBScript, and we all also know that died for a number of reasons mainly lack of support in other browsers and lack of a public standard that wasn&amp;#39;t proprietary Microsoft control. Today as far as scripting goes, JScript rules the nest.&amp;nbsp; But for client side applications there is still a void from what VBA and the Scripting control use to provide. Admittedly it&amp;#39;s not that hard to roll your own with reflection, but not as easy as it use to be. The kind of scripting we are talking here is more like running code in the immediate window of VS which you can do today, and probably extends through to possibilities like recording macros, something Office still lacks for VB.NET (although Visual Studio does have VB.NET macro recording today)&lt;/p&gt; &lt;p&gt;How important this will be to the VB community I think is questionable.&amp;nbsp; Indirectly it will be important as there should be some good spin-offs, especially inside Microsoft.&amp;nbsp; One advantage that shouldn&amp;#39;t be under estimated is that the VB team will be writing the compiler and editor helper bits in VB.NET.&amp;nbsp; This kind of level of dog fooding will for the first time probably drive them to really consider power features inside the language a lot more ;)&lt;/p&gt; &lt;p&gt;Concerns will be how much this takes time away form other things the language and users really need. And the scariest thought is this will be yet another attempt at dumbing down VB, with the typical patronising &amp;quot;Mort&amp;quot; persona rubbish, where the VB team no longer asks real users what they want, instead they ask silly questions like &amp;quot;assume you&amp;#39;re Mort ....&amp;quot;.&amp;nbsp; I really hope we|they have matured beyond that by now.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;a href="http://langnetsymposium.com/talks/3-07%20-%20Modeling%20and%20Languages%20-%20Don%20Box_1.html" target="_blank"&gt;&lt;strong&gt;Modelling and Languages&lt;/strong&gt;&lt;/a&gt; &lt;p&gt;&lt;strike&gt;Jay and Silent Bob&lt;/strike&gt; Don Box and Chris Anderson give what was probably an entertaining presentation. I love Don Box&amp;#39;s presentation style, always fun/entertaining.&amp;nbsp; But if you are looking for content, to actually watch an &lt;strong&gt;informative&lt;/strong&gt; presentation then skip this one.&amp;nbsp; They really don&amp;#39;t talk about what Microsoft is doing, more they talk about what has already been done, e.g XAML.&amp;nbsp; You should get the message that Microsoft thinks modelling is important and folks there are looking at making that happen, and hopefully doing so in a way that congregates other tracts they have worked on.&lt;/p&gt; &lt;p&gt;Sadly this presentation doesn&amp;#39;t really present anything concrete, only a foofy world of maybe.&amp;nbsp; It&amp;#39;s disappointing to me as I view modelling as incredibly important and the interaction with languages is crucial. Don and Chris have been working on it for some time so it was sad to see their presentation was nothing more than a rehash of one they did twelve months ago.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://langnetsymposium.com/talks/2-10%20-%20remotion%20Mixins%20-%20Stefan%20Wenig%20and%20Fabian%20Schmied%20-%20rubicon.html" target="_blank"&gt;&lt;strong&gt;remotion Mixins&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;A good bit of European humour opens this session. Not really in depth, but does provide a good overview of how remotion is using Mixins today.&amp;nbsp; Their implementation is a runtime object factory that looks for attributes and does the mixin magic accordingly.&amp;nbsp; I think I&amp;#39;d prefer a more AOP compile time injection, and perhaps more design time feedback on possible issues.&amp;nbsp; As the guys &amp;quot;hint&amp;quot; at, it would be great to see language support for mixins.&lt;/p&gt; &lt;p&gt;In the VB world, Amanda Silver, reportedly mentioned &amp;quot;Extends&amp;quot; at TechEd EMEA 2007, but to date the VB team hasn&amp;#39;t made those slides generally available or opened up any discussion as to what mixins would mean.&amp;nbsp; Hopefully that will change soon, if we are to take them seriously over the claim to &amp;quot;democratise&amp;quot; VB ;)&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://langnetsymposium.com/talks/2-00%20-%20Democratizing%20the%20Cloud%20with%20Volta%20-%20Erik%20Meijer.html" target="_blank"&gt;Volta&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Erik Meijer provides an interesting and honest presentation of Volta. So far this has been the best session I&amp;#39;ve watched.&amp;nbsp; It had a good level of technical content combined with the view of the overall goals.&lt;/p&gt; &lt;p&gt;Of course, I don&amp;#39;t agree with some of the way Volta is targeted/implemented at present, but I&amp;#39;ll apply the Moore&amp;#39;s law factor for now ;) I would like to see Erik and the Volta team starting to look more at the modelling side of things rather than just attributes in code, maybe even start adding some substance to Don &amp;amp; Chris&amp;#39;s work &amp;lt;g&amp;gt;.&lt;/p&gt; &lt;p&gt;Lots of good take away points, especially the parts about making things easy to adopt yet giving the developer the ability to make explicit choices.&amp;nbsp; Someone should make that one a poster and put it up around certain team&amp;#39;s offices... &amp;quot;if you&amp;#39;re going to do magic, give them the choice&amp;quot;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1521364" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Rant/default.aspx">Rant</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VB10/default.aspx">VB10</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category></item><item><title>Microsoft thinks VB programmers are so "special" ...</title><link>http://msmvps.com/blogs/bill/archive/2008/02/21/microsoft-thinks-vb-programmers-are-so-quot-special-quot.aspx</link><pubDate>Thu, 21 Feb 2008 02:37:11 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1520527</guid><dc:creator>bill</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1520527</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/02/21/microsoft-thinks-vb-programmers-are-so-quot-special-quot.aspx#comments</comments><description>&lt;p&gt;I was flicking through some MSDN help pages, when I noticed this topic on Component Authoring:&lt;/p&gt; &lt;p&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="373" alt="Capture" src="http://msmvps.com/blogs/bill/WindowsLiveWriter/MicrosoftthinksVBprogrammersaresospecia_BF84/Capture_1.png" width="659" border="0" /&gt; &lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Isn&amp;#39;t it nice how &amp;quot;special&amp;quot; Microsoft views VB folks.&amp;nbsp; Obviously anyone using C# doesn&amp;#39;t have this issue, it&amp;#39;s just the people using VB.&amp;nbsp; Not patronising at all &amp;lt;geez&amp;gt;&lt;/p&gt; &lt;p&gt;Oh well, at least they didn&amp;#39;t say you VB folks need to use the other door.&amp;nbsp; &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1520527" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Life/default.aspx">Life</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Rant/default.aspx">Rant</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category></item><item><title>Power Pack 3.0 released !!</title><link>http://msmvps.com/blogs/bill/archive/2008/02/18/power-pack-3-0-released.aspx</link><pubDate>Mon, 18 Feb 2008 06:14:27 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1517712</guid><dc:creator>bill</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1517712</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/02/18/power-pack-3-0-released.aspx#comments</comments><description>&lt;p&gt;Just noticed the &lt;a href="http://msdn2.microsoft.com/en-us/vbasic/bb735936.aspx" target="_blank"&gt;VB Power Pack 3.0&lt;/a&gt; has been released with the much anticipated Data Repeater component......&lt;/p&gt; &lt;p&gt; Haven&amp;#39;t had a chance to test it yet, but fingers crossed it looks promising.&amp;nbsp; The &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=371368A8-7FDC-441F-8E7D-FE78D96D4063&amp;amp;displaylang=en" target="_blank"&gt;download is here&lt;/a&gt;, the &lt;a href="http://msdn2.microsoft.com/en-us/vbasic/bb735936.aspx" target="_blank"&gt;pretty splash page about it is here&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1517712" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category></item><item><title>Arrays in VB.NET</title><link>http://msmvps.com/blogs/bill/archive/2008/02/16/arrays-in-vb-net.aspx</link><pubDate>Sat, 16 Feb 2008 02:05:37 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1515596</guid><dc:creator>bill</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1515596</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/02/16/arrays-in-vb-net.aspx#comments</comments><description>&lt;p&gt;You probably know that declaring an array in VB, such as :&lt;/p&gt; &lt;div style="font-size:11pt;background:white;color:black;font-family:consolas;"&gt; &lt;p style="margin:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#3092b1;"&gt;Dim&lt;/span&gt; names(9) &lt;span style="color:#3092b1;"&gt;As&lt;/span&gt; &lt;span style="color:#3092b1;"&gt;String&lt;/span&gt;&lt;/p&gt;&lt;/div&gt; &lt;p&gt;creates an array with 10 elements.&amp;nbsp; As of VB8 you can use the 0 To syntax for the same thing:&lt;/p&gt; &lt;div style="font-size:11pt;background:white;color:black;font-family:consolas;"&gt; &lt;p style="margin:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#3092b1;"&gt;Dim&lt;/span&gt; names(0 &lt;span style="color:#3092b1;"&gt;To&lt;/span&gt; 9) &lt;span style="color:#3092b1;"&gt;As&lt;/span&gt; &lt;span style="color:#3092b1;"&gt;String&lt;/span&gt;&lt;/p&gt;&lt;/div&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;I prefer the 0 To syntax as it clearer for those from other languages as well as clearer for me ;)&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;But did you know you can also do this :&lt;/p&gt; &lt;div style="font-size:11pt;background:white;color:black;font-family:consolas;"&gt; &lt;p style="margin:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#3092b1;"&gt;Dim&lt;/span&gt; names(-1) &lt;span style="color:#3092b1;"&gt;As&lt;/span&gt; &lt;span style="color:#3092b1;"&gt;String&lt;/span&gt;&lt;/p&gt; &lt;p style="margin:0px;"&gt;&lt;span style="color:#3092b1;"&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt; &lt;div style="font-size:11pt;background:white;color:black;font-family:consolas;"&gt; &lt;p style="margin:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#3092b1;"&gt;Dim&lt;/span&gt; names(0 &lt;span style="color:#3092b1;"&gt;To&lt;/span&gt; -1) &lt;span style="color:#3092b1;"&gt;As&lt;/span&gt; &lt;span style="color:#3092b1;"&gt;String&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt; &lt;p&gt;this creates a zero length array.&lt;/p&gt; &lt;p&gt;This comes in handy if you are resizing an array, and there is the possibility of the count being zero, e.g&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;div style="font-size:11pt;background:white;color:black;font-family:consolas;"&gt; &lt;p style="margin:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#3092b1;"&gt;Dim&lt;/span&gt; names(0 &lt;span style="color:#3092b1;"&gt;To&lt;/span&gt; count - 1) &lt;span style="color:#3092b1;"&gt;As&lt;/span&gt; &lt;span style="color:#3092b1;"&gt;String&lt;/span&gt;&lt;/p&gt; &lt;p style="margin:0px;"&gt;&lt;span style="color:#3092b1;"&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin:0px;"&gt;&lt;span style="color:#3092b1;"&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="margin:0px;"&gt;&lt;span style="color:#3092b1;"&gt;:)&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1515596" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Whidbey/default.aspx">Whidbey</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category></item><item><title>Shiny new icons and improved icon editor !</title><link>http://msmvps.com/blogs/bill/archive/2008/01/24/shiny-new-icons-and-improved-icon-editor.aspx</link><pubDate>Thu, 24 Jan 2008 05:00:28 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1477467</guid><dc:creator>bill</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1477467</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/01/24/shiny-new-icons-and-improved-icon-editor.aspx#comments</comments><description>&lt;p&gt; Thanks to &lt;a href="http://www.thedatafarm.com/blog/ct.ashx?id=0620aed3-f6c4-42db-b75d-f6ef7e549958&amp;amp;url=http%3a%2f%2fblogs.devsource.com%2fdevlife%2fcontent%2fnet_general%2fvs2008_includes_shiny_new_images_to_use_in_our_apps_1.html" target="_blank"&gt;Julie&amp;#39;s post&lt;/a&gt;, I looked in the image library that comes with VS 2008 and found some nice new images.&amp;nbsp; What&amp;#39;s really cools is many of the icons are in Vista format.&amp;nbsp; Open them with Visual Studio, and you&amp;#39;ll see that the Visual Studio icon editor has also been improved, providing a preview list of the images inside an icon.&amp;nbsp; I opened the zip icon, and inside it there is a 256 x 256 png for use in Vista.&lt;/p&gt; &lt;p&gt;&lt;a href="http://msmvps.com/blogs/bill/WindowsLiveWriter/Shinynewiconsandimprovediconeditor_E115/zip_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="260" alt="zip" src="http://msmvps.com/blogs/bill/WindowsLiveWriter/Shinynewiconsandimprovediconeditor_E115/zip_thumb.png" width="260" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Cool ! :)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1477467" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category></item><item><title>Add As Link</title><link>http://msmvps.com/blogs/bill/archive/2008/01/17/add-as-link.aspx</link><pubDate>Wed, 16 Jan 2008 15:42:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1466070</guid><dc:creator>bill</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;in VB 2008 you get a great intellisense experience when working with XML axis properties if you add the schema(s) to your project.&amp;nbsp; You don&amp;#39;t need to add the actual schema, you can just add a link.&amp;nbsp;&amp;nbsp; From the Project menu select Add Existing Item, browse to the xsd file then do NOT click Add, instead click the drop down arrow next to Add and select Add As Link.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img style="BORDER-RIGHT:0px;BORDER-TOP:0px;BORDER-LEFT:0px;BORDER-BOTTOM:0px;" height="522" alt="addaslink" src="http://msmvps.com/blogs/bill/WindowsLiveWriter/AddAsLink_2620/addaslink_3.png" width="744" border="0" /&gt; &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;One thing to be aware of is the path is stored in your project file (.vbproj) as a relative path. This can be problematic when distributing projects and the file is outside of the project directories, but works well when the path is a shared folder in a multi project solution.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1466070" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/LINQ/default.aspx">LINQ</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category></item><item><title>Open Containing Folder</title><link>http://msmvps.com/blogs/bill/archive/2008/01/11/open-containing-folder.aspx</link><pubDate>Fri, 11 Jan 2008 03:04:03 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1454242</guid><dc:creator>bill</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1454242</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/01/11/open-containing-folder.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://blogs.msdn.com/saraford/archive/2008/01/10/did-you-know-you-can-open-up-a-windows-explorer-browser-directly-to-the-active-file.aspx" target="_blank"&gt;Sara Ford writes about the &amp;quot;Open Containing Folder&amp;quot;&lt;/a&gt; command in Visual Studio.&amp;nbsp; I use that sometimes, but it won&amp;#39;t work on &amp;quot;temporary&amp;quot; projects, instead that menu appears grayed out.&amp;nbsp; The trick here is to add a Explorer item to your Tools menu, and give it the argument of $(ItemDir)&lt;/p&gt; &lt;p&gt;This allows you to open the containing folder of any item, whether the project is temporary or otherwise :)&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="448" alt="tools" src="http://msmvps.com/blogs/bill/WindowsLiveWriter/OpenContainingFolder_C5D1/tools_3.png" width="461" border="0" /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1454242" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category></item><item><title>Return what ???</title><link>http://msmvps.com/blogs/bill/archive/2008/01/09/return-what.aspx</link><pubDate>Wed, 09 Jan 2008 12:32:09 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1449998</guid><dc:creator>bill</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/bill/rsscomments.aspx?PostID=1449998</wfw:commentRss><comments>http://msmvps.com/blogs/bill/archive/2008/01/09/return-what.aspx#comments</comments><description>&lt;p&gt;I was looking at &lt;a href="http://blogs.msdn.com/vbteam/archive/2008/01/08/did-you-know-intellisense-everywhere-lisa-feigenbaum.aspx" target="_blank"&gt;Lisa&amp;#39;s latest blog entries&lt;/a&gt;, and the second last screen shot made me sit back and say &amp;quot;what&amp;quot;:&lt;br /&gt;&lt;br /&gt;&lt;img src="http://blogs.msdn.com/photos/vbteam_gallery2/images/7036740/original.aspx" alt="" /&gt; &lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;In that example of Lisa&amp;#39;s, the local variable surfaceArea is actually the one that VB creates for you by default, allowing you to assign to the function name. If you don&amp;#39;t explicitly return a value the value of that auto generated local variable is returned for you.&amp;nbsp; But should it be in intellisense following a Return statement ?&amp;nbsp; Like in this example, you could see Lisa could easily select the first variable shown. The code would compile without warning, but it would return 0.&amp;nbsp; And due to the similarity in the local variable she used and the function name, it&amp;#39;s one of those bugs you can stare at all day and just not see.&lt;/p&gt; &lt;p&gt;Personally, I would like tot see that auto-generated variable become a project wide option to raise either a warning or an exception.&amp;nbsp; I don&amp;#39;t see the need for it other than those who want some sort of backward compatibility.&amp;nbsp; Secondly, and more importantly, this should raise a warning about using a variable before it is assigned to. Sure it&amp;#39;s a value type note a reference type, but if a value isn&amp;#39;t assigned, then what is it returning. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1449998" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/bill/archive/tags/VB/default.aspx">VB</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Rant/default.aspx">Rant</category><category domain="http://msmvps.com/blogs/bill/archive/tags/Orcas/default.aspx">Orcas</category><category domain="http://msmvps.com/blogs/bill/archive/tags/VS2008/default.aspx">VS2008</category></item></channel></rss>