<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>pushbomb &#187; resharper</title>
	<atom:link href="http://team.pushbomb.com/category/concepts-implemented/resharper-tools-that-allow-the-practices-helping-the-how/feed/" rel="self" type="application/rss+xml" />
	<link>http://team.pushbomb.com</link>
	<description>tv programmed by the collective</description>
	<lastBuildDate>Tue, 05 Jan 2010 22:49:48 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='team.pushbomb.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/a08732ed34e6814d5a5513fe8cde5696?s=96&#038;d=http://s2.wp.com/i/buttonw-com.png</url>
		<title>pushbomb &#187; resharper</title>
		<link>http://team.pushbomb.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://team.pushbomb.com/osd.xml" title="pushbomb" />
	<atom:link rel='hub' href='http://team.pushbomb.com/?pushpress=hub'/>
		<item>
		<title>JetBrains Resharper 4.5 is out</title>
		<link>http://team.pushbomb.com/2009/04/16/resharper_4_5_rocks_for_dot_net_c_sharp_silverlight_devs/</link>
		<comments>http://team.pushbomb.com/2009/04/16/resharper_4_5_rocks_for_dot_net_c_sharp_silverlight_devs/#comments</comments>
		<pubDate>Fri, 17 Apr 2009 02:12:43 +0000</pubDate>
		<dc:creator>Damon Wilder Carr</dc:creator>
				<category><![CDATA[C# 3.0 Enhancements]]></category>
		<category><![CDATA[C# 3.0 for Internal DSL]]></category>
		<category><![CDATA[Cannot live Without]]></category>
		<category><![CDATA[Functional Programming]]></category>
		<category><![CDATA[Industry News]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[Siverlight]]></category>
		<category><![CDATA[Software Design]]></category>
		<category><![CDATA[Software Futures]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Visual Studio 2010]]></category>
		<category><![CDATA[Windows Presentation Foundation]]></category>
		<category><![CDATA[concepts implemented]]></category>
		<category><![CDATA[resharper]]></category>
		<category><![CDATA[software as strategic]]></category>
		<category><![CDATA[.NET 3.5. software craftsman]]></category>
		<category><![CDATA[best addin]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Must-Have]]></category>
		<category><![CDATA[Refactoring]]></category>
		<category><![CDATA[Resharper]]></category>
		<category><![CDATA[SilverLight]]></category>
		<category><![CDATA[Visual Studio 2008]]></category>

		<guid isPermaLink="false">http://dcarr.wordpress.com/2009/04/16/resharper_4_5_rocks_for_dot_net_c_sharp_silverlight_devs/</guid>
		<description><![CDATA[9 our of 10 studies prove: Resharper make your your hair grow back, your dog come home (yes even if he died), your wife will love you again and your kids will listen to you.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=1339&subd=dcarr&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p align="center">&#160;</p>
<p align="center"><a href="http://www.domaindotnet.com/resharper/whatsnew45.html" target="_blank">Click Here</a> to Watch What’s New </p>
<h5>9 our of 10 studies prove: Resharper make your your hair grow back, your dog come home (yes even if he died), your wife will love you again and your kids will listen to you.</h5>
<p>OK perhaps it is not a country music song played backwards. </p>
<blockquote><p>BUT your nuts to even think about wasting all that time not using it. For someone who knows it is people not tools that always win, this is my only exception in 20 years that I will stand behind.</p>
</blockquote>
<p>&#160;</p>
<p>Why stare at a keyboard for hours wondering how to navigate a nasty tangled refactoring you know you must do when you can do the right thing AND make the 5:30 train.</p>
<p>Me? I hit the shift-ctrl-space repeatedly and am shocked when nothing happens. Then I install it and life is good again.</p>
<h4>ReSharper 4.5 Released</h4>
<p>April 8, 2009</p>
<h6>In This Issue</h6>
<p><a href="http://www.jetbrains.com/news/dotnet/news.html#rs45Intro">Introduction</a>     <br /><a href="http://www.jetbrains.com/news/dotnet/news.html#rs45-1">Performance and Memory Usage Improvements</a>     <br /><a href="http://www.jetbrains.com/news/dotnet/news.html#rs45-2">Solution-Wide Code Inspections</a></p>
<p><a href="http://www.jetbrains.com/news/dotnet/news.html#rs45-3">VB9 Support</a>     <br /><a href="http://www.jetbrains.com/news/dotnet/news.html#rs45-4">Extended Naming Style Configuration</a>     <br /><a href="http://www.jetbrains.com/news/dotnet/news.html#rs45-5">Other Enhancements</a></p>
<h5>Introduction</h5>
<p><b>ReSharper 4.5</b> is finally out, so your next productivity upgrade is just a mouse click away!</p>
<p>As announced, the new version features major improvements in performance and memory usage. After all, what is a productivity tool for if not for being agile, robust and responsive?</p>
<p>In addition to focusing on performance enhancements, we also added a number of intelligence features and improvements.</p>
<p>We&#8217;ve prepared a short <a href="http://www.jetbrains.com/resharper/documentation/presentation/rs45/whatsnew-rs45.html">Flash movie</a> to introduce the new features in ReSharper 4.5. Get the hang of things in just a few minutes! </p>
<p>For users of older versions we have a ReSharper 3.0 vs. ReSharper 4.5 <a href="http://www.jetbrains.com/resharper/features/resharper3_vs_resharper45.html">Comparison matrix</a>. <a href="http://dcarr.files.wordpress.com/2009/04/image.png"><img style="display:inline;border-width:0;margin:2px 0;" title="image" border="0" alt="image" align="right" src="http://dcarr.files.wordpress.com/2009/04/image-thumb.png?w=243&#038;h=244" width="243" height="244" /></a></p>
<p>However, if you believe a thousand words say more than a picture does, or even a movie, go ahead and read the descriptions below :)</p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<p align="right"><strong>Alex Morozov      <br /></strong>NET product marketing manager&#160; <br />JetBrains</p>
<h5>Performance and Memory Usage Improvements</h5>
<p>We have managed to make ReSharper load and work faster and more smoothly in general, particularly on big (and we mean BIG) solutions:</p>
<ul>
<li>Wall-time measurements of solution loading show 20 to 40 percent acceleration until the solution is ready for code editing. </li>
<li>Web site loading time has also been reduced by a third. </li>
<li>For instance, a certain mixed-language solution consisting of about 15 thousand classes now takes only 70 seconds to load, and this includes making every ReSharper feature available. </li>
</ul>
<p>The list of significantly accelerated operations includes:</p>
<ul>
<li>renaming symbols </li>
<li>finding commonly used symbols </li>
<li>creating symbols from usage </li>
<li>analyzing large XAML files. </li>
</ul>
<p>We&#8217;ve also cut down the volume of memory resources required to analyze jumbo autogenerated code files, which should especially benefit those who work with ASP.NET and LINQ to SQL. </p>
<h5>Solution-Wide Code Inspections</h5>
<p>To enable you to detect unused non-private members on the fly, we have enlisted the help of our ever-improving solution-wide analysis. We have introduced a set of specialized code inspections that only work when you let ReSharper analyze your whole solution. They help you discover:</p>
<ul>
<li>Unused non-private declarations </li>
<li>Unused return values of non-private methods </li>
<li>Unaccessed non-private fields </li>
<li>Unused parameters in non-private members </li>
<li>Abstract or virtual events that are never invoked </li>
<li>Unassigned fields </li>
<li>Members and types that can be made internal instead of public </li>
</ul>
<p>Look for these inspections in your code and on the Marker Bar, highlighted as warnings or suggestions. In addition, new code annotations are available that you can use to mark certain unused non-private types and members to prevent ReSharper from fussing about them.</p>
<h5>VB9 Support – We can forgive this transgression (Damon)</h5>
<p> Visual Basic .NET developers can now benefit from VB9 language support that includes implicitly typed local variables, object initializers, anonymous types, extension methods, lambda expressions, partial methods, and embedded XML. VB9 support is all around you, courtesy of new context actions, code completion, refactorings, and Parameter Info, among other supporting features.<br />
<h5>Extended Naming Style Configuration</h5>
<p>Now you can define custom naming style settings for different languages and symbols including:</p>
<ul>
<li>types </li>
<li>namespaces </li>
<li>interfaces </li>
<li>parameters </li>
<li>method properties and events </li>
<li>static and instance fields, etc. </li>
</ul>
<p>For every kind of symbol, you can configure one of five casing options, prefixes and suffixes, variations for different access rights, abbreviations to preserve, or enable naming inspections. As a result, you can precisely align the way ReSharper completes and generates code with your specific coding guidelines.</p>
<h5>Other Enhancements</h5>
<ul>
<li><b>Go to Implementation</b> &#8211; This new navigation feature lets you jump from usage of a base type or member to any of its end implementations, bypassing intermediate steps in the inheritance chain. </li>
<li><b>New and Improved Refactorings</b> &#8211; ReSharper 4.5 has added Inline Field to its family of Inline refactorings. Rename refactoring now provides name completion, and some of the other refactorings were thoroughly refactored themselves, to make them perform faster. </li>
<li><b>Native MSTest Support</b> &#8211; Initially available through VstsUnit Plugin and then Gallio, MSTest support has finally made its way to being provided natively in ReSharper, on par with nUnit. </li>
<li><b>Wider Cross-Language Capabilities</b> &#8211; Quick-fixes and context actions work better in many cross-language scenarios: for example, you can extend a control written in VB.NET+XAML by choosing &quot;create from usage&quot; right from a C# usage. Add increased coverage for XAML and ASP.NET, and you get a substantial package of improvements. </li>
<li><b>Smoother Language and Framework Support</b> &#8211; Following the tradition of ReSharper 4.1, we have improved compatibility with F#, Compact Framework, Silverlight 2, and other languages and tools. </li>
</ul>
<p>Grab your all-new productivity &#8211; download ReSharper 4.5 now at <a href="http://www.jetbrains.com/resharper/download/index.html">http://www.jetbrains.com/resharper/download</a>. </p>
<p>ReSharper 4.5 is provided as a free upgrade from ReSharper 4.0. If you own an older version, please contact us to check your upgrade availability at <a href="mailto:sales@jetbrains.com">sales@jetbrains.com</a>. </p>
<p>&#160;</p>
<h4>JetBrains Team</h4>
<ul>
<li>
<p><a href="http://www.jetbrains.com/company/people/Anchipolevsky_Sergey.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Sergey_Anchipolevsky_small.gif" />Sergey           <br />Anchipolevsky</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Alshannikov_Igor.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Alshannikov_Igor_small.gif" />Igor           <br />Alshannikov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Anisimov_Alexander.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Anisimov_Alexander_small.gif" />Alexander           <br />Anisimov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Avdeev_Dmitry.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Avdeev_Dmitry_small.gif" />Dmitry           <br />Avdeev</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Baranov_Sergey.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Sergey_Baranov_small.gif" />Sergey           <br />Baranov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Belyaev_Yury.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Yury_Belyaev_small.gif" />Yury           <br />Belyaev</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Belyaeva_Natalia.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Natalia_Belyaeva_small.gif" />Natalia           <br />Belyaeva</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Bukreeva_Elena.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Bukreeva_Elena_small.gif" />Elena           <br />Bukreeva</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Bulenkov_Konstantin.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Bulenkov_Konstantin_small.gif" />Bulenkov           <br />Konstantin</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Charif_Jana.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Jana_Charif_small.gif" />Jana           <br />Charif</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Chashnikov_Nikolay.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Nikolay_Chashnikov_small.gif" />Nikolay           <br />Chashnikov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Alexander_Chernikov.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/soon.gif" />Alexander           <br />Chernikov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Chernyatchik_Roman.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Roman_Chernyatchik_small.gif" />Roman           <br />Chernyatchik</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Coox_Sergey.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Coox_Sergey_small.gif" />Sergey           <br />Coox</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Dmitriev_Sergey.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Sergey_Dmitriev_small.gif" />Sergey           <br />Dmitriev</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Dumov_Ilia.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Ilia_Dumov_small.gif" />Ilia           <br />Dumov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Falk_Kirill.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Kirill_Falk_small.gif" />Kirill           <br />Falk</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Gerasimov_Michael.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Michael_Gerasimov_small.gif" />Michael           <br />Gerasimov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Golovachev_Sergey.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Sergey_Golovachev_small.gif" />Sergey           <br />Golovachev</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Gopachenko_Alexey.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Alexey_Gopachenko_small.gif" />Alexey           <br />Gopachenko</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Gromov_Peter.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Gromov_Peter_small.gif" />Peter           <br />Gromov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Michaela_Hroncova.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Michaela_Hroncova_small.gif" />Michaela           <br />Hroncová</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Jemerov_Dmitry.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Dmitry_Jemerov_small.gif" />Dmitry           <br />Jemerov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Khalusova_Maria.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Khalusova_Maria_small.gif" />Maria           <br />Khalusova</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Kipiatkov_Valentin.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Valentin_Kipiatkov_small.gif" />Valentin           <br />Kipiatkov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Konopko_Cyril.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Konopko_Kirill_small.gif" />Cyril           <br />Konopko</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Kozlova_Anna.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/soon.gif" />Anna           <br />Kozlova</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Kropotov_Mikhail.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Mikhail_Kropotov_small.gif" />Mikhail           <br />Kropotov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Kudelevsky_Eugene.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Kudelevsky_Eugene_small.gif" />Eugene           <br />Kudelevsky</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Kudravtsev_Alexey.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Alexey_Kudravtsev_small.gif" />Alexey           <br />Kudravtsev</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Lobacheva_Olga.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Lobacheva_Olga_small.gif" />Olga           <br />Lobacheva</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Lukianov_Vyacheslav.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Vyacheslav_Lukianov_small.gif" />Vyacheslav           <br />Lukianov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Makeev_Anton.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Anton_Makeev_small.gif" />Anton           <br />Makeev</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Malishev_Egor.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Malishev_Egor_small.gif" />Egor           <br />Malyshev</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Marakulina_Maria.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Maria_Marakulina_small.gif" />Maria           <br />Marakulina</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Maximov_Kirill.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Kirill_Maximov_small.gif" />Kirill           <br />Maximov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Maximova_Sasha.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Sasha_Maximova_small.gif" />Sasha           <br />Maximova</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Megorskaya_Irina.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/soon.gif" />Irina           <br />Megorskaya</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Morawiecova_Lucie.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Morawiecova_Lucie_small.gif" />Lucie           <br />Morawiecova</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Morozov_Alexander.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Morozov_Alexander_small.gif" />Alexander           <br />Morozov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Mossienko_Maxim.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Mossienko_Maxim_small.gif" />Maxim           <br />Mossienko</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Musienko_Ekaterina.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Musienko_Ekaterina_small.gif" />Ekaterina           <br />Musienko</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Oreshnikova_Ann.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Ann_Oreshnikova_small.gif" />Ann           <br />Oreshnikova</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Pasynkov_Eugene.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Eugene_Pasynkov_small.gif" />Eugene           <br />Pasynkov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Pech_Vaclav.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Vaclav_Pech_small.gif" />Vaclav           <br />Pech</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Pegov_Alexey.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Alexey_Pegov_small.gif" />Alexey           <br />Pegov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Petrenko_Eugene.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Petrenko_Eugene_small.gif" />Eugene           <br />Petrenko</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Petrovskaya_Irina.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Irina_Petrovskaya_small.gif" />Irina           <br />Petrovskaya</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Pilin_Mikhail.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Mikhail_Pilin_small.gif" />Mikhail           <br />Pilin</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Repina_Julia.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Julia_Repina_small.gif" />Julia           <br />Repina</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Revyakina_Elizaveta.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Elizaveta_Revyakina_small.gif" />Elizaveta           <br />Revyakina</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Ryzhenkov_Ilya.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Ryzhenkov_Ilya_small.gif" />Ilya           <br />Ryzhenkov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Serebryansky_Andrew.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Serebryansky_Andrew_small.gif" />Andrew           <br />Serebryansky</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Sergey_Ilya.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Sergey_Ilya_small.gif" />Ilya           <br />Sergey</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Shafirov_Maxim.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Maxim_Shafirov_small.gif" />Maxim           <br />Shafirov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Slavina_Tatiana.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Tatiana_Slavina_small.gif" />Tatiana           <br />Slavina</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Smirnova_Olesya.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Olesya_Smirnova_small.gif" />Olesya           <br />Smirnova</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Solomatov_Konstantin.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Konstantin_Solomatov_small.gif" />Konstantin           <br />Solomatov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Stepanov_Oleg.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Oleg_Stepanov_small.gif" />Oleg           <br />Stepanov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Sher_Pavel.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Sher_Pavel_small.gif" />Pavel           <br />Sher</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Shliakhovetskaja_Ekaterina.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Shliakhovetskaja_Ekaterina_small.gif" />Ekaterina           <br />Shliakhovetskaja</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Shpynov_Oleg.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Shpynov_Oleg_small.gif" />Oleg           <br />Shpynov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Shrago_Gregory.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Shrago_Gregory_small.gif" />Gregory           <br />Shrago</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Toporov_Eugene.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Eugene_Toporov_small.gif" />Eugene           <br />Toporov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Udov_George.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Udov_George_small.gif" />George           <br />Udov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Vasiliev_Sergey.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Sergey_Vasiliev_small.gif" />Sergey           <br />Vasiliev</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Yaremych_Natalie.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Natalie_Yaremych_small.gif" />Natalie           <br />Yaremych</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Yarko_Yegor.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Yarko_Yegor_small.gif" />Yegor           <br />Yarko</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Zambalayev_Timur.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Zambalayev_Timur_small.gif" />Timur           <br />Zambalayev</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Zhukov_Sergey.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Sergey_Zhukov_small.gif" />Sergey           <br />Zhukov</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Zhuravlev_Eugene.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Eugene_Zhuravlev_small.gif" />Eugene           <br />Zhuravlev</a></p>
</li>
<li>
<p><a href="http://www.jetbrains.com/company/people/Alexander_Zverev.html"><img alt="photo" src="http://www.jetbrains.com/company/people/photos/Alexander_Zverev_small.gif" />Alexander           <br />Zverev</a></p>
</li>
</ul>
<div class="wlWriterHeaderFooter" style="text-align:right;margin:0;padding:4px 0;"><a href="http://digg.com/submit?url=http%3a%2f%2fdcarr.wordpress.com%2f2009%2f04%2f16%2fresharper_4_5_rocks_for_dot_net_c_sharp_silverlight_devs%2f&amp;title=JetBrains+Resharper+4.5+is+out"><img src="http://digg.com/img/badges/100x20-digg-button.png" width="100" height="20" alt="Digg This" title="Digg This" border="0" style="border:0;" /></a></div>
<br />Posted in C# 3.0 Enhancements, C# 3.0 for Internal DSL, Cannot live Without, concepts implemented, Functional Programming, Industry News, Linq, resharper, Siverlight, software as strategic, Software Design, Software Futures, Technology, Tips and Tricks, Visual Studio 2010, Windows Presentation Foundation Tagged: .NET 3.5. software craftsman, best addin, C#, Must-Have, Refactoring, Resharper, SilverLight, Visual Studio 2008 <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dcarr.wordpress.com/1339/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dcarr.wordpress.com/1339/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dcarr.wordpress.com/1339/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dcarr.wordpress.com/1339/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dcarr.wordpress.com/1339/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dcarr.wordpress.com/1339/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dcarr.wordpress.com/1339/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dcarr.wordpress.com/1339/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dcarr.wordpress.com/1339/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dcarr.wordpress.com/1339/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=1339&subd=dcarr&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://team.pushbomb.com/2009/04/16/resharper_4_5_rocks_for_dot_net_c_sharp_silverlight_devs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b572cbcda5a17fe984e7dd1ddc9c3d6?s=96&#38;d=&#38;r=PG" medium="image">
			<media:title type="html">pushbomb</media:title>
		</media:content>

		<media:content url="http://dcarr.files.wordpress.com/2009/04/image-thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sergey_Anchipolevsky_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Alshannikov_Igor_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Anisimov_Alexander_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Avdeev_Dmitry_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sergey_Baranov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Yury_Belyaev_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Natalia_Belyaeva_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Bukreeva_Elena_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Bulenkov_Konstantin_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Jana_Charif_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Nikolay_Chashnikov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/soon.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Roman_Chernyatchik_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Coox_Sergey_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sergey_Dmitriev_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Ilia_Dumov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Kirill_Falk_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Michael_Gerasimov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sergey_Golovachev_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Alexey_Gopachenko_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Gromov_Peter_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Michaela_Hroncova_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Dmitry_Jemerov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Khalusova_Maria_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Valentin_Kipiatkov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Konopko_Kirill_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/soon.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Mikhail_Kropotov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Kudelevsky_Eugene_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Alexey_Kudravtsev_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Lobacheva_Olga_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Vyacheslav_Lukianov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Anton_Makeev_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Malishev_Egor_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Maria_Marakulina_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Kirill_Maximov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sasha_Maximova_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/soon.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Morawiecova_Lucie_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Morozov_Alexander_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Mossienko_Maxim_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Musienko_Ekaterina_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Ann_Oreshnikova_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Eugene_Pasynkov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Vaclav_Pech_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Alexey_Pegov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Petrenko_Eugene_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Irina_Petrovskaya_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Mikhail_Pilin_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Julia_Repina_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Elizaveta_Revyakina_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Ryzhenkov_Ilya_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Serebryansky_Andrew_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sergey_Ilya_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Maxim_Shafirov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Tatiana_Slavina_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Olesya_Smirnova_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Konstantin_Solomatov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Oleg_Stepanov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sher_Pavel_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Shliakhovetskaja_Ekaterina_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Shpynov_Oleg_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Shrago_Gregory_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Eugene_Toporov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Udov_George_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sergey_Vasiliev_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Natalie_Yaremych_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Yarko_Yegor_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Zambalayev_Timur_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sergey_Zhukov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Eugene_Zhuravlev_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Alexander_Zverev_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://digg.com/img/badges/100x20-digg-button.png" medium="image">
			<media:title type="html">Digg This</media:title>
		</media:content>
	</item>
		<item>
		<title>ReSharper 4.01 RC1 Released!</title>
		<link>http://team.pushbomb.com/2008/08/13/resharper-401-rc1-released/</link>
		<comments>http://team.pushbomb.com/2008/08/13/resharper-401-rc1-released/#comments</comments>
		<pubDate>Wed, 13 Aug 2008 17:34:24 +0000</pubDate>
		<dc:creator>Damon Wilder Carr</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[concepts implemented]]></category>
		<category><![CDATA[resharper]]></category>
		<category><![CDATA[ReSharper 4.01 RC1]]></category>

		<guid isPermaLink="false">http://dcarr.wordpress.com/2008/08/13/resharper-401-rc1-released/</guid>
		<description><![CDATA[ReSharper 4.01 RC1 released...Here is how the recent builds have looked. Just click on one to download it:<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=665&subd=dcarr&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:left;">Here is how the recent builds have looked. Just click on one to download it:</p>
<p><a href="http://www.jetbrains.com/"><img class="alignright" style="border:0 none;margin:0;" src="http://dcarr.files.wordpress.com/2008/08/rs2banner1.jpg?w=243&#038;h=95" alt="" width="243" height="95" /></a></p>
<h1>JetBrains Team</h1>
<div id="sharper">
<ul>
<li> <img style="border:0 none;margin:0 5px;" src="http://www.jetbrains.com/company/people/photos/Sergey_Anchipolevsky_small.gif" alt="photo" width="57" height="69" />Sergey Anchipolevsky</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Alshannikov_Igor_small.gif" alt="photo" />Igor Alshannikov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Anisimov_Alexander_small.gif" alt="photo" />Alexander Anisimov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Avdeev_Dmitry_small.gif" alt="photo" />Dmitry Avdeev</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Sergey_Baranov_small.gif" alt="photo" />Sergey Baranov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Yury_Belyaev_small.gif" alt="photo" />Yury Belyaev</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Natalia_Belyaeva_small.gif" alt="photo" />Natalia Belyaeva</li>
<li><img src="http://www.jetbrains.com/company/people/photos/David_Booth_small.gif" alt="photo" />Dave Booth</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Bukreeva_Elena_small.gif" alt="photo" />Elena Bukreeva</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Jana_Charif_small.gif" alt="photo" />Jana Charif</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Nikolay_Chashnikov_small.gif" alt="photo" />Nikolay Chashnikov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/soon.gif" alt="photo" />Alexander Chernikov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Roman_Chernyatchik_small.gif" alt="photo" />Roman Chernyatchik</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Coox_Sergey_small.gif" alt="photo" />Sergey Coox</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Sergey_Dmitriev_small.gif" alt="photo" />Sergey Dmitriev</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Ilia_Dumov_small.gif" alt="photo" />Ilia Dumov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Michael_Gerasimov_small.gif" alt="photo" />Michael Gerasimov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Sergey_Golovachev_small.gif" alt="photo" />Sergey Golovachev</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Alexey_Gopachenko_small.gif" alt="photo" />Alexey Gopachenko</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Gromov_Peter_small.gif" alt="photo" />Peter Gromov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Dmitry_Jemerov_small.gif" alt="photo" />Dmitry Jemerov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Khalusova_Maria_small.gif" alt="photo" />Maria Khalusova</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Valentin_Kipiatkov_small.gif" alt="photo" />Valentin Kipiatkov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Konopko_Kirill_small.gif" alt="photo" />Cyril Konopko</li>
<li><img src="http://www.jetbrains.com/company/people/photos/soon.gif" alt="photo" />Anna Kozlova</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Mikhail_Kropotov_small.gif" alt="photo" />Mikhail Kropotov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Alexey_Kudravtsev_small.gif" alt="photo" />Alexey Kudravtsev</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Lobacheva_Olga_small.gif" alt="photo" />Olga Lobacheva</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Dmitry_Lomov_small.gif" alt="photo" />Dmitry Lomov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Vyacheslav_Lukianov_small.gif" alt="photo" />Vyacheslav Lukianov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Anton_Makeev_small.gif" alt="photo" />Anton Makeev</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Malishev_Egor_small.gif" alt="photo" />Egor Malyshev</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Maria_Marakulina_small.gif" alt="photo" />Maria Marakulina</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Kirill_Maximov_small.gif" alt="photo" />Kirill Maximov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Sasha_Maximova_small.gif" alt="photo" />Sasha Maximova</li>
<li><img src="http://www.jetbrains.com/company/people/photos/soon.gif" alt="photo" />Irina Megorskaya</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Morawiecova_Lucie_small.gif" alt="photo" />Lucie Morawiecova</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Morozov_Alexander_small.gif" alt="photo" />Alexander Morozov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Mossienko_Maxim_small.gif" alt="photo" />Maxim Mossienko</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Musienko_Ekaterina_small.gif" alt="photo" />Ekaterina Musienko</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Ann_Oreshnikova_small.gif" alt="photo" />Ann Oreshnikova</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Eugene_Pasynkov_small.gif" alt="photo" />Eugene Pasynkov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Vaclav_Pech_small.gif" alt="photo" />Vaclav Pech</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Alexey_Pegov_small.gif" alt="photo" />Alexey Pegov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Marie_Pejcharova_small.gif" alt="photo" />Marie Pejcharova</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Petrenko_Eugene_small.gif" alt="photo" />Eugene Petrenko</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Irina_Petrovskaya_small.gif" alt="photo" />Irina Petrovskaya</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Mikhail_Pilin_small.gif" alt="photo" />Mikhail Pilin</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Polonsky_Konstantin_small.gif" alt="photo" />Konstantin Polonsky</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Julia_Repina_small.gif" alt="photo" />Julia Repina</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Elizaveta_Revyakina_small.gif" alt="photo" />Elizaveta Revyakina</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Ryzhenkov_Ilya_small.gif" alt="photo" />Ilya Ryzhenkov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Serebryansky_Andrew_small.gif" alt="photo" />Andrew Serebryansky</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Sergey_Ilya_small.gif" alt="photo" />Ilya Sergey</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Maxim_Shafirov_small.gif" alt="photo" />Maxim Shafirov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Tatiana_Slavina_small.gif" alt="photo" />Tatiana Slavina</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Olesya_Smirnova_small.gif" alt="photo" />Olesya Smirnova</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Konstantin_Solomatov_small.gif" alt="photo" />Konstantin Solomatov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Oleg_Stepanov_small.gif" alt="photo" />Oleg Stepanov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Sher_Pavel_small.gif" alt="photo" />Pavel Sher</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Shliakhovetskaja_Ekaterina_small.gif" alt="photo" />Ekaterina Shliakhovetskaja</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Shpynov_Oleg_small.gif" alt="photo" />Oleg Shpynov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Shrago_Gregory_small.gif" alt="photo" />Gregory Shrago</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Udov_George_small.gif" alt="photo" />George Udov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Sergey_Vasiliev_small.gif" alt="photo" />Sergey Vasiliev</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Natalie_Yaremych_small.gif" alt="photo" />Natalie Yaremych</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Yarko_Yegor_small.gif" alt="photo" />Yegor Yarko</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Zambalayev_Timur_small.gif" alt="photo" />Timur Zambalayev</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Sergey_Zhukov_small.gif" alt="photo" />Sergey Zhukov</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Eugene_Zhuravlev_small.gif" alt="photo" />Eugene Zhuravlev</li>
<li><img src="http://www.jetbrains.com/company/people/photos/Alexander_Zverev_small.gif" alt="photo" />Alexander Zverev</li>
</ul>
</div>
<table style="text-align:left;" border="1" cellspacing="5" cellpadding="5" width="495">
<tbody>
<tr>
<th class="confluenceTh" width="82" align="center">Date</th>
<th class="confluenceTh" width="81" align="center">Build #</th>
<th class="confluenceTh" width="110" align="center">Links</th>
<th class="confluenceTh" width="88" align="center">Status</th>
<th class="confluenceTh" width="102" align="center">Comment</th>
</tr>
<tr>
<td class="confluenceTd" width="82" align="center">
<h2>13 Aug</h2>
</td>
<td class="confluenceTd" width="80">
<h2>922</h2>
</td>
<td class="confluenceTd" width="113">
<h2><a rel="nofollow" href="http://download.jetbrains.com/resharper/ReSharperSetup.4.1.922.25.msi">Download</a></h2>
</td>
<td class="confluenceTd" width="88">
<h2>4.0.1 RC1</h2>
</td>
<td class="confluenceTd" width="102">
<h2>Works here</h2>
</td>
</tr>
<tr>
<td class="confluenceTd" width="80" align="center">12 Aug</td>
<td class="confluenceTd" width="80">921</td>
<td class="confluenceTd" width="115"><a rel="nofollow" href="http://download.jetbrains.com/resharper/ReSharperSetup.4.1.921.22.msi">Download</a></td>
<td class="confluenceTd" width="88">Nightly</td>
<td class="confluenceTd" width="102">Not tested</td>
</tr>
<tr>
<td class="confluenceTd" width="79" align="center">07 Aug</td>
<td class="confluenceTd" width="80">919</td>
<td class="confluenceTd" width="116"><a rel="nofollow" href="http://download.jetbrains.com/resharper/ReSharperSetup.4.0.919.10.msi">Download</a></td>
<td class="confluenceTd" width="87">Nightly</td>
<td class="confluenceTd" width="101">Works here</td>
</tr>
<tr>
<td class="confluenceTd" width="81" align="center">06 Aug</td>
<td class="confluenceTd" width="80">918</td>
<td class="confluenceTd" width="116"><a rel="nofollow" href="http://download.jetbrains.com/resharper/ReSharperSetup.4.0.918.45.msi">Download</a></td>
<td class="confluenceTd" width="87">Nightly</td>
<td class="confluenceTd" width="101">Works here</td>
</tr>
<tr>
<td class="confluenceTd" width="81" align="center">31 Jul</td>
<td class="confluenceTd" width="80">914</td>
<td class="confluenceTd" width="116"><a rel="nofollow" href="http://download.jetbrains.com/resharper/ReSharperSetup.4.0.914.9.msi">Download</a></td>
<td class="confluenceTd" width="87">Nightly</td>
<td class="confluenceTd" width="101">Not tested</td>
</tr>
<tr>
<td class="confluenceTd" width="81" align="center">30 Jul</td>
<td class="confluenceTd" width="80">913</td>
<td class="confluenceTd" width="116"><a rel="nofollow" href="http://download.jetbrains.com/resharper/ReSharperSetup.4.0.913.42.msi">Download</a></td>
<td class="confluenceTd" width="101">Not tested</td>
</tr>
<tr>
<td class="confluenceTd" width="81" align="center">26 Jul</td>
<td class="confluenceTd" width="80">912</td>
<td class="confluenceTd" width="117"><a rel="nofollow" href="http://download.jetbrains.com/resharper/ReSharperSetup.4.0.912.6.msi">Download</a></td>
<td class="confluenceTd" width="88">Nightly</td>
<td class="confluenceTd" width="102">Not tested</td>
</tr>
</tbody>
</table>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:51ff8bfe-7c53-4db3-9051-c35bee2444fe" class="wlWriterSmartContent" style="display:inline;float:none;padding-top:0;padding-right:0;padding-bottom:0;text-align:left;margin:0;">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/ReSharper">ReSharper</a></div>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:1ec6546d-7af8-4db4-8607-308563f36ef9" class="wlWriterSmartContent" style="display:inline;float:none;padding-top:0;padding-right:0;padding-bottom:0;text-align:left;margin:0;">del.icio.us Tags: <a rel="tag" href="http://del.icio.us/popular/ReSharper">ReSharper</a></div>
<div class="wlWriterHeaderFooter" style="padding-top:4px;padding-right:0;padding-bottom:4px;text-align:left;margin:0;"><a href="http://digg.com/submit?url=http%3a%2f%2fdcarr.wordpress.com%2f2008%2f08%2f13%2fresharper-401-rc1-released%2f&amp;title=ReSharper+4.01+RC1+Released!"><img style="border:0;" src="http://digg.com/img/badges/100x20-digg-button.png" border="0" alt="Digg This" width="100" height="20" /></a></div>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/dcarr.wordpress.com/665/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/dcarr.wordpress.com/665/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dcarr.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dcarr.wordpress.com/665/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dcarr.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dcarr.wordpress.com/665/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dcarr.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dcarr.wordpress.com/665/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dcarr.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dcarr.wordpress.com/665/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dcarr.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dcarr.wordpress.com/665/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=665&subd=dcarr&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://team.pushbomb.com/2008/08/13/resharper-401-rc1-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b572cbcda5a17fe984e7dd1ddc9c3d6?s=96&#38;d=&#38;r=PG" medium="image">
			<media:title type="html">pushbomb</media:title>
		</media:content>

		<media:content url="http://dcarr.files.wordpress.com/2008/08/rs2banner1.jpg" medium="image" />

		<media:content url="http://www.jetbrains.com/company/people/photos/Sergey_Anchipolevsky_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Alshannikov_Igor_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Anisimov_Alexander_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Avdeev_Dmitry_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sergey_Baranov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Yury_Belyaev_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Natalia_Belyaeva_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/David_Booth_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Bukreeva_Elena_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Jana_Charif_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Nikolay_Chashnikov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/soon.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Roman_Chernyatchik_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Coox_Sergey_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sergey_Dmitriev_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Ilia_Dumov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Michael_Gerasimov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sergey_Golovachev_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Alexey_Gopachenko_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Gromov_Peter_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Dmitry_Jemerov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Khalusova_Maria_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Valentin_Kipiatkov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Konopko_Kirill_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/soon.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Mikhail_Kropotov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Alexey_Kudravtsev_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Lobacheva_Olga_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Dmitry_Lomov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Vyacheslav_Lukianov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Anton_Makeev_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Malishev_Egor_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Maria_Marakulina_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Kirill_Maximov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sasha_Maximova_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/soon.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Morawiecova_Lucie_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Morozov_Alexander_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Mossienko_Maxim_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Musienko_Ekaterina_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Ann_Oreshnikova_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Eugene_Pasynkov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Vaclav_Pech_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Alexey_Pegov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Marie_Pejcharova_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Petrenko_Eugene_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Irina_Petrovskaya_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Mikhail_Pilin_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Polonsky_Konstantin_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Julia_Repina_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Elizaveta_Revyakina_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Ryzhenkov_Ilya_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Serebryansky_Andrew_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sergey_Ilya_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Maxim_Shafirov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Tatiana_Slavina_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Olesya_Smirnova_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Konstantin_Solomatov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Oleg_Stepanov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sher_Pavel_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Shliakhovetskaja_Ekaterina_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Shpynov_Oleg_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Shrago_Gregory_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Udov_George_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sergey_Vasiliev_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Natalie_Yaremych_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Yarko_Yegor_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Zambalayev_Timur_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Sergey_Zhukov_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Eugene_Zhuravlev_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.com/company/people/photos/Alexander_Zverev_small.gif" medium="image">
			<media:title type="html">photo</media:title>
		</media:content>

		<media:content url="http://digg.com/img/badges/100x20-digg-button.png" medium="image">
			<media:title type="html">Digg This</media:title>
		</media:content>
	</item>
		<item>
		<title>JetBrains Releases ReSharper 4.01 Beta 1 as EAP Build 917 &#8211; Download Here</title>
		<link>http://team.pushbomb.com/2008/08/05/resharper-releases-401-beta-1-as-eap-build-917-download-here/</link>
		<comments>http://team.pushbomb.com/2008/08/05/resharper-releases-401-beta-1-as-eap-build-917-download-here/#comments</comments>
		<pubDate>Wed, 06 Aug 2008 01:08:20 +0000</pubDate>
		<dc:creator>Damon Wilder Carr</dc:creator>
				<category><![CDATA[C# 3.0 Enhancements]]></category>
		<category><![CDATA[C# 3.0 for Internal DSL]]></category>
		<category><![CDATA[Industry News]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[concepts implemented]]></category>
		<category><![CDATA[resharper]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[C# 3.0]]></category>
		<category><![CDATA[JetBrains]]></category>
		<category><![CDATA[Must-Have]]></category>
		<category><![CDATA[Refactoring]]></category>
		<category><![CDATA[Resharper]]></category>
		<category><![CDATA[VS 2008 Add-In]]></category>

		<guid isPermaLink="false">http://dcarr.wordpress.com/2008/08/05/resharper-releases-401-beta-1-as-eap-build-917-download-here/</guid>
		<description><![CDATA[Click here to download the new EAP post 4.0 beta 1 release of 4.01 (a maintenance focused release).  On the heels of their 4.0 release which further cemented their utter dominance as the must have Visual Studio 2008 augmentation for true enterprise development, their not resting in the least.Click here to download the new EAP post 4.0 beta 1 release of 4.01 (a maintenance focused release). 

Please participate by providing your experiences to JetBrains so they can evolve this work into another solid must have upgrade. Click here to join their issue tracker as well as newsgroups.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=622&subd=dcarr&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<blockquote><p>On the heels of their 4.0 release which is arguably their most strategic in the .NET world to date, JetBrains continues to innovate with this beta.</p></blockquote>
<p><a title="ReSharper New 4.01 Beta" href="http://download.jetbrains.com/resharper/ReSharperSetup.4.0.917.2.msi" target="_blank">Click here to download</a> the new EAP post 4.0  release of 4.01 (a maintenance focused release).<a href="http://www.jetbrains.com/"><img class="alignright size-full wp-image-624" style="border:2px solid black;margin:2px;" src="http://dcarr.files.wordpress.com/2008/08/pic_buy_rs.gif?w=138&#038;h=119" alt="" width="138" height="119" /></a></p>
<p>Please participate by providing your experiences to JetBrains so they can evolve this work into another solid must have upgrade.</p>
<p>We’re using this release with great success (however we do not use the VB.NET aspects so no comment there).</p>
<p>Also make sure to check out the add-ins for 4.0 <a href="http://www.jetbrains.com/resharper/plugins/" target="_blank">here</a>.</p>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:07bcd8e2-0fcb-4f85-93bc-fec30e221398" class="wlWriterSmartContent" style="display:inline;float:none;margin:0;padding:0;">del.icio.us Tags: <a rel="tag" href="http://del.icio.us/popular/ReSharper">ReSharper</a>,<a rel="tag" href="http://del.icio.us/popular/C%23+3.0">C# 3.0</a>,<a rel="tag" href="http://del.icio.us/popular/VS+2008+Add-In">VS 2008 Add-In</a>,<a rel="tag" href="http://del.icio.us/popular/Must-Have">Must-Have</a>,<a rel="tag" href="http://del.icio.us/popular/ReFactoring">ReFactoring</a>,<a rel="tag" href="http://del.icio.us/popular/Agile">Agile</a>,<a rel="tag" href="http://del.icio.us/popular/JetBrains">JetBrains</a></div>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:c8dd9da0-eab0-4c6e-8a24-fce6661020e5" class="wlWriterSmartContent" style="display:inline;float:none;margin:0;padding:0;">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/ReSharper">ReSharper</a>,<a rel="tag" href="http://technorati.com/tags/C%23+3.0">C# 3.0</a>,<a rel="tag" href="http://technorati.com/tags/VS+2008+Add-In">VS 2008 Add-In</a>,<a rel="tag" href="http://technorati.com/tags/Must-Have">Must-Have</a>,<a rel="tag" href="http://technorati.com/tags/ReFactoring">ReFactoring</a>,<a rel="tag" href="http://technorati.com/tags/Agile">Agile</a>,<a rel="tag" href="http://technorati.com/tags/JetBrains">JetBrains</a></div>
<div class="wlWriterHeaderFooter" style="text-align:right;margin:0;padding:4px 0;"><a href="http://digg.com/submit?url=http%3a%2f%2fdcarr.wordpress.com%2f2008%2f08%2f05%2fresharper-releases-401-beta-1-as-eap-build-917-download-here%2f&amp;title=ReSharper+Releases+4.01+Beta+1+as+EAP+Build+917+%e2%80%93+Download+Here"><img style="border:0;" src="http://digg.com/img/badges/100x20-digg-button.png" border="0" alt="Digg This" width="100" height="20" /></a></div>
<p><a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fblog.domaindotnet.com%2f2008%2f08%2f05%2fresharper-releases-401-beta-1-as-eap-build-917-download-here%2f"><img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fblog.domaindotnet.com%2f2008%2f08%2f05%2fresharper-releases-401-beta-1-as-eap-build-917-download-here%2f" border="0" alt="kick it on DotNetKicks.com" /></a></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/dcarr.wordpress.com/622/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/dcarr.wordpress.com/622/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dcarr.wordpress.com/622/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dcarr.wordpress.com/622/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dcarr.wordpress.com/622/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dcarr.wordpress.com/622/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dcarr.wordpress.com/622/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dcarr.wordpress.com/622/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dcarr.wordpress.com/622/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dcarr.wordpress.com/622/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dcarr.wordpress.com/622/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dcarr.wordpress.com/622/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=622&subd=dcarr&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://team.pushbomb.com/2008/08/05/resharper-releases-401-beta-1-as-eap-build-917-download-here/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b572cbcda5a17fe984e7dd1ddc9c3d6?s=96&#38;d=&#38;r=PG" medium="image">
			<media:title type="html">pushbomb</media:title>
		</media:content>

		<media:content url="http://dcarr.files.wordpress.com/2008/08/pic_buy_rs.gif" medium="image" />

		<media:content url="http://digg.com/img/badges/100x20-digg-button.png" medium="image">
			<media:title type="html">Digg This</media:title>
		</media:content>

		<media:content url="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fblog.domaindotnet.com%2f2008%2f08%2f05%2fresharper-releases-401-beta-1-as-eap-build-917-download-here%2f" medium="image">
			<media:title type="html">kick it on DotNetKicks.com</media:title>
		</media:content>
	</item>
		<item>
		<title>Advanced C# 3.0: Part 3 &#8211; New Language Features as &#8216;Domain Specific&#8217; as well as General Purpose Extensions</title>
		<link>http://team.pushbomb.com/2008/05/27/advanced-c-30-part-3-new-language-features-as-domain-specific-as-well-as-general-purpose-extensions/</link>
		<comments>http://team.pushbomb.com/2008/05/27/advanced-c-30-part-3-new-language-features-as-domain-specific-as-well-as-general-purpose-extensions/#comments</comments>
		<pubDate>Tue, 27 May 2008 22:42:46 +0000</pubDate>
		<dc:creator>Damon Wilder Carr</dc:creator>
				<category><![CDATA[C# 3.0 Enhancements]]></category>
		<category><![CDATA[C# 3.0 for Internal DSL]]></category>
		<category><![CDATA[Framework Design]]></category>
		<category><![CDATA[Proof Driven Development]]></category>
		<category><![CDATA[Software Design]]></category>
		<category><![CDATA[Software Futures]]></category>
		<category><![CDATA[agile practices]]></category>
		<category><![CDATA[reflection]]></category>
		<category><![CDATA[resharper]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[dsl]]></category>
		<category><![CDATA[Frameworks]]></category>
		<category><![CDATA[GAT]]></category>
		<category><![CDATA[Resharper]]></category>
		<category><![CDATA[TDD]]></category>

		<guid isPermaLink="false">http://dcarr.wordpress.com/2008/05/27/advanced-c-30-part-3-new-language-features-as-domain-specific-as-well-as-general-purpose-extensions/</guid>
		<description><![CDATA[One of the compelling directions beyond 'the basics' of domain-driven development is the advent and increasing use of 'DSL' (Domain Specific Language) technology in .NET. We have had a rich set of features since the 2005 release of Visual Studio in the Guidance Automation Toolkit and the DSL Toolkit and these have become even more compelling. However for some needs, the language now may provide enough for many smaller cases.

Now that new .NET 3.5 C# 3.0 features are allowing us to make the Framework API of .NET work in ways not present 'out of the box' the scope of what is possible can be deep and broad.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=238&subd=dcarr&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>One of the compelling directions beyond &#8216;the basics&#8217; of domain-driven development is the advent and increasing use of &#8216;DSL&#8217; (Domain Specific Language) technology in .NET. We have had a rich set of features since the 2005 release of Visual Studio in the <a href="http://msdn.microsoft.com/en-us/vsx/default.aspx">Guidance Automation Toolkit</a> and the <a href="http://msdn.microsoft.com/en-us/library/bb126235.aspx">DSL Toolkit</a> and these have become even more compelling. I wrote about this back in January, 2006 <a href="http://www.developerland.com/DotNet/Design/444.aspx">as published here</a>. However for some needs, the language now may provide enough for many smaller cases.</p>
<blockquote><p align="center">Keep in mind, this post is not focused on DSL topics (one any developer cannot really afford to miss now), so one could debate the merits of the link I make. My argument is this:</p>
<p align="center">My definition of a DSL is very simply :</p>
</blockquote>
<p>A Domain Specific Language is a way, typically using a combination of visual and textual methods, or just textual, to solve a limited but typically non-trivial set of problems. It is typically a smaller stand-alone &#8216;language&#8217; or language-extension to a larger more horizontal language such as C# (the point I make here is C# has evolved to allow you to expand C# with DSLs you write in C#. This is very different the the DSL Toolkit and I have never had this opinion until I finally got to be immersed deeply in functional style programming enhancements to C# and the ease of extending just about any API with extensions..</p>
<p><a href="http://damon.agilefactor.com/domain-specific-languages-central-to-staying-relevant/">I continue the discussion of what a DSL is here.</a> I will be adding to this section of the site over time but if you just want the listed info, no need to go on a tangent now.</p>
<blockquote><p><strong>Now that new .NET 3.5 C# 3.0 features are allowing us to make the Framework API of .NET work in ways not present &#8216;out of the box&#8217; the scope of what is possible can be deep and broad.</strong></p>
</blockquote>
<h2>Part 1 : The DSL Perspective &#8211; A Real Example</h2>
<p>I&#8217;ll use a project we are working on now, which is quite specifically aimed to</p>
<ul>
<li>Minimize the configuration overhead of using an Inversion of Control container </li>
<li>Provide the benefit of &#8216;provider/container&#8217; independence </li>
<li>Allow the consumer to change &#8216;container provider&#8217; vendors with a simple change in &#8216;meta configuration&#8217; </li>
</ul>
<p>In other words, we are trying to create an abstraction on top of an abstraction, as we believe this particular area is now mature enough (and indeed this is how software engineering historically more then not progresses over time) to do so.</p>
<p>This project has no intention of BEING an inversion of control container nor a dependency injector, rather its aim is to allow people to make use of these critical concepts in much easier ways while eliminating hesitation related to provider lock-in.</p>
<p>It&#8217;s no secret we are massive fans of the work of the <a href="http://www.castleproject.org/">Castle Project</a> and they are indeed the first &#8216;plug-in&#8217; adapter we are on schedule to deliver. However the architecture (something this post is NOT trying to explain) of our solution models the DOMAIN of this area, and is not specific to any particular offering (although to be blunt I would say if any bias existed it would be from the conceptual framework that exists now in the <a href="http://www.castleproject.org/container/index.html">Windsor Container/MicroKernal trunk</a>).</p>
<h4>A domain specific example</h4>
<p>In the area of ASP.NET one technique for loading our solution into memory is via the IHttpModule implementation we provide. Here is what the custom global.asax.cs code looks like:</p>
<p><span style="background:black 0 50%;color:#9bdd22;">public abstract class </span><span style="background:black 0 50%;color:#8bcfe2;">IntegrationPoint </span><span style="background:black 0 50%;color:#feba1b;">: </span><span style="background:black 0 50%;color:#8bcfe2;">HttpApplication</span><span style="background:black 0 50%;color:#feba1b;">, </span><span style="background:black 0 50%;color:#2b91af;">IDomainApplication </span><span style="background:black 0 50%;color:#feba1b;">{ </span></p>
<p><span style="background:black 0 50%;color:#9bdd22;">private static </span><span style="background:black 0 50%;color:#2b91af;">IZeroConfigDI </span><span style="background:black 0 50%;color:#feba1b;">_container; </span></p>
<p><span style="background:black 0 50%;color:#808080;">/// &lt;summary&gt;      <br /></span><span style="background:black 0 50%;color:#808080;">/// </span><span style="background:black 0 50%;color:#008000;">Executes custom initialization code after      <br /></span><span style="background:black 0 50%;color:#808080;">/// </span><span style="background:black 0 50%;color:#008000;">all event handler      <br /></span><span style="background:black 0 50%;color:#808080;">/// </span><span style="background:black 0 50%;color:#008000;">modules have been added.      <br /></span><span style="background:black 0 50%;color:#808080;">/// </span><span style="background:black 0 50%;color:#008000;">Also acquire a reference to the HttpModule      <br /></span><span style="background:black 0 50%;color:#808080;">/// </span><span style="background:black 0 50%;color:#008000;">for IoC / DI if present as a module      <br /></span><span style="background:black 0 50%;color:#808080;">/// &lt;/summary&gt;      <br />&#160;</span><span style="background:black 0 50%;color:#9bdd22;">public override void </span><span style="background:black 0 50%;color:#feba1b;">Init() {<span style="background:black 0 50%;color:#feba1b;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span></p>
<div><span style="background:black 0 50%;color:#feba1b;"><span style="background:black 0 50%;color:#feba1b;">&#160;&#160;&#160;&#160;&#160;&#160;&#160; _container = Modules.GetIoCModule(); </span></span></div>
<div><span style="background:black 0 50%;color:#feba1b;"><span style="background:black 0 50%;color:#feba1b;">&#160;&#160;&#160;&#160;&#160; </span></span><span style="background:black 0 50%;color:#9bdd22;">&#160;&#160;&#160; base</span><span style="background:black 0 50%;color:#feba1b;">.Init();</span></div>
<div><span style="background:black 0 50%;color:#feba1b;"></span></div>
<div><span style="background:black 0 50%;color:#feba1b;"><span style="background:black 0 50%;color:#feba1b;">} </span></span>
</p></div>
<p><a href="http://11011.net/software/vspaste"></a></p>
<p>The interesting areas which are not provided by Microsoft include:</p>
<ol>
<li>IDomainApplication interface </li>
<li>IZeriConfigDI Interface static reference </li>
<li>Modules.GetIoCModule() </li>
</ol>
<p>The first two have more to do with our solution then the topic of this post, so I&#8217;ll focus on #3.</p>
<p>As this code is inside the HttpApplication, we have access to the Modules property which is read-only. Here is the documentation:</p>
<p>&#160;</p>
<table cellspacing="10" cellpadding="10" width="648" border="1">
<tbody>
<tr>
<td valign="top" width="626">
<h2>System.Web.HttpModuleCollection Modules { get; }</h2>
<p> 
<p align="center"><font color="#ffffff"><span style="color:#6682ee;"><font color="#ffffff"><strong></strong>                  <br /></font></span></font></p>
<p align="left"><span style="color:#6682ee;"><font color="#ffffff"><font color="#ffffff"><span style="color:#6682ee;"><font color="#ffffff"><em>Member of System.Web.HttpApplication</em></font></span></font><span style="color:#6682ee;"><font color="#ffffff"> </font></span></font></span></p>
<p align="left"><span style="color:#6682ee;"><font color="#ffffff"><span style="color:#6682ee;"><font color="#ffffff">                   <br />Gets the collection of modules for the current application.</font></span><span style="color:#6682ee;"><font color="#ffffff">Returns:                    <br />An System.Web.HttpModuleCollection that contains the names of the modules for the application.                     <br /></font></span></font></span></p>
</td>
</tr>
</tbody>
</table>
<p><span style="color:#000000;"><a href="http://11011.net/software/vspaste"></a></span></p>
<p>Your first reaction if your familiar with this collection is that it does not have anything even close to the GetIoCModule() method we are calling above.</p>
<p>Indeed this is our &#8216;domain specific&#8217; extension to the .NET Framework API (one of many for this solution).</p>
<p>Here is the implementation of this &#8216;DSL&#8217; extension:</p>
<p><font color="#484848"><span style="background:black 0 50%;color:#808080;">/// &lt;summary&gt;        <br /></span><span style="background:black 0 50%;color:#808080;">/// </span></font><font color="#484848"><span style="background:black 0 50%;color:#008000;">Provides ‘DSL specific’ extensions to the ASP.NET environment for        <br /></span><span style="background:black 0 50%;color:#808080;">/// </span><span style="background:black 0 50%;color:#008000;">the IoC Zero Config environment which is not new (after all this becomes a static)</span></font><span style="background:black 0 50%;color:#008000;"><font color="#484848">        <br /></font></span><font color="#484848"><span style="background:black 0 50%;color:#808080;">/// &lt;/summary&gt;        <br /></span><span style="background:black 0 50%;color:#808080;">/// </span><span style="background:black 0 50%;color:#008000;">The entire point for extension methods is ‘Fluency in API’ as it allows ‘shorthand’ code</span></font></p>
<p><font color="#484848"><span style="background:black 0 50%;color:#9bdd22;">public static class </span><span style="background:black 0 50%;color:#8bcfe2;">ZeroConfigInstanceResolver </span><span style="background:black 0 50%;color:#feba1b;">{ </span></font></p>
<p><font color="#484848"><span style="background:black 0 50%;color:#9bdd22;">private const string </span><span style="background:black 0 50%;color:#feba1b;">ZeroConfigTypeString = </span><span style="background:black 0 50%;color:#a31515;">&quot;IoCConfigModule.IHttpModel&quot;</span><span style="background:black 0 50%;color:#feba1b;">;</span></font></p>
<p><span style="background:black 0 50%;color:#feba1b;"></span><span style="background:black 0 50%;color:#feba1b;"><font color="#484848">&#160;</font></span><font color="#484848"><span style="background:black 0 50%;color:#808080;">/// &lt;summary&gt;        <br /></span><span style="background:black 0 50%;color:#808080;">/// </span></font><font color="#484848"><span style="background:black 0 50%;color:#008000;">Gets the IZeroConfigDI reference        <br /></span><span style="background:black 0 50%;color:#808080;">/// </span></font><font color="#484848"><span style="background:black 0 50%;color:#008000;">(using domain specific logic and the&#160; <br /></span><span style="background:black 0 50%;color:#808080;">/// </span></font><span style="background:black 0 50%;color:#008000;"><font color="#484848">generic logic extending the container)        <br /></font></span><font color="#484848"><span style="background:black 0 50%;color:#808080;">/// &lt;/summary&gt;        <br /></span><span style="background:black 0 50%;color:#808080;">/// &lt;param name=&quot;container&quot;&gt;</span><span style="background:black 0 50%;color:#008000;">The container.</span></font><font color="#484848"><span style="background:black 0 50%;color:#808080;">&lt;/param&gt;        <br /></span><span style="background:black 0 50%;color:#808080;">/// &lt;returns&gt;&lt;/returns&gt; </span></font></p>
<p><font color="#484848"><span style="background:black 0 50%;color:#9bdd22;">public static </span><span style="background:black 0 50%;color:#2b91af;">IZeroConfigDI </span><span style="background:black 0 50%;color:#feba1b;">GetIoCModule(</span><span style="background:black 0 50%;color:#9bdd22;">this </span><span style="background:black 0 50%;color:#8bcfe2;">HttpModuleCollection </span><span style="background:black 0 50%;color:#feba1b;">container) {</span></font></p>
<p><span style="background:black 0 50%;color:#feba1b;"><font color="#484848">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </font></span><span style="background:black 0 50%;color:#9bdd22;"><font color="#484848">return        <br /></font></span><font color="#484848"><span style="background:black 0 50%;color:#feba1b;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; container.FindInstance(        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; () =&gt;         <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; container.Get(ZeroConfigTypeString)         <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span style="background:black 0 50%;color:#feba1b;">&#160;</span><span style="background:black 0 50%;color:#9bdd22;">as </span><span style="background:black 0 50%;color:#2b91af;">IZeroConfigDI</span><span style="background:black 0 50%;color:#feba1b;">); </span></font></p>
<p><span style="background:black 0 50%;color:#feba1b;"><font color="#484848">}</font></span></p>
<p><a href="http://11011.net/software/vspaste"></a></p>
<p>As you can see above we are very specific in our intent to add this to the HttpModuleCollection. There is nothing that interesting above except for the method call FindInstance(Func&lt;TResult&gt;) off the target &#8216;container&#8217;. This is a peek into the non-DSL related extension that represents. You might be aware that there is no such FindInstance available off the HttpModuleCollection.</p>
<p>One of our many goals in creating a fluent, easily used API is reducing complexity and providing very maintainable code. Here you can see the Lambada expression required to locate our service is hidden from the developer completely, yet this code is not a &#8216;one-off&#8217; as we have provided both a DSL level extension in concert with a far more generic extension.</p>
<h2>Part 2: Extending the Horizontal to Empower the Domain Specific</h2>
<p>In looking at the HttpModuleCollection, and in our desire to facilitate other sources of resolving our module, it inherits from the abstract parent NameObjectCollectionBase.</p>
<p>Here is the definition of what inherits from this abstract parent:</p>
<table cellspacing="0" cellpadding="2" width="400" border="1">
<tbody>
<tr>
<td valign="top" width="400"> <br />
<h2>public abstract class NameObjectCollectionBase </h2>
<p>Member of System.Collections.SpecializedSummary:           </p>
<p><em>Provides the abstract base class for a collection of associated System.String keys and System.Object values that can be accessed either with the key or with the index.</em></td>
</tr>
</tbody>
</table>
<p><a href="http://dcarr.files.wordpress.com/2008/05/found.jpg"></a></p>
<p>The issue arises as this abstract base leaves it up to its concrete implementer to provide the indexer (or say Get() method) to access the object desired. Therefore a nice way to enhance this abstract type to work across all of the children is to literally pass in the method to resolve the object desired.</p>
<h2>Part 3 : The Generic Extension</h2>
<p>Here is the trivial extension method used to &#8216;open up&#8217; the NameObjectCollectionBase and which is used above:</p>
<p><span style="background:black 0 50%;color:#808080;">/// &lt;summary&gt;      <br />/// </span><span style="background:black 0 50%;color:#008000;">Finds the instance in the NameObjectCollectionBase      <br /></span><span style="background:black 0 50%;color:#808080;">/// </span><span style="background:black 0 50%;color:#008000;">using the Functor      <br /></span><span style="background:black 0 50%;color:#808080;">/// &lt;/summary&gt;      <br />/// &lt;typeparam name=&quot;TContainer&quot;&gt;</span><span style="background:black 0 50%;color:#008000;">The type of the container.</span><span style="background:black 0 50%;color:#808080;">&lt;/typeparam&gt;      <br />/// &lt;typeparam name=&quot;TResult&quot;&gt;</span><span style="background:black 0 50%;color:#008000;">The type of the result.</span><span style="background:black 0 50%;color:#808080;">&lt;/typeparam&gt;      <br />/// &lt;param name=&quot;container&quot;&gt;</span><span style="background:black 0 50%;color:#008000;">The container.</span><span style="background:black 0 50%;color:#808080;">&lt;/param&gt;      <br />/// &lt;param name=&quot;finder&quot;&gt;</span><span style="background:black 0 50%;color:#008000;">The finder.</span><span style="background:black 0 50%;color:#808080;">&lt;/param&gt;      <br />/// &lt;returns&gt;&lt;/returns&gt;       <br /></span><span style="background:black 0 50%;color:#9bdd22;">public static </span><span style="background:black 0 50%;color:#feba1b;">TResult FindInstance&lt;TContainer, TResult&gt;      <br />&#160;&#160;&#160;&#160;&#160;&#160; (</span><span style="background:black 0 50%;color:#9bdd22;">this </span><span style="background:black 0 50%;color:#feba1b;">TContainer container, </span><span style="background:black 0 50%;color:#2b91af;">Func</span><span style="background:black 0 50%;color:#feba1b;">&lt;TResult&gt; finder)      <br /></span><span style="background:black 0 50%;color:#9bdd22;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; where </span><span style="background:black 0 50%;color:#feba1b;">TContainer : </span><span style="background:black 0 50%;color:#8bcfe2;">NameObjectCollectionBase </span><span style="background:black 0 50%;color:#9bdd22;">where </span><span style="background:black 0 50%;color:#feba1b;">TResult : </span><span style="background:black 0 50%;color:#9bdd22;">class </span><span style="background:black 0 50%;color:#feba1b;">{ </span></p>
<p><span style="background:black 0 50%;color:#feba1b;">     <br /></span><span style="background:black 0 50%;color:#9bdd22;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; return </span><span style="background:black 0 50%;color:#feba1b;">finder();      </p>
<p>} </span></p>
<p><a href="http://11011.net/software/vspaste"></a></p>
<p>Since we cannot abstract up the get method, we take a page from Functional Programming and literally pass in the code to execute (which we do above).</p>
<p>A common pattern is to expose methods like the above, but add additional versions that allow more parameters into the Func&lt;TResult&gt;. This is well covered well by many of the Linq references and books available.</p>
<h2>Part 4: How this allows us to embrace deep/wide change</h2>
<p>A simplistic example is supporting the acquisitions of our target reference (IZeroConfigDI) if it is set as ApplicationState or as an IHttpModule. We could make the design decision to allow our find method to reside literally as an extension method of our HttpApplication (and indeed this turns out to be a reasonable choice as the valid inheritors from NameObjectCollectionBase are sealed and therefore invalid as generic constraints). Here is one approach (not ideal and not our final code but this illustrates the point.) Why not offer your optimized solution?</p>
<p>CODE:</p>
<p><span style="background:black 0 50%;color:#9bdd22;">public abstract class </span><span style="background:black 0 50%;color:#8bcfe2;">IntegrationPoint </span><span style="background:black 0 50%;color:#feba1b;">: </span><span style="background:black 0 50%;color:#8bcfe2;">HttpApplication</span><span style="background:black 0 50%;color:#feba1b;">, </span><span style="background:black 0 50%;color:#2b91af;">IDomainApplication </span><span style="background:black 0 50%;color:#feba1b;">{</span> </p>
</p>
<p> <span style="background:black 0 50%;color:#9bdd22;">private static </span><span style="background:black 0 50%;color:#2b91af;">IZeroConfigDI </span><span style="background:black 0 50%;color:#feba1b;">_container;</span>
</p>
<p> <span style="background:black 0 50%;color:#808080;">/// &lt;summary&gt;    <br />/// </span><span style="background:black 0 50%;color:#008000;">Executes custom initialization code after    <br /></span><span style="background:black 0 50%;color:#808080;">/// </span><span style="background:black 0 50%;color:#008000;">all event handler    <br /></span><span style="background:black 0 50%;color:#808080;">/// </span><span style="background:black 0 50%;color:#008000;">modules have been added.    <br /></span><span style="background:black 0 50%;color:#808080;">/// </span><span style="background:black 0 50%;color:#008000;">Also acquire a reference to the HttpModule    <br /></span><span style="background:black 0 50%;color:#808080;">/// </span><span style="background:black 0 50%;color:#008000;">or Application State    <br /></span><span style="background:black 0 50%;color:#808080;">/// </span><span style="background:black 0 50%;color:#008000;">for IoC / DI if present    <br /></span><span style="background:black 0 50%;color:#808080;">/// &lt;/summary&gt;    <br /></span><span style="background:black 0 50%;color:#9bdd22;">public override void </span><span style="background:black 0 50%;color:#feba1b;">Init() { </span>
</p>
<p><span style="background:black 0 50%;color:#feba1b;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; _container = </span><span style="background:black 0 50%;color:#9bdd22;">this</span><span style="background:black 0 50%;color:#feba1b;">.GetIoCModule(); </span><span style="background:black 0 50%;color:#9bdd22;">base</span><span style="background:black 0 50%;color:#feba1b;">.Init(); </span></p>
<p><span style="background:black 0 50%;color:#feba1b;">}</span></p>
<p><a href="http://11011.net/software/vspaste"></a></p>
<p>And the extension on HttpApplication:</p>
<p><span style="background:black 0 50%;color:#9bdd22;">public static class </span><span style="background:black 0 50%;color:#8bcfe2;">ZeroConfigInstanceResolver </span><span style="background:black 0 50%;color:#feba1b;">{</span> </p>
</p>
<p> <span style="background:black 0 50%;color:#9bdd22;">private const string </span><span style="background:black 0 50%;color:#feba1b;">ZeroConfigTypeString = </span><span style="background:black 0 50%;color:#a31515;">&quot;IoCConfigModule.IHttpModel&quot;</span><span style="background:black 0 50%;color:#feba1b;">;</span>
</p>
<p> <span style="background:black 0 50%;color:#808080;">/// &lt;summary&gt;    <br />/// </span><span style="background:black 0 50%;color:#008000;">Gets the IZeroConfigDI reference if possible (null if not found)    <br /></span><span style="background:black 0 50%;color:#808080;">/// </span><span style="background:black 0 50%;color:#008000;">using domain specific logic and the    <br /></span><span style="background:black 0 50%;color:#808080;">/// </span><span style="background:black 0 50%;color:#008000;">generic logic extending the container.    <br /></span><span style="background:black 0 50%;color:#808080;">/// &lt;/summary&gt;    <br />/// &lt;param name=&quot;container&quot;&gt;</span><span style="background:black 0 50%;color:#008000;">The container.</span><span style="background:black 0 50%;color:#808080;">&lt;/param&gt;    <br />/// &lt;returns&gt;&lt;/returns&gt;     <br /></span><span style="background:black 0 50%;color:#9bdd22;">public static </span><span style="background:black 0 50%;color:#2b91af;">IZeroConfigDI </span><span style="background:black 0 50%;color:#feba1b;">GetIoCModule(</span><span style="background:black 0 50%;color:#9bdd22;">this </span><span style="background:black 0 50%;color:#8bcfe2;">HttpApplication </span><span style="background:black 0 50%;color:#feba1b;">container) {</span>
</p>
<p><span style="background:black 0 50%;color:#9bdd22;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; var </span><span style="background:black 0 50%;color:#feba1b;">modules = container.Modules;      <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span style="background:black 0 50%;color:#9bdd22;">var </span><span style="background:black 0 50%;color:#feba1b;">applicationState = container.Application;&#160; <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></p>
<p><span style="background:black 0 50%;color:#feba1b;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span style="background:black 0 50%;color:#9bdd22;">var </span><span style="background:black 0 50%;color:#feba1b;">resultVar = modules.ToInstance(      <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; () =&gt; modules.Get(ZeroConfigTypeString)       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; )       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span style="background:black 0 50%;color:#feba1b;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; ??&#160; <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; applicationState.ToInstance(       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; () =&gt; </span><span style="background:black 0 50%;color:#feba1b;">applicationState.Get(ZeroConfigTypeString)      <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; );</span> </p>
</p>
<p> <span style="background:black 0 50%;color:#9bdd22;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; return </span><span style="background:black 0 50%;color:#feba1b;">resultVar </span><span style="background:black 0 50%;color:#9bdd22;">as </span><span style="background:black 0 50%;color:#2b91af;">IZeroConfigDI</span><span style="background:black 0 50%;color:#feba1b;">;    </p>
<p>}</span>
</p>
<p><a href="http://11011.net/software/vspaste"></a></p>
<p>No change is required on the extension to the FindInstance extension.</p>
<p>Can you see how the above can be improved?</p>
<p>We expand this to make the ‘rule for finding the <span style="background:black 0 50%;color:#2b91af;">IZeroConfigDI</span> external. To be specific, above we have a business rule implemented that we typically would not want ‘hard coded’. In fact more then not all things considered we want this. So we do the4 following:</p>
<ul>
<li>Determine the Delegate signature for the business rule.      </li>
<li>For the above, we need as input (at a minimum) an <span style="background:black 0 50%;color:#8bcfe2;">HttpApplication </span>instance as that is the container for the models and state, and those two items lack a shared interface or base (or we could use that).       </li>
<li>The signature returns (in all cases) an instance cast where it implement <span style="background:black 0 50%;color:#2b91af;">IZeroConfigDI </span>to resolve this business rule.       </li>
<li>Therefore the business rule signature is <strong>Func&lt;<span style="background:black 0 50%;color:#8bcfe2;">HttpApplication </span>,<span style="background:black 0 50%;color:#2b91af;">IZeroConfigDI</span>&gt;</strong>       </li>
</ul>
<p><strong></strong></p>
<table cellspacing="0" cellpadding="2" width="355" border="1">
<tbody>
<tr>
<td valign="top" width="353">
<p><strong></strong></p>
<p>         <strong>
<p>&#160;</p>
<p>         </strong>
<ul>
<li>
<h3>It’s an essential skill to not only master generics at the deepest level, but to master all the intrinsic delegate types (Predicate, Func, Action, etc.) to be proficient in the state of the technology of Linq today </h3>
<p></li>
<li>
<h3>We wish it was easier to ‘extend’ Delegates by inheritance or to not be tasked with coding to each variant of a delegates possible type parameters, but this is different the Object Oriented in it’s domain. </h3>
<p></li>
<li>
<h3>We also wish the generic constraint language would be fundamentally focused on, extended and evolved to allow the full richness in constraint semantics as we have with Linq Expressions. </h3>
<p></li>
</ul>
</td>
</tr>
</tbody>
</table>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/dcarr.wordpress.com/238/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/dcarr.wordpress.com/238/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dcarr.wordpress.com/238/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dcarr.wordpress.com/238/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dcarr.wordpress.com/238/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dcarr.wordpress.com/238/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dcarr.wordpress.com/238/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dcarr.wordpress.com/238/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dcarr.wordpress.com/238/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dcarr.wordpress.com/238/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dcarr.wordpress.com/238/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dcarr.wordpress.com/238/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=238&subd=dcarr&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://team.pushbomb.com/2008/05/27/advanced-c-30-part-3-new-language-features-as-domain-specific-as-well-as-general-purpose-extensions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b572cbcda5a17fe984e7dd1ddc9c3d6?s=96&#38;d=&#38;r=PG" medium="image">
			<media:title type="html">pushbomb</media:title>
		</media:content>
	</item>
		<item>
		<title>Framework API Development Best Practices using C# 3.0</title>
		<link>http://team.pushbomb.com/2008/05/15/domain-driven-framework-development-c-net-35-extension-methods-lambada-empowerment/</link>
		<comments>http://team.pushbomb.com/2008/05/15/domain-driven-framework-development-c-net-35-extension-methods-lambada-empowerment/#comments</comments>
		<pubDate>Thu, 15 May 2008 21:24:52 +0000</pubDate>
		<dc:creator>Damon Wilder Carr</dc:creator>
				<category><![CDATA[C# 3.0 Enhancements]]></category>
		<category><![CDATA[C# 3.0 for Internal DSL]]></category>
		<category><![CDATA[ORM]]></category>
		<category><![CDATA[Software Design]]></category>
		<category><![CDATA[Software Factories]]></category>
		<category><![CDATA[Software Futures]]></category>
		<category><![CDATA[agile practices]]></category>
		<category><![CDATA[resharper]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[.NET 3.5]]></category>
		<category><![CDATA[Extension Methods]]></category>
		<category><![CDATA[Lambada]]></category>
		<category><![CDATA[Generics]]></category>
		<category><![CDATA[API Design]]></category>
		<category><![CDATA[Framework Design]]></category>

		<guid isPermaLink="false">http://dcarr.wordpress.com/2008/05/15/domain-driven-framework-development-c-net-35-extension-methods-lambada-empowerment/</guid>
		<description><![CDATA[This content assumes you understand the basics of the new C# 3.0 language features in .NET 3.5. I use a 'pretend pair programming' approach with continued refactoring as this is how I would discuss it if you were coding with me.

I'll start with a fairly trivial, yet important example (I use it every day). Many times when comparing Strings I want to ignore case and culture (the InvariantCulture). This is provided by an overload as such as you likely know:<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=188&subd=dcarr&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<h2 style="text-align:left;">PART 1</h2>
<p style="text-align:left;"><a href="http://dcarr.files.wordpress.com/2008/05/image31.png"><img class="alignright" style="border-width:0;margin:5px;" src="http://dcarr.files.wordpress.com/2008/05/image3-thumb.png?w=1024&#038;h=220" alt="image" height="220" /></a></p>
<p style="text-align:left;">This content assumes you have an introductory knowledge of C# 3.0 language features in .NET 3.5 and mastery of legacy C# 2.0 Generics, Generic Type Constraints, Anonymous Delegates and related material.</p>
<p>I use a &#8216;pair programming&#8217; approach with continued refactoring as this is how I would discuss it if you were coding with me, with an unfortunate one-way delivery.</p>
<h3 style="text-align:left;">The Brief Strategic View</h3>
<p style="text-align:left;">Microsoft has slowly been moving C# in a very productive direction (this is not new, as these features existed in 2.0 although not nearly as well integrated) to provide &#8216;Functional Language&#8217; features. If you don&#8217;t know or care about language semantics, just know that Linq and especially Lambada Expressions are about empowering you to use executable code like a variable, aka to leverage the power of functional programming. For more on this, read this <a href="http://msdn.microsoft.com/en-us/magazine/cc507636.aspx">MSDN article</a> by <a href="http://msdn.microsoft.com/en-us/magazine/cc301175.aspx">Joel Pobar (former CLR Team)</a> or read the next set of posts (part 2 onward) as I will go into the depths of this.</p>
<table style="text-align:left;height:153px;" border="1" cellspacing="0" cellpadding="2" width="399">
<tbody>
<tr>
<td width="543" valign="top">
<p align="center">I think of Lambadas as an incredibly focused and powerful domain specific language for delegates.</p>
<p>In this sense they are quite similar to Regular Expressions in that they are really good at their focus area.</p>
<p align="center">What do I mean by good?</p>
<ul>
<li>
<div>Terse yet Understandable / Maintainable</div>
</li>
<li>
<div>Syntax tailored to the need, not the other way around.</div>
</li>
<li>
<div>Highly effective for problems that are orders of magnitude more difficult without them (a simple 10% improvement would not cut it)</div>
</li>
</ul>
</td>
</tr>
</tbody>
</table>
<h2 style="text-align:left;">Painless Intro</h2>
<p style="text-align:left;">I&#8217;ll start with a fairly trivial, yet important example (I use it every day). Many times when comparing Strings I want to ignore case and culture (the InvariantCulture). This is provided by an overload as such as you likely know:</p>
<p>[Test,Category("BaselineCore")]<br />
public void shouldAsserStringCloneInvokeEqual() {</p>
<p>var baselineString = &#8220;This is a TEST CASE to IgnOrE Casing&#8221;;</p>
<p>var stringUpper = baselineString.ToUpperInvariant();</p>
<p>Assert.IsTrue(baselineString.Equals(stringUpper,<br />
StringComparison.InvariantCultureIgnoreCase));</p>
<p style="text-align:left;">The test results are shown above. Pass. Ok so I really like short, concise code that is understandable at a glance. Also it&#8217;s a pain to always (even with ReSharper) use this (and I have seen people use RegEx for this! RegEx is awesome but overkill for this issue).</p>
<p style="text-align:left;">Refactoring</p>
<ul style="text-align:left;">
<li>Create an extension method on String</li>
<li>Decide on a good name for the method (this is SO important and for most an afterthought!)</li>
</ul>
<p style="text-align:left;">I&#8217;ve settled on calling this new method on String &#8216;EqualsCore&#8217; as that is what we are doing, making the conditions for a match &#8217;simpler&#8217; and seeing &#8216;just the core values&#8217; are the same (anyway it makes sense to me)., I suppose this could be &#8216;EqualsRelaxed&#8217; or whatever..</p>
<p style="text-align:left;">Here is the test case (no code yet):</p>
<p>[Test, Category("BaselineCore")]<br />
public void shouldAsserStringsEqualUsingExtension() {<br />
var baselineString = &#8220;This is a TEST CASE to IgnOrE Casing&#8221;;<br />
Assert.IsTrue(baselineString. EqualsSimple(baselineString.ToUpperInvariant())); }</p>
<p style="text-align:left;">Now we write the code. Here is the container for the extension method:</p>
<p>public static class StringExtensions {</p>
<p>public static bool EqualsSimple(this string sTarget, string compare) {</p>
<p>return sTarget.Equals(compare, StringComparison.InvariantCultureIgnoreCase); }</p>
<p>}</p>
<p style="text-align:left;">Indeed they both pass:</p>
<p style="text-align:left;"><a href="http://dcarr.files.wordpress.com/2008/05/image25.png"><img class="alignright" style="float:right;border-width:0;" src="http://dcarr.files.wordpress.com/2008/05/image25-thumb.png?w=455&#038;h=255" alt="image25" width="455" height="255" align="left" /></a></p>
<p style="text-align:left;">
<p style="text-align:left;">
<p style="text-align:left;">
<p style="text-align:left;">
<p style="text-align:left;">
<p style="text-align:left;">Since every type inherits from Object, and Equals is defined on Object, all instances should support this approach, and I could be early bound by using Generics&#8230;. Hmm&#8230;</p>
<p style="text-align:left;">I tried this (note: I gave it a new new &#8216;EqualsThis&#8217; to separate them.</p>
<p>public static bool EqualsThis&lt;TTarget&gt;(this TTarget sTarget, TTarget compare){</p>
<p>return sTarget.Equals(compare);</p>
<p>}</p>
<p style="text-align:left;">Functionally not that interesting at all, but a test. So I typed in the following and wow&#8230; It works from Intellisense&#8217;s view&#8230; Ok it compiled! Wait&#8230;..FAIL! But why:?</p>
<p style="text-align:left;">OK here is the new test:</p>
<p>[Test, Category("BaselineCore")]</p>
<p>public void shouldAsserANYTHINGEqualUsingExtension() {</p>
<p>const String baselineString =&#8221;This is a TEST CASE to IgnOrE Casing&#8221;;</p>
<p>var sb = new StringBuilder(baselineString);</p>
<p>Assert.IsTrue(sb.EqualsThis(new StringBuilder(sb.ToString())));</p>
<p>}</p>
<p style="text-align:left;">
<p style="text-align:left;">Interesting&#8230;</p>
<p style="text-align:left;">Here is the documentation for what Equals means by default from Microsoft:</p>
<table style="text-align:left;" border="1" cellspacing="0" cellpadding="2" width="396">
<tbody>
<tr>
<td width="394" valign="top">
<p align="center">Returns: true if objA is the same instance as objB or if both are null references or if objA.Equals(objB) returns true; otherwise, false.</p>
</td>
</tr>
</tbody>
</table>
<p style="text-align:left;">So our code fails using the extension yet this returns true:</p>
<p>[Test] public void shouldAssertStringBuilderExplicit() {</p>
<p>const String baselineString = &#8220;This is a TEST CASE to IgnOrE Casing&#8221;;</p>
<p>var sb = new StringBuilder(baselineString);</p>
<p>var sb2 = new StringBuilder(baselineString); Assert.IsTrue(sb.Equals(sb2));</p>
<p>}</p>
<p style="text-align:left;">So Reflector to the rescue once again. I could see in Reflector what I believed the issue was. Indeed the StringBuilder class has an overloaded Equals, and even making the extension method cast to the generic type directly was a no go.</p>
<table style="text-align:left;" border="1" cellspacing="0" cellpadding="2" width="400">
<tbody>
<tr>
<td width="400" valign="top">
<p align="center">So what do you think? Why would this compile fine with absolutely no problems (and that is correct it turns out), but FAIL at runtime on the assertion when the same line above passes? Skip ahead and reply with the answer if you know it&#8230;.</p>
</td>
</tr>
</tbody>
</table>
<p style="text-align:left;">This exposes one of the dangers that we must be incredibly careful with. It has always been poor design in my opinion to encourage developers to override common methods such as ToString() and Equals(object X) with their own behaviors as you force consumers of the API to understand IMPLEMENTATION. You cannot ensure your OK simply from a contract. This is known to be evil&#8230;.</p>
<p style="text-align:left;">Of course this is a legacy style and will be slowly phased out.</p>
<p style="text-align:left;">Spin up reflector and look at the code for the OVERLOAD that StringBuilder has:</p>
<div style="text-align:left;">public bool Equals(StringBuilder sb){if (sb == null) return false;</p>
<p>return (((this.Capacity == sb.Capacity) &amp;&amp; (this.MaxCapacity == sb.MaxCapacity))<br />
&amp;&amp;<br />
this.m_StringValue.Equals((string) sb.m_StringValue));</p>
<p>}</p></div>
<div style="text-align:left;">
<p style="text-align:left;">Of course! How else could a StringBuilder claim to be &#8216;Equal&#8217; to another&#8230; In fact it is perfectly reasonable but again shows the danger of late binding, making assumptions about how any &#8216;object&#8217; type will perform.</p>
</div>
<div style="text-align:left;">
<p style="text-align:left;">So there was no real way for our extension to call the &#8216;correct&#8217; equals. It called the base definition given above which is obvious now why it failed.</p>
<p style="text-align:left;">
<p style="text-align:left;">So how do we fix this for the general case?</p>
<div style="text-align:left;">
<p style="text-align:left;">Here is the test case which I got working.. If your not familiar with this style of code,</p>
</div>
<div style="text-align:left;">This is the foundation we build layer after layer on and illustrates the core of this post.</div>
<p>[Test] public void shouldAsserANYTHINGEqualUsingExtension() {</p>
<p>const String baselineString = &#8220;This is a TEST CASE to IgnOrE Casing&#8221;;</p>
<p>var sb = new StringBuilder(baselineString);</p>
<p>var sb2 = new StringBuilder(baselineString);</p>
<p>Assert.IsTrue(sb.EqualsThis(x =&gt; x.Equals(sb2)));</p>
<p>}</p>
<table style="text-align:left;" border="1" cellspacing="0" cellpadding="2" width="438">
<tbody>
<tr>
<td width="436" valign="top">
<p align="center">Lambadas are like an incredibly focused and powerful domain specific language for delegates. In this sense they are quite similar to Regular Expressions in that they are really good (and to quantify good, I mean clear yet precise, not overly verbose yet highly effective for problems that are more difficult without them).</p>
</td>
</tr>
</tbody>
</table>
<div style="text-align:left;">So what about the implementation? Here it is:</div>
<p>public static bool EqualsThis&lt;TTarget&gt;(this TTarget sTarget,</p>
<p>Predicate&lt;TTarget&gt; EqualsDelegate) {</p>
<p>return EqualsDelegate.Invoke(sTarget);</p>
<p>}</p>
<div style="text-align:left;">It&#8217;s all about Expressions! Think of them as varied ways to receive executable code that you can &#8216;invoke&#8217; literally, that must meet the contract you define.</div>
<div style="text-align:left;">This is so basic after we cover what the really useful applications are. However remember this has nothing to do with the examples, only the concepts they represent.</div>
<h1 style="text-align:left;"></h1>
<table style="text-align:left;" border="1" cellspacing="0" cellpadding="2" width="632">
<tbody>
<tr>
<td width="400" valign="top">
<div></div>
<ol>
<li>Combine Generics and Generic Constraints to your Extension Methods but BE CAREFUL and ensure you are covered by unit tests</li>
<li>Try to always think a level of abstraction above where your immediate need is to see if your solution indeed has wider and perhaps far more valuable contribution.</li>
<li>Hide complexity behind your Framework API, and focus on crafting work that others will easily consume.</li>
</ol>
</td>
</tr>
</tbody>
</table>
</div>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/dcarr.wordpress.com/188/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/dcarr.wordpress.com/188/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dcarr.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dcarr.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dcarr.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dcarr.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dcarr.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dcarr.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dcarr.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dcarr.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dcarr.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dcarr.wordpress.com/188/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=188&subd=dcarr&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://team.pushbomb.com/2008/05/15/domain-driven-framework-development-c-net-35-extension-methods-lambada-empowerment/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b572cbcda5a17fe984e7dd1ddc9c3d6?s=96&#38;d=&#38;r=PG" medium="image">
			<media:title type="html">pushbomb</media:title>
		</media:content>

		<media:content url="http://dcarr.files.wordpress.com/2008/05/image3-thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://dcarr.files.wordpress.com/2008/05/image25-thumb.png" medium="image">
			<media:title type="html">image25</media:title>
		</media:content>
	</item>
		<item>
		<title>ReSharper 4 &#8212; Latest Status Update from Ilya Ryzhenkov</title>
		<link>http://team.pushbomb.com/2008/05/14/resharper-4-latest-status-update-from-ilya-ryzhenkov/</link>
		<comments>http://team.pushbomb.com/2008/05/14/resharper-4-latest-status-update-from-ilya-ryzhenkov/#comments</comments>
		<pubDate>Wed, 14 May 2008 07:34:14 +0000</pubDate>
		<dc:creator>Damon Wilder Carr</dc:creator>
				<category><![CDATA[Software Design]]></category>
		<category><![CDATA[Software Futures]]></category>
		<category><![CDATA[reflection]]></category>
		<category><![CDATA[resharper]]></category>
		<category><![CDATA[Resharper]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[JetBrains]]></category>

		<guid isPermaLink="false">http://dcarr.wordpress.com/2008/05/14/resharper-4-latest-status-update-from-ilya-ryzhenkov/</guid>
		<description><![CDATA[Well, overall time scope for ReSharper 4 release is about a month. Thank you for your patience, we really appreciate your participation in our early access program! We are doing our best to deliver smart and quality product. And while we are here, what is *single* most important thing you want to be fixed/changed before release?<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=187&subd=dcarr&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>Hello, I must admit, we were not very responsive in the forums for the last month or so. We were<a href="http://dcarr.files.wordpress.com/2008/05/200805140336160109.jpg"><img class="alignright alignnone size-medium wp-image-186" style="float:right;" src="http://dcarr.files.wordpress.com/2008/05/200805140336160109.jpg?w=379&#038;h=284" alt="Home Page" width="379" height="284" /></a></p>
<p>busy developing ReSharper 4 :) Here is quick update. We are currently working on preparing ReSharper for Beta &#8211; performance, memory, overall stability and reliability. Beta should be out very soon. Then we will have</p>
<p>post-Beta cleanup, more stabilization for Release, fill in missing bricks found during Beta, and then &#8230; Well, overall time scope for ReSharper 4 release is about a month. Thank you for your patience, we really appreciate your participation in our early access program! We are doing our best to deliver smart and quality product. And while we are here, what is *single* most important thing you want to be fixed/changed before release?</p>
<blockquote><p>Sincerely,</p>
<p>Ilya Ryzhenkov</p>
<p>JetBrains, Inc</p>
<p>http://www.jetbrains.com &#8220;Develop with pleasure!&#8221;</p></blockquote>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/dcarr.wordpress.com/187/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/dcarr.wordpress.com/187/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dcarr.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dcarr.wordpress.com/187/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dcarr.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dcarr.wordpress.com/187/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dcarr.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dcarr.wordpress.com/187/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dcarr.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dcarr.wordpress.com/187/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dcarr.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dcarr.wordpress.com/187/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=187&subd=dcarr&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://team.pushbomb.com/2008/05/14/resharper-4-latest-status-update-from-ilya-ryzhenkov/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b572cbcda5a17fe984e7dd1ddc9c3d6?s=96&#38;d=&#38;r=PG" medium="image">
			<media:title type="html">pushbomb</media:title>
		</media:content>

		<media:content url="http://dcarr.files.wordpress.com/2008/05/200805140336160109.jpg?w=300" medium="image">
			<media:title type="html">Home Page</media:title>
		</media:content>
	</item>
		<item>
		<title>ReSharper 4.0 EAP Notes &#8211; JetBrains.net</title>
		<link>http://team.pushbomb.com/2008/05/01/resharper-40-eap-notes-jetbrainsnet/</link>
		<comments>http://team.pushbomb.com/2008/05/01/resharper-40-eap-notes-jetbrainsnet/#comments</comments>
		<pubDate>Thu, 01 May 2008 15:33:16 +0000</pubDate>
		<dc:creator>Damon Wilder Carr</dc:creator>
				<category><![CDATA[C# 3.0 for Internal DSL]]></category>
		<category><![CDATA[Framework Design]]></category>
		<category><![CDATA[Proof Driven Development]]></category>
		<category><![CDATA[Software Design]]></category>
		<category><![CDATA[Software Futures]]></category>
		<category><![CDATA[resharper]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[ReSharper 4.0]]></category>
		<category><![CDATA[EAP]]></category>

		<guid isPermaLink="false">http://dcarr.wordpress.com/2008/05/01/resharper-40-eap-notes-jetbrainsnet/</guid>
		<description><![CDATA[
 From ReSharper&#8217;s EAP Site
I&#8217;ve been using the 4.0 EAP (pre-beta) since the first preview and it&#8217;s awesome&#8230; Rocky at times, but I&#8217;ve never lost any code (however you should use at your own risk!).
There is something very comforting in auto-creating an anonymous delegate and having it convert automagically to lambata syntax&#8230;.
For example, here is [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=182&subd=dcarr&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<blockquote>
<h3><span style="color:#ffffff;"> From ReSharper&#8217;s EAP Site</span></h3>
<p>I&#8217;ve been using the 4.0 EAP (pre-beta) since the first preview and it&#8217;s awesome&#8230; Rocky at times, but I&#8217;ve never lost any code (however you should use at your own risk!).</p>
<p>There is something very comforting in auto-creating an anonymous delegate and having it convert automagically to lambata syntax&#8230;.</p>
<p>For example, here is a step by step from a real code sample:</p>
<h4><a name="ReSharper4.0EAPNotes-C#3.0support">C# 3.0 support</a></h4>
<p><a name="ReSharper4.0EAPNotes-Implicitlytypedlocalsandarrays">Implicitly typed locals and arrays</a></p>
<p>Fully supported, including suggestions to omit explicit type specification, Introduce Variable refactoring and context actions to convert to implicit or explicit form.<br />
<img src="http://www.jetbrains.net/confluence/download/attachments/31721/release_notes_use_var.png" border="0" alt="" align="absmiddle" /></p>
<p><a name="ReSharper4.0EAPNotes-ExtensionMethodssupport">Extension Methods support</a></p>
<p>Fully supported, with Import Symbol completion (previously known as Type Name completion) after dot which can import suitable extension method and insert appropriate using directive. Analysis will suggest converting invocations from static-like to instance-like form. Context action can convert it back, and there are refactorings to convert static method of static class to Extension Method and update all call sites. There is also reverse refactoring, of course.</p>
<p><a name="ReSharper4.0EAPNotes-Objectandcollectioninitializers">Object and collection initializers</a></p>
<p>Fully supported, with suggestions and context actions to fold series of statements to collection or object to initializer, if possible.<br />
<img src="http://www.jetbrains.net/confluence/download/attachments/31721/release_notes_use_object_initializer.png" border="0" alt="" align="absmiddle" /><br />
ReSharper also provides smart intellisense features in such places, like completing settable properies or displaying correct parameter information for Add method used in collection initializer.<br />
<img src="http://www.jetbrains.net/confluence/download/attachments/31721/release_notes_completion_in_initializer.png" border="0" alt="" align="absmiddle" /></p>
<p><a name="ReSharper4.0EAPNotes-Automaticproperties">Automatic properties</a></p>
<p>Fully supported, with context actions to convert to property with backing field and back. Analysis can show properties which are candidates for conversion. Code generation features may suggest creating automatic property in addition to property with backing field, if appropriate.<br />
<img src="http://www.jetbrains.net/confluence/download/attachments/31721/release_notes_convert_to_autoproperty.png" border="0" alt="" align="absmiddle" /></p>
<p><a name="ReSharper4.0EAPNotes-Anonymoustypes">Anonymous types</a></p>
<p>Fully supported. ReSharper can search for similar anonymous types throughout the project or solution, give a name to anonymous type and replace usages, rename properties, suggest reordering properties if two anonymous types look similar and more.<br />
<img src="http://www.jetbrains.net/confluence/download/attachments/31721/release_notes_sync_anonymous_types.png" border="0" alt="" align="absmiddle" /></p>
<p><a name="ReSharper4.0EAPNotes-Lambdas">Lambdas</a></p>
<p>Partially supported. By partially, it means that not all features we want there are ready. The code shouldn&#8217;t be red and intellisense should be working, but some context actions, quickfixes, analysis and such may be missing. We are actively working on those features, so as time passes ReSharper will be more and more smart about lambdas. We have conversion actions like delegate to lambda and back and some suggestions. Note, that not all features of ReSharper are lambda-aware yet, so they may fail when they happen to operate on lambdas.<br />
<img src="http://www.jetbrains.net/confluence/download/attachments/31721/release_notes_convert_to_lambda.png" border="0" alt="" align="absmiddle" /></p>
<p><a name="ReSharper4.0EAPNotes-LINQ">LINQ</a></p>
<p>Almost supported. We import appropriate extension methods, provide intellisense, a number quickfixes, our refactorings are aware of queries. We also provide special live templates.</p>
<p><a name="ReSharper4.0EAPNotes-Partialmethods">Partial methods</a></p>
<p>Not supported.</p>
<p><a name="ReSharper4.0EAPNotes-Newandupdatedfeatures">New and updated features</a></p>
<p><a name="ReSharper4.0EAPNotes-GotoType,File,SymbolandFindResults">Go to Type, File, Symbol and Find Results</a></p>
<p>You can now put results of &#8220;Go to&#8221; features to find results for browsing<br />
<img src="http://www.jetbrains.net/confluence/download/attachments/31721/GotoByNameResults.png" border="0" alt="" width="488" height="415" align="absmiddle" /></p>
<p><a name="ReSharper4.0EAPNotes-ExternalAnnotations">External Annotations</a></p>
<p>Ability to annotate external (non-source) symbols with ReSharper-specific attributes, like CanBeNull and NotNull. Note, that we standardized attribute names for better interoperability and less configuration hassle, so you may need to refactor you code a bit if you use these attributes.</p>
<p><a name="ReSharper4.0EAPNotes-CodeCleanup">Code Cleanup</a></p>
<p>Successor of Reformat Code, Optimize Usings and other code cleaning features &#8211; all in one interface with many more modules. Includes things like processing readonly fields, removing redundancies, updating file header, converting to automatic properties, replacing explicit types with vars and more. All in batch mode, so that you can instantly clean the whole project or even solution.<br />
<img src="http://www.jetbrains.net/confluence/download/attachments/31721/release_notes_code_cleanup.png" border="0" alt="" align="absmiddle" /></p>
<p><a name="ReSharper4.0EAPNotes-Plentyofnewanalyses">Plenty of new analyses</a></p>
<p>We added many more inspections in ReSharper 4. Some of them are related to C# 3.0 and deal with new language constructs. Also, there are new structure-related inspections, like &#8220;if&#8221; statement analysis, anonymous method closure analysis, and more. We also added new severity level for analysis results &#8211; Hint &#8211; which is a lot less intrusive. It does not participate in next/previous highlight navigation and is not shown on error stripe. It simply tells you: &#8220;Pssst! Take a look here, it can make your code look better.&#8221;</p>
<p><a name="ReSharper4.0EAPNotes-CompleteStatement">Complete Statement</a></p>
<p>Also known as Smart Enter, it inserts required syntax elements to complete the code you are writing. It can close parentheses as needed, add semicolon, complete constructs such as if, while, for and so on.</p>
<p><a name="ReSharper4.0EAPNotes-CompletionwithCamelHumps">Completion with CamelHumps</a></p>
<p>All kinds of code completion (Symbol completion, Import Symbol Completion and Smart Completion) now supports filtering by CamelHumps, which tremendously speeds things up. E.g. if you know you have D<em>efaultCodeCompletionManager</em> type somewhere you just type <em>DCCM</em> and invoke Import symbol completion. Full type name will be inserted and using directive will be added as needed.</p>
<p><a name="ReSharper4.0EAPNotes-Refactorings">Refactorings</a></p>
<p>There are new refactorings related to C# 3.0 features, like &#8220;Convert Property to Automatic Property&#8221; and back, &#8220;Convert Static Method to Extension Method&#8221; and back and &#8220;Name Anonymous Type&#8221;. &#8220;Introduce Variable&#8221; is now dialogless and this improves coding flow a lot! Another great new refactoring is &#8220;Inline Method&#8221;, which can replace method call with method body at specific point or all over your code. &#8220;Method to Indexer&#8221; is a nice addition to &#8220;Method to Property&#8221; refactoring. There are also improvements in almost all refactorings, both in usability and smartness.</p>
<p><a name="ReSharper4.0EAPNotes-RecentEdits">Recent Edits</a></p>
<p>In addition to Recent Files we created Recent Edits feature, which shows what you&#8217;ve been changing recently. If appropriate, it displays type and member the change occured in.<br />
<img src="http://www.jetbrains.net/confluence/download/attachments/31721/RecentEdits.png" border="0" alt="" width="495" height="175" align="absmiddle" /></p>
<p><a name="ReSharper4.0EAPNotes-Todoitemsonidentifiersandstringliterals">To-do items on identifiers and string literals</a></p>
<p>You can now configure ReSharper to search for specific patterns not only in comments, but also in string literals and identifiers. It is quite useful to set NotImplementedException pattern to have a quick access to code you have to write.<br />
<img src="http://www.jetbrains.net/confluence/download/attachments/31721/ToDoIdentifiers.png" border="0" alt="" align="absmiddle" /></p>
<p><a name="ReSharper4.0EAPNotes-Supportforsolutionsusingdifferenttargets">Support for solutions using different targets</a></p>
<p>ReSharper now fully supports solutions where different projects use different versions of CLR like .NET Compact Framework or Silverlight. You can now have e.g. Smart Device projects and normal projects in the same solution and all ReSharper features will work perfectly fine in this scenario.</p>
<p><a name="ReSharper4.0EAPNotes-ProjectReferences">Project References</a></p>
<p>This is more like preview of the feature which may or may not come into final bits of ReSharper 4. It can show dependencies between projects and libraries in terms of assembly references.</p>
<p><a name="ReSharper4.0EAPNotes-LiveTemplatesEditor">Live Templates Editor</a></p>
<p>We are improving usability of Live Templates editor and currently it is large work in progress. Be careful with it if you use custom templates.</p>
<p><a name="ReSharper4.0EAPNotes-Easiercreationofnewfoldersthroughgenerate(AltInsertshortcut)">Easier creation of new folders through generate (Alt+Insert shortcut)</a></p>
<p><img src="http://www.jetbrains.net/confluence/download/attachments/31721/release_notes_new_folder.png" border="0" alt="" align="absmiddle" /></p>
<p><a name="ReSharper4.0EAPNotes-Dozensofotherfeatures">Dozens of other features</a></p>
<p>We also have dozens of other minor features, keep track of</p>
<p><a href="http://www.jetbrains.net/jira/secure/IssueNavigator.jspa?reset=true&amp;&amp;type=2&amp;pid=10241&amp;resolution=1&amp;fixfor=11304&amp;sorter/field=issuekey&amp;sorter/order=DESC">this tracker query<sup><img src="http://www.jetbrains.net/confluence/images/icons/linkext7.gif" border="0" alt="" width="7" height="7" align="absmiddle" /></sup></a> for the current list.</p></blockquote>
<p><a href="http://www.jetbrains.net/confluence/display/ReSharper/ReSharper+4.0+EAP+Notes">ReSharper 4.0 EAP Notes &#8211; JetBrains.net</a></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/dcarr.wordpress.com/182/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/dcarr.wordpress.com/182/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dcarr.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dcarr.wordpress.com/182/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dcarr.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dcarr.wordpress.com/182/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dcarr.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dcarr.wordpress.com/182/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dcarr.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dcarr.wordpress.com/182/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dcarr.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dcarr.wordpress.com/182/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=182&subd=dcarr&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://team.pushbomb.com/2008/05/01/resharper-40-eap-notes-jetbrainsnet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b572cbcda5a17fe984e7dd1ddc9c3d6?s=96&#38;d=&#38;r=PG" medium="image">
			<media:title type="html">pushbomb</media:title>
		</media:content>

		<media:content url="http://www.jetbrains.net/confluence/download/attachments/31721/release_notes_use_var.png" medium="image" />

		<media:content url="http://www.jetbrains.net/confluence/download/attachments/31721/release_notes_use_object_initializer.png" medium="image" />

		<media:content url="http://www.jetbrains.net/confluence/download/attachments/31721/release_notes_completion_in_initializer.png" medium="image" />

		<media:content url="http://www.jetbrains.net/confluence/download/attachments/31721/release_notes_convert_to_autoproperty.png" medium="image" />

		<media:content url="http://www.jetbrains.net/confluence/download/attachments/31721/release_notes_sync_anonymous_types.png" medium="image" />

		<media:content url="http://www.jetbrains.net/confluence/download/attachments/31721/release_notes_convert_to_lambda.png" medium="image" />

		<media:content url="http://www.jetbrains.net/confluence/download/attachments/31721/GotoByNameResults.png" medium="image" />

		<media:content url="http://www.jetbrains.net/confluence/download/attachments/31721/release_notes_code_cleanup.png" medium="image" />

		<media:content url="http://www.jetbrains.net/confluence/download/attachments/31721/RecentEdits.png" medium="image" />

		<media:content url="http://www.jetbrains.net/confluence/download/attachments/31721/ToDoIdentifiers.png" medium="image" />

		<media:content url="http://www.jetbrains.net/confluence/download/attachments/31721/release_notes_new_folder.png" medium="image" />

		<media:content url="http://www.jetbrains.net/confluence/images/icons/linkext7.gif" medium="image" />
	</item>
		<item>
		<title>Framework Usage Patterns &#8211; Next Generation Software Engineering</title>
		<link>http://team.pushbomb.com/2008/04/14/framework-usage-patterns-next-generation-software-engineering/</link>
		<comments>http://team.pushbomb.com/2008/04/14/framework-usage-patterns-next-generation-software-engineering/#comments</comments>
		<pubDate>Tue, 15 Apr 2008 02:52:01 +0000</pubDate>
		<dc:creator>Damon Wilder Carr</dc:creator>
				<category><![CDATA[Software Factories]]></category>
		<category><![CDATA[Software Futures]]></category>
		<category><![CDATA[resharper]]></category>
		<category><![CDATA[dsl]]></category>
		<category><![CDATA[JetBrains]]></category>
		<category><![CDATA[Software Innovation]]></category>
		<category><![CDATA[Software Next Generation]]></category>

		<guid isPermaLink="false">http://dcarr.wordpress.com/?p=162</guid>
		<description><![CDATA[Language Oriented Programming or LOP is a novel software development approach which employs domain specific languages. A domain specific language is a language which is designed to deal with one specific kind of tasks within a specific domain. One of the patterns of LOP usage, namely "framework-usages" is discussed. <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=162&subd=dcarr&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.sergeydmitriev.com/mps/doc/article/article.html">http://www.sergeydmitriev.com/mps/doc/article/article.html</a></p>
<p> </p>
<p>This is fantastic stuff coming from one of my all-time favorite companies, JetBrains. Here is a start:</p>
<h1><span style="font-size:small;">Framework-usage pattern in MPS</span></h1>
<p><span style="font-size:xx-small;"><a href="mailto:Cyril.Konopko@jetbrains.com">Cyril Konopko</a>, <a href="mailto:Konstantin.Solomatov@jetbrains.com">Konstantin Solomatov</a> </span></p>
<p> </p>
<p> </p>
<div style="margin-top:50px;margin-left:100px;margin-right:100px;text-align:center;"><strong>Language Oriented Programming or LOP is a novel software development approach which employs domain specific languages. A domain specific language is a language which is designed to deal with one specific kind of tasks within a specific domain. One of the patterns of LOP usage, namely &#8220;framework-usages&#8221; is discussed. </strong></div>
<h2><a id="intro">Introduction</a></h2>
<p>Language Oriented Programming or LOP is a software development approach which employs domain specific languages, or DSLs for short. A domain specific language, in contrast to general purpose languages, is a language which is designed to deal with one specific kind of tasks or with several related task kinds within a specific domain. For example, SQL is a DSL in a domain of database queries. LOP solves your main problem by dividing it into several subproblems in different domains, then each subproblem is solved using an appropriate DSL. In rather big projects, LOP can reduce singificantly the amount of work which has to be done.</p>
<p>In this article we will speak about JetBrains MPS, being developed by JetBrains, Inc., which is a so-called &#8220;language workbench&#8221;, i.e. a tool that helps you to use LOP in practice. You can read more about language workbenches on <a href="http://www.martinfowler.com/articles/languageWorkbench.htm">Martin Fowler&#8217;s site</a> and about LOP in <a href="http://www.onboard.jetbrains.com/is1/articles/04/10/lop/">Sergey Dmitriev&#8217;s article</a>.</p>
<p>A lot of people who heard about MPS don&#8217;t realize how it&#8217;s possible to take advantage of it. The current state of MPS is far from the point where you can throw away your Java or C# IDE and start writing everything in MPS with LOP, however it&#8217;s possible to use LOP and simplify some tasks significantly today. Actually, you probably use in your current project some kind of poor man&#8217;s LOP, techniques which make it possible to create small sublanguages in the program written on a language like Java, C#, or Ruby (Martin Fowler called such sublanguages Internal DSLs). This article explains the pattern that can employ MPS in its current state, describes prevalent poor man&#8217;s LOP tricks and presents several examples of it.</p>
<h2>&#8230;.</h2>
<p> </p>
<p>Seriously, check this out. Download the EAP, start using&#8230;..</p>
<p> </p>
<p>Thanks,</p>
<p>Damon</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/dcarr.wordpress.com/162/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/dcarr.wordpress.com/162/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dcarr.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dcarr.wordpress.com/162/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dcarr.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dcarr.wordpress.com/162/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dcarr.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dcarr.wordpress.com/162/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dcarr.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dcarr.wordpress.com/162/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dcarr.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dcarr.wordpress.com/162/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=162&subd=dcarr&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://team.pushbomb.com/2008/04/14/framework-usage-patterns-next-generation-software-engineering/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b572cbcda5a17fe984e7dd1ddc9c3d6?s=96&#38;d=&#38;r=PG" medium="image">
			<media:title type="html">pushbomb</media:title>
		</media:content>
	</item>
		<item>
		<title>Why Mono Matters</title>
		<link>http://team.pushbomb.com/2008/02/02/why-mono-is-a-must-for-all-net-developers-now-for-planned-adoption/</link>
		<comments>http://team.pushbomb.com/2008/02/02/why-mono-is-a-must-for-all-net-developers-now-for-planned-adoption/#comments</comments>
		<pubDate>Sat, 02 Feb 2008 06:07:49 +0000</pubDate>
		<dc:creator>Damon Wilder Carr</dc:creator>
				<category><![CDATA[Software Futures]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[resharper]]></category>
		<category><![CDATA[Resharper]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Mono]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[JetBrains]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[intellij]]></category>
		<category><![CDATA[Rotor]]></category>

		<guid isPermaLink="false">http://dcarr.wordpress.com/?p=154</guid>
		<description><![CDATA[The love affair between the .NET community and business stakeholders is in an interesting phase. The business stakeholders have become far more mature in their understanding in software development while most Microsoft .NET developers have no plan to support cross-platform development. This could be a fatal blow as the domain experts now expect it due to initiatives like SOA and their is no real sense of need from the techies... Should be interesting. Here I go into more debt on the subject and why I believe it could be so damaging.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=154&subd=dcarr&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:right;"><a href="http://www.go-mono.com/" target="_blank"><img class="alignleft" style="border:0 none;margin:5px;" src="http://www.go-mono.com/docs/images/mono-logo.png" border="0" alt="w" hspace="5" vspace="5" width="97" height="115" align="left" /></a><span style="color:#999999;"><em>T</em><em>he</em><em> love a</em><em>ffair between the .NET community and business stakeholders is in an interesting phase. The business stakeholders have become far more mature in their understanding in software development while most Microsoft .NET </em><em>developers have no plan to support cross-platform development. This could be a fatal blow as the domain experts now expect it due to initiatives like SOA and their is no real sense of need from the techies&#8230; Should be interesting. Here I go into more debt on the subject and why I believe it could be so damaging.</em></span></p>
<p><span style="color:#999999;"><em></em></span></p>
<p style="text-align:left;"><span style="color:#999999;"><strong>Software Engineers (especially the .NET community due to their near ubiquitous refusal to support non-Microsoft aspects of their world) are entering what I have observed to be a disastrous collision which the ‘non-technical’ domain and business stakeholders. The cat is out of the bag that limitations such as this are almost always arbitrary, destructive, and based on human refusal to change. This is completely out of sync with trends now established in this decade and will not be allowed to play the common role of the past in a dramatic lowering of overall return on investment.</strong></span></p>
<div class="snap_preview"><span style="color:#999999;">We see things evolving as they so often do in maturing fields. The amazingly talented will benefit and move on to far greater success due to increased strategic and business alignment they provide as individuals. As I often lament our inability to carve a strategic place in an organization I do hope this happens as it appears it will.</span><span style="color:#999999;">One must also feel bad for the majority as they will be forced to almost completely retool in an education system that almost surely will not have prepared them. Once again, the software developers in the trenches closest to the front lines will be forced (if their job even exists at that point) to scurry either into the more relevant model or face finding a new line of work. Why should I say this now after being silent for so long (and even being precisely a person who believed other platforms could be ignored as ‘how much can one person master? I cannot be really good at two massive platforms’.Bottom line? The levels of separation between the business experts and technologists will not be around for long, and often exist due to legacy management unable to quantify the utter transformation this brings. </span></div>
<p class="snap_preview" style="text-align:left;"><span style="color:#999999;">It’s asking a lot but don’t think this is not already in every shop as anything more then the pain of the shift. The technology has worked for years and any market driven economy will certainly not accept 100-1000% waste lying down. When these trains collide be prepared by already mastering the items here or I believe you are putting your future at unnecessary risk. SOA and Domain-Driven Development: One more nail in the coffin of business/technology separation the first part of this decade we saw the unique focus on eliminating barriers between platforms and the views of the business experts and the technologists who must implement their vision. Both of these areas are quite disruptive and one could say key to solving the utter inability of software engineering to satisfy their stakeholder with high probability.I love that light is being shined into areas that many hide in under the excuse of ‘incompatible systems’ or ‘unreasonable expectations for both expertise in the technology AND business’. Any opportunities for professionals to be ignorant of their domain (and even not to be experts in a domain) are not diminishing and it is safe to say will soon be almost gone completely.</span></p>
<h2 class="snap_preview"><span style="color:#999999;">Reality Check</span></h2>
<h2 class="snap_preview"><span style="color:#999999;"><img class="alignright" src="http://dcarr.files.wordpress.com/2008/01/addin.png?w=520&#038;h=210" alt="addin.png" width="520" height="210" align="right" /></span></h2>
<p class="snap_preview"><span style="color:#999999;">Software engineering is empowered (perhaps for the first time at this level of real </span><span style="color:#999999;">value-added abstraction) to ignore </span><span style="color:#999999;">what previously occupied most of our days. This is no suprise as </span></p>
<p class="snap_preview"><span style="color:#999999;">we are defined by layers of abstraction.To be specific it is not acceptable to deliver solutions which are constrained by com</span></p>
<p class="snap_preview"><span style="color:#999999;">mon factors such </span><span style="color:#999999;">as database vendo</span><span style="color:#999999;">r, operating system, protocols, browser version, and all of the other technical reasons that often emerge and often deeply diminish the return on investment in software. After all what reason is there to resist your ability to maximize the benefits to people who use and benefit from your work? It’s your conscious decision to ignore areas where this posts make the case will potentially be fatal. </span></p>
<p class="snap_preview"><span style="color:#999999;">.NET professionals are just now being forced to do the common sense items that our <a href="http://www.answers.com/topic/java-programming-language?nafid=22" target="_blank">Java</a> compatriots understood years ago. I like both platforms and I do far more work in .NET, however let there be no doubt on the fact that compared to the Java world as a group we pale miserable on average. This is factual to the point of the reality of evolution and I am amazed at the (what always emerges) utter ignorance of the big picture by those who argue otherwise.</span></p>
<p class="snap_preview">
<p class="snap_preview" style="text-align:left;"><span style="color:#999999;">ALT.NET as a group is nothing more then group who collectively understands they know what is going on in our world, on what it means to be passionate and strive for amazing achievement in their work. No such group exists that I am aware of for any other platform NOR DOES IT NEED TO. Unfortunately .NET is bifurcated between the lost and the often amazing with a middle class that is growing.Although the initial shorter term rapid development benefits in .NET were great for the inexperienced managers who had no clue that pain would emerge soon, it’s now mature enough to prove the Java guys were right all along. The issue is the migrations have occured and nobody wants to eat their words.Luckily there is no need to as .NET is an amazing platform (as is the J2EE) however that pales in comparison to the handicap inherited by the available resources. No comparison,even if the platform has areas that are better any benefit is lost in the general limitation in the people. I hate this as much as anyone and spend much of my life tring to help fix this. What I have realized is all I am doing is helping to seperate the classes further.</span></p>
<p class="snap_preview">
<h3 class="snap_preview"><span style="color:#999999;"><a title="10.jpg" href="http://dcarr.files.wordpress.com/2008/01/10.jpg" target="_blank"><img src="http://dcarr.files.wordpress.com/2008/01/10.jpg?w=1024" alt="10.jpg" /></a></span></h3>
<div class="snap_preview"><strong><em><span style="color:#cca300;">A rare glimpse into the rarified world that is JetBrains (grin)<br />
Probably the most innovative company in software anywhere<br />
Who else has dominated so completely in both .NET and Java at the<br />
same time? They embody what this article is all about.</span></em></strong><strong><em><br />
</em></strong></div>
<p><strong><em></em></strong></p>
<h2 class="snap_preview"><span style="color:#999999;">Clearly now I can see with my new glasses</span></h2>
<p class="snap_preview"><span style="color:#999999;">In spite of decades of study, by necessity and the stated <a href="http://www.answers.com/topic/service-oriented-architecture?nafid=22" target="_blank">SOA</a> and Domain wok the blinders are off and bluffs are being called everywhere I look. A real understanding of ’sustainable’ architecture’ is finally a consideration and the fact that more people will increase your failure expectation. In additi</span></p>
<p class="snap_preview"><span style="color:#999999;">on expectations do not allow for the inability to adapt not only in key business inflections but also most conceivable technology inflections. Don’t box yourself into an inability to deliver at the ‘business leve’ full stop. In other words, if technical limitations such as an inability to support mono on <a href="http://www.answers.com/topic/linux?nafid=22" target="_blank">Linux</a> will be no more acceptable then flexibility in continual requirements modifications. Consider focusing NOW your ability to deliver BUSINESS value that has limited risk of interruption due to technical issues and/or incompatibilities. I am finalizing this section of the book so expect a super set to be there, however if lucky some ideas will be developed here (and I can credit people who offer guidance in their domain).Specifically this is about strategic/transformation projects with a foundation in software product line development (including SaaS and SOA as well as innovative reinvention of what software is and how it is sold, marketed, developed, and optimized), and other forms of software where the downsides are measured in lost jobs, dreams destroyed, and even human death.</span></p>
<h3 class="snap_preview"><span style="color:#999999;">Software fails far more then it succeeds by any metric<br />
</span></h3>
<p class="snap_preview"><span style="color:#999999;">However my point is not so much around this as ‘failure’ is arbitrary and definitions such as making budget, time, quality and scope are now laughably simple and irrelevant when software is often expected to REALLY be a meta-meta abstraction of itself, able to transform into whatever someone wants it to be. Why does this now exist in the face of continued failure and utter lack of predictability in most software development?I will raise a few here (and go deeper later) and frankly it is about ti</span><span style="color:#999999;">me non-technical stakeholders said ‘enough is enough’ even if their alternative are incredibly limited. After all, outsourcing is a failure except for now well understood areas. That being said, software teams on average are often too busy wallowing in the ‘operational overhead’ world of ‘no respect’ deliveries then being invigorated to fix themselves (which is all about human deficiencies not real limitations more then not).If there was ever a time to wake up and transform your entire world it is now. If there was a central theme then here it is this: Life will be getting much harder for even the best groups, and again statistics would show you are likely not one of them. Therefore, your challenges if action is not taken now could be fatal for the first time as alternatives are emerging that actually work to allow a CEO to fire his entire development shop. Outsourcing? Nah they all go away as the barriers between the business experts and the tangled technical experts is well into disappearing and will be almost certainly gone soon (a good thing for those of us who see the opportunity this presents).</span></p>
<h4 class="snap_preview"><span style="color:#999999;">Recent Factors that Changed Expectations : Don’t talk to me about non-business constraints</span></h4>
<p class="snap_preview"><span style="color:#999999;">No one can argue the effective and ubiquitous expectations using Domain focused development to minimize the barriers derived from software due to ‘pure technical constraints’. In other words nobody wants to hear that something is deeply broken due to reasons related to bits and bytes. That will not fly for much longer and frankly it almost always is due to inept and unmotivated teams refusing to make hard but common sense changes.I hear C-Level execs performing push-back and feeling emboldened to refuse to be ‘baffled by bull**it from a collection of quickly articulated acronyms).After all, enough is enough. No individual can be blamed to have reached the end of their tolerance for the nightmare most software teams inflict on all in their business stakeholders. Even amazing technical teams often fail due to an arrogant refusal to allow the business strategy to drive the solutions they develop. With the obvious exception of companies ‘in the business of software innovation. </span></p>
<p class="snap_preview">
<blockquote>
<p class="snap_preview" style="text-align:center;"><span style="color:#999999;"><strong>People forget that their technical brilliance means little if it is not aligned to the ‘measure of goodness’ defined by their stakeholders in the business.</strong><br />
</span></p></blockquote>
<p class="snap_preview">
<p class="snap_preview"><span style="color:#999999;">For example, Service Oriented Architecture eliminates waste in software due to eliminating the massive historic energy in system integration, high level strategic software asset reuse, full realization of return on investment in software as well as a common sense way to ‘make it work and don’t make excuses about technology I do not understand’.Another force is the acceptance and imperative around ‘domain driven’ teams, A main reason this is now a mandate?Why suffer by allowing technologists to refuse to master their domain? This is not viable for many reasons (although of course certain deep specializations will always exist). </span></p>
<p class="snap_preview"><span style="color:#999999;">Consider that the key areas which have transformed software are already set in stone, yet as is common only the minority leverages there utterly fundamental empowerments. Said another doing Object to Relational Mapping, leveraging the &#8216;Enterprise Architecture as a Commodity&#8217; and many key areas further creates a small upper class, an almost non-existent &#8216;upper class&#8217; and a &#8216;mass market&#8217; lower class which wallows in the muck of the past, continuing to fail their stakeholders as regularly as ever.</span></p>
<p class="snap_preview"><span style="color:#999999;">It is the pioners and amazing minds in the open source movement (especially the Castle Project, NHibernate, etc.) which have TAUGHT US what is possible, and there is no going back or denying that is real, installable and fully able to handle most of the most demanding requirements in an &#8216;inflective&#8217; manner (this includes but goes well beyond the elimination of code in favor of run-time configuration at the most fundamental levels).</span></p>
<h4 class="snap_preview">Continuing to ignore the shift required of all of us (yes you REALLY must forget ADO.NET for the most part, and that is a good thing) will get you fired in most top technology shops as it damn well should. After all this is not even close to ‘bleeding edge’ let alone ‘cutting edge’ anymore. If you fail to adapt you are stealing from your emploter, full stop (and it is your job to educate them more then not and no, you cannot say it&#8217;s not your job). If they want to be mediocre and cause your career to flounder LEAVE AND FIND A NEW JOB.</h4>
<p class="snap_preview"><span style="color:#999999;">But it&#8217;s not like I have an opinion (grin)&#8230;.. </span></p>
<p class="snap_preview"><span style="color:#999999;">With Respect,</span></p>
<p class="snap_preview"><span style="color:#999999;">Damon Wilder Carr</span></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/dcarr.wordpress.com/154/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/dcarr.wordpress.com/154/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dcarr.wordpress.com/154/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dcarr.wordpress.com/154/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dcarr.wordpress.com/154/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dcarr.wordpress.com/154/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dcarr.wordpress.com/154/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dcarr.wordpress.com/154/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dcarr.wordpress.com/154/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dcarr.wordpress.com/154/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dcarr.wordpress.com/154/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dcarr.wordpress.com/154/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=154&subd=dcarr&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://team.pushbomb.com/2008/02/02/why-mono-is-a-must-for-all-net-developers-now-for-planned-adoption/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b572cbcda5a17fe984e7dd1ddc9c3d6?s=96&#38;d=&#38;r=PG" medium="image">
			<media:title type="html">pushbomb</media:title>
		</media:content>

		<media:content url="http://www.go-mono.com/docs/images/mono-logo.png" medium="image">
			<media:title type="html">w</media:title>
		</media:content>

		<media:content url="http://dcarr.files.wordpress.com/2008/01/addin.png" medium="image">
			<media:title type="html">addin.png</media:title>
		</media:content>

		<media:content url="http://dcarr.files.wordpress.com/2008/01/10.jpg" medium="image">
			<media:title type="html">10.jpg</media:title>
		</media:content>
	</item>
		<item>
		<title>Fix for EnvDTE Bug in Versioning &#8211; Visual Studio Extensibility Common Issue Fix</title>
		<link>http://team.pushbomb.com/2007/12/22/visual-studio-automation-and-extensibility/</link>
		<comments>http://team.pushbomb.com/2007/12/22/visual-studio-automation-and-extensibility/#comments</comments>
		<pubDate>Sat, 22 Dec 2007 20:57:09 +0000</pubDate>
		<dc:creator>Damon Wilder Carr</dc:creator>
				<category><![CDATA[Software Design]]></category>
		<category><![CDATA[Software Factories]]></category>
		<category><![CDATA[resharper]]></category>
		<category><![CDATA[EnvDTE]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[VSLangProj]]></category>

		<guid isPermaLink="false">http://dcarr.wordpress.com/2007/12/22/here-is-a-good-gotcha-that-some-have-not-found-yet/</guid>
		<description><![CDATA[If you create a project that references one or more of the VSLangProj assemblies and the EnvDTE assembly, you can occasionally get the following error at runtime:“Unhandled Exception: System.IO.FileNotFoundException: Error while loading file ‘EnvDTE, Version=7.0.3300.0″This error is due to a runtime type resolution conflict. That is, the version of EnvDTE that is included with Visual Studio 2005 is 8.0.xx, but the project’s configuration reference is looking for an earlier version of this assembly, version 7.0.xx. To fix this problem, you must add a binding redirect for the newer version of EnvDTE to your project’s configuration (.config) file. This will enable Visual Studio to load the newer version of EnvDTE and prevent the error from occurring.To do this, add an “Application Configuration File” to your project and then replace its contents with the following:<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=108&subd=dcarr&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class="snap_preview">
<p align="left">This is known by many who have been doing VSX for a while, but I ran into it again recently and thought since many are no getting into this fresh, more sources are good.</p>
<p align="left"> </p>
<div class="majorTitle">
<h2>Visual Studio Automation and Extensibility</h2>
</div>
</div>
<div class="title">
<h4><a href="http://msdn2.microsoft.com/en-us/library/ms228768.aspx">Error When EnvDTE Is Used with VSLangProj Assemblies</a></h4>
</div>
<div class="introduction">If you create a project that references one or more of the VSLangProj assemblies and the EnvDTE assembly, you can occasionally get the following error at <a href="http://www.answers.com/topic/runtime?nafid=22">runtime</a>:</div>
<blockquote>
<div class="introduction"><strong>“Unhandled Exception: System.IO.FileNotFoundException: Error while loading file ‘EnvDTE, Version=7.0.3300.0″</strong></div>
</blockquote>
<div class="introduction">This error is due to a runtime type resolution conflict. That is, the version of EnvDTE that is included with Visual Studio 2005 is 8.0.xx, but the project’s <a href="http://www.answers.com/topic/configuration?nafid=22">configuration</a> reference is looking for an earlier version of this assembly, version 7.0.xx.</div>
<div class="introduction">To fix this problem, you must add a binding redirect for the newer version of EnvDTE to your project’s configuration (.config) file. This will enable Visual Studio to load the newer version of EnvDTE and prevent the error from occurring.To do this, add an “Application Configuration File” to your project and then replace its contents with the following:This error occurs only if you are building an <a href="http://www.answers.com/topic/extendicare-inc?nafid=22">EXE</a>, since <a href="http://www.answers.com/topic/data-link-layer?nafid=22">DLL</a>’s do not have config files.</div>
<p> </p>
<pre>&lt;configuration&gt;</pre>
<pre>&lt;runtime&gt;</pre>
<pre>&lt;assemblyBinding xmlns="urn:schemas-microsoft- com:asm.v1"</pre>
<pre>appliesTo="v2.0.50318"&gt;</pre>
<pre>&lt;dependentAssembly&gt;</pre>
<pre>&lt;assemblyIdentity name="EnvDTE" publicKeyToken= "b03f5f7f11d50a3a"/&gt;</pre>
<pre>&lt;bindingRedirect oldVersion="7.0.3300.0" newVersion="8.0.0.0"/&gt;</pre>
<pre>&lt;/dependentAssembly&gt;</pre>
<pre>&lt;/assemblyBinding&gt;</pre>
<pre>&lt;/runtime&gt;</pre>
<pre>&lt;/configuration&gt;</pre>
<p> </p>
<p align="center"><a href="http://dcarr.files.wordpress.com/2007/12/techsmithword0a1.png"></a></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/dcarr.wordpress.com/108/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/dcarr.wordpress.com/108/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dcarr.wordpress.com/108/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dcarr.wordpress.com/108/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dcarr.wordpress.com/108/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dcarr.wordpress.com/108/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dcarr.wordpress.com/108/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dcarr.wordpress.com/108/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dcarr.wordpress.com/108/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dcarr.wordpress.com/108/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dcarr.wordpress.com/108/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dcarr.wordpress.com/108/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=108&subd=dcarr&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://team.pushbomb.com/2007/12/22/visual-studio-automation-and-extensibility/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b572cbcda5a17fe984e7dd1ddc9c3d6?s=96&#38;d=&#38;r=PG" medium="image">
			<media:title type="html">pushbomb</media:title>
		</media:content>
	</item>
		<item>
		<title>ReSharper 3.1 Release Notes</title>
		<link>http://team.pushbomb.com/2007/12/21/resharper-31-release-notes/</link>
		<comments>http://team.pushbomb.com/2007/12/21/resharper-31-release-notes/#comments</comments>
		<pubDate>Fri, 21 Dec 2007 23:00:05 +0000</pubDate>
		<dc:creator>Damon Wilder Carr</dc:creator>
				<category><![CDATA[resharper]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[DotNet]]></category>
		<category><![CDATA[Refactoring]]></category>
		<category><![CDATA[Resharper]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[Visual Studio 2008]]></category>
		<category><![CDATA[VS2008]]></category>

		<guid isPermaLink="false">http://dcarr.wordpress.com/2007/12/21/resharper-31-release-notes/</guid>
		<description><![CDATA[
Today JetBrains released the final version before 4.0 comes out it appears. Here are all the goodies.They got to some REALLY nice ones&#8230;
 Has anyone else struggled with the VS Debugger treating the ReSharper assemblies as if they were &#8216;user code&#8217;?

Overview 
Features 
Docs and Demos 
Download 
Licensing &#38; Upgrade 


ReSharper 3.1 

Complete List of 3.1 Release [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=103&subd=dcarr&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p><img src="http://dcarr.files.wordpress.com/2007/12/smile19.gif?w=1024" /></p>
<p>Today JetBrains released the final version before 4.0 comes out it appears. Here are all the goodies.They got to some REALLY nice ones&#8230;</p>
<p align="center"><font size="5"></font><font size="3"></font><font color="#ff0000"> <strong>Has anyone else struggled with the VS Debugger treating the ReSharper assemblies as if they were &#8216;user code&#8217;?<font color="#000000"></font></strong></font></p>
<ul>
<li><a href="http://www.jetbrains.com/resharper/index.html">Overview</a> </li>
<li><a href="http://www.jetbrains.com/resharper/features/index.html">Features</a> </li>
<li><a href="http://www.jetbrains.com/resharper/documentation/index.html">Docs and Demos</a> </li>
<li><a href="http://www.jetbrains.com/resharper/download/index.html">Download</a> </li>
<li><a href="http://www.jetbrains.com/resharper/buy/index.html">Licensing &amp; Upgrade</a> </li>
</ul>
<ul>
<li><a href="http://www.jetbrains.com/resharper/index.html">ReSharper 3.1</a> </li>
</ul>
<p>Complete List of 3.1 Release Notes</p>
<p><a href="http://www.jetbrains.com/resharper/releaseNotes31.html#Bug-fixes">Bug-fixes</a> <a href="http://www.jetbrains.com/resharper/releaseNotes31.html#Exception">Exception</a> <a href="http://www.jetbrains.com/resharper/releaseNotes31.html#PerformanceProblem">Performance Problem</a> <a href="http://www.jetbrains.com/resharper/releaseNotes31.html#UsabilityProblem">Usability Problem</a> </p>
<p><a href="http://www.jetbrains.com/resharper/releaseNotes31.html#Cosmetics">Cosmetics</a> <a href="http://www.jetbrains.com/resharper/releaseNotes31.html#NewFeature">New Feature</a> <a href="http://www.jetbrains.com/resharper/releaseNotes31.html#Task">Task</a> </p>
<h4>Bug-fixes</h4>
<ul>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-18041">RSRP-18041</a>] &#8211; Incorrect message &#8220;Cannot resolve symbol &#8216;Bind&#8217;&#8221; </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-30232">RSRP-30232</a>] &#8211; Solution analysis progress should be hidden, when user disables analysis when progress is shown </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-33809">RSRP-33809</a>] &#8211; False error report: cannot convert source type &#8217;string&#8217; to target type &#8216;byte?&#8217; </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-35188">RSRP-35188</a>] &#8211; Solution-wide error analysis does not proceed .xaml files </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-35849">RSRP-35849</a>] &#8211; Operator resolve problem [equality operator for lifted bool] </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-36350">RSRP-36350</a>] &#8211; Bad nullable management </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-38275">RSRP-38275</a>] &#8211; Errors view: multiline error messages are drawn incorrectly </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-38667">RSRP-38667</a>] &#8211; Go to Next/Prev error in solution: do not show &#8220;No errors found in solution&#8221; when analysis in progress </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-41475">RSRP-41475</a>] &#8211; Solution Analysis should use delayed control creation &#8211; ErrorsViewControl takes 5% of solution load time </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-43079">RSRP-43079</a>] &#8211; VB property return value assignment resolve problem </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-44587">RSRP-44587</a>] &#8211; SWA: Changes in Delegate Signature -&gt; Event Subscriptions Not Checked </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-44590">RSRP-44590</a>] &#8211; SWA: Changes in Event Type -&gt; Event Subscriptions Not Checked </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-44591">RSRP-44591</a>] &#8211; Hightlight expression usages does not work for delegate creation expression </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-44592">RSRP-44592</a>] &#8211; Hightlight expression usages does not work for cast expression </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-44985">RSRP-44985</a>] &#8211; [VB] Assignment operator like += should have reference </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-46385">RSRP-46385</a>] &#8211; ASP ApplicationInstance property is not generated </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-46530">RSRP-46530</a>] &#8211; web.config file added to the website is not processed by ReSharper unless website is reloaded </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-46996">RSRP-46996</a>] &#8211; XAML Import popup in {x:Type xxx} works incorrectly </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-46997">RSRP-46997</a>] &#8211; XAML resources referenced by key </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-46998">RSRP-46998</a>] &#8211; XAML TemplateBinding without an attribute name </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-47104">RSRP-47104</a>] &#8211; ParameterInfo shouldn&#8217;t consume TAB strokes in case there is only one or two arguments in the invocation </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-47244">RSRP-47244</a>] &#8211; SWA: &#8220;DLL Not Referenced&#8221; Error Is Not ReChecked After Adding a Reference </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-47451">RSRP-47451</a>] &#8211; Code completion in aspx inserts erroneous text </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-47475">RSRP-47475</a>] &#8211; Implement members: wrapping into regions generates regions into wrong places!! </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-47555">RSRP-47555</a>] &#8211; Extract interface -&gt; wrong interface is suggested to be used </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-47694">RSRP-47694</a>] &#8211; SafeDelete removes &#8217;set&#8217; property accessor that has usages </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-47991">RSRP-47991</a>] &#8211; SWA: Upon an Exception in the Daemon, the Analysis Never Stops </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-48015">RSRP-48015</a>] &#8211; &#8220;Go To Definition&#8221; for System.Collections.Generic.Dictionary.TryGetValue() selects the namespace, not the method </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-48132">RSRP-48132</a>] &#8211; &#8216;Find Dependent Code&#8217; is disabled for projects in a simple solution </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-48265">RSRP-48265</a>] &#8211; String formatting methods persistence doesn&#8217;t work </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-48529">RSRP-48529</a>] &#8211; Generate Implementation @VB: Does Not Expand Generic Parameters </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-48651">RSRP-48651</a>] &#8211; Go to next error doesn&#8217;t work inside file, when SWEA is turned off </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-48806">RSRP-48806</a>] &#8211; ReSharper resolves symbol to a class while C# compiler resolves that symbol to property </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-49306">RSRP-49306</a>] &#8211; error CS0165: Use of unassigned local variable &#8216;z&#8217; </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-49307">RSRP-49307</a>] &#8211; error CS0221: Constant value &#8216;-1&#8242; cannot be converted to a &#8216;byte&#8217; (use &#8216;unchecked&#8217; syntax to override) </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-49309">RSRP-49309</a>] &#8211; &#8216;checked&#8217; statements are not taken into account during constant expression evaluation </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-49325">RSRP-49325</a>] &#8211; [SWEA] Adding of private constructor to class A does not invalidate &#8216;new A( )&#8217; expressions in other files </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-49532">RSRP-49532</a>] &#8211; Suggestions are no longer considered by Go To Next Highlight </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-49587">RSRP-49587</a>] &#8211; &#8220;String Formatting Methods&#8221; settings are not persisted across restarts </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-49637">RSRP-49637</a>] &#8211; Turning solution analysis off does not clear &#8220;x files with errors&#8221; and Errors view </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-49865">RSRP-49865</a>] &#8211; Solution analysis: support openning one solution by multiple instances of VS </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50146">RSRP-50146</a>] &#8211; In build 532, Resharper does not highlight wrong arguments in format string in string.Format </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50195">RSRP-50195</a>] &#8211; Refactorings: it always says that changes in conflicts detected when I try to ignore conflicts! </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50233">RSRP-50233</a>] &#8211; UI meshing (see picture) </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50319">RSRP-50319</a>] &#8211; Quick fix &#8216;Change Signature of the Base Method&#8217; doesn&#8217;t open the base type in the editor </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50349">RSRP-50349</a>] &#8211; Custom String Formatting Methods are not persisted between Resharper installations </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50554">RSRP-50554</a>] &#8211; Doesn&#8217;t recognize standart XAML keywords (see picture) </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50559">RSRP-50559</a>] &#8211; Not all usages of property setter found </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50607">RSRP-50607</a>] &#8211; Solution analysis does not reanalyze necessary files when adding abstract member implementation </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50650">RSRP-50650</a>] &#8211; Solution analysis: drop all data structures from memory on disabling </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50739">RSRP-50739</a>] &#8211; Generate ctor in vb doesn&#8217;t consider base type&#8217;s ctors </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50742">RSRP-50742</a>] &#8211; Delegating properties in VB is broken </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50751">RSRP-50751</a>] &#8211; Create Property from usage doesn&#8217;t work when Property is defined in VB and usage is in C# </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50752">RSRP-50752</a>] &#8211; QF to change property parameter type doesn&#8217;t work from C# when property is declared in VB </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50827">RSRP-50827</a>] &#8211; Quotes autoinsertion doesn&#8217;t work in VB </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50869">RSRP-50869</a>] &#8211; TypeIndex is rebuilt on each LoadAssemblies, thus useless when plugins are installed </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50905">RSRP-50905</a>] &#8211; Solution analysis crashes when using &#8220;Clear Caches&#8221; button </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51047">RSRP-51047</a>] &#8211; ReSharper is unable to parse russian stacktrace </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51121">RSRP-51121</a>] &#8211; XAML::VB: Caps and Underscore in Error Text </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51139">RSRP-51139</a>] &#8211; Global analysis page layout is bad under Vista </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51188">RSRP-51188</a>] &#8211; Overrides are not recognized in VB when signature of base method (in c#) contians &#8216;out&#8217; parameters. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51214">RSRP-51214</a>] &#8211; Refactor -&gt; Safe Delete -&gt; delete parameter from method without checking for usages (C# &amp; VB.NET) </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51221">RSRP-51221</a>] &#8211; VS seems to fail if it is being closed while solution analisys is running </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51317">RSRP-51317</a>] &#8211; VB: Implement on an Interface in the Implements List: Lists Accessor Methods for Properties, Which Throws If Selected </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51363">RSRP-51363</a>] &#8211; Completion in ASP inserts bogus parenthesis </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51382">RSRP-51382</a>] &#8211; ReSharper cannot load solution is on RO drive (caches loading hangs) </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51388">RSRP-51388</a>] &#8211; Generate::Implement::VB: &#8220;Implement Via&#8221; Column Is Always Empty </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51469">RSRP-51469</a>] &#8211; &#8220;OK&#8221; in options dialog dosn&#8217;t save solution-level settings </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51548">RSRP-51548</a>] &#8211; Unit Test Session shows time [5:43.30001] that is consfusing! </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51569">RSRP-51569</a>] &#8211; Publisher policy should be installed during upgrade </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51577">RSRP-51577</a>] &#8211; CA::VB::IterateCollForeach: Not Available on some Strings </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51579">RSRP-51579</a>] &#8211; CA::VB::ForeachToFor: Restore Missing Method Call Parens When Adding Array Index Parens </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51626">RSRP-51626</a>] &#8211; Bug in VB parser </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51716">RSRP-51716</a>] &#8211; CA::VB::IntroduceVar: Should Place a HotSpot on the Type </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51733">RSRP-51733</a>] &#8211; TypeCompletion::VB: Add Square Brackets When Conflicting with Keywords </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51736">RSRP-51736</a>] &#8211; ChangeSIgnature::VB: Fails on Writable Properties </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51738">RSRP-51738</a>] &#8211; SmartCompletion::VB: Does Not Include &#8220;Nothing&#8221; When Appropriate </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51760">RSRP-51760</a>] &#8211; &#8220;On Error Goto Label&#8221; should be handled in control flow </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51769">RSRP-51769</a>] &#8211; IntroVar::VB: Should Remove the Original Expression When Just Creating a Declaration </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51783">RSRP-51783</a>] &#8211; CA::VB::CreateFromUsage: Invalid Access Modifiers </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51819">RSRP-51819</a>] &#8211; CA::VB::CreateFromUsage: &#8220;Create Method&#8221; Kills Suggested Names As Executing the LiveTemplate </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51820">RSRP-51820</a>] &#8211; LiveTemplates::VB::TypeCompletionMacro Doesn&#8217;t Work </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51821">RSRP-51821</a>] &#8211; CA::VB::ImplementMembers: Fails on Events </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51823">RSRP-51823</a>] &#8211; CA::VB::CreateFromUsage: &#8220;Create Method&#8221; Fails Where a Typed Delegate Is Expected </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51824">RSRP-51824</a>] &#8211; CA::VB::CreateFromUsage: &#8220;Create Class&#8221; Fails to Set the Correct Access Modifier </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51867">RSRP-51867</a>] &#8211; CA::VB::Implement: &#8220;Copy Documentation Comments&#8221; CheckBox Does Not Work </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51874">RSRP-51874</a>] &#8211; CA::VB::ForeachToFor: Fails on 2D Arrays </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51877">RSRP-51877</a>] &#8211; CA::VB::SplitDeclaration: Should Be Available on the Assignment Operator </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51878">RSRP-51878</a>] &#8211; VB::MoveStatementOut: Eats the Statement Being Moved Out of &#8220;Case&#8221; </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51888">RSRP-51888</a>] &#8211; Refac::VB::IntroduceVar: Fails to Suppress PrettyListing </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51922">RSRP-51922</a>] &#8211; Expand selection in ASP.NET strings (attribute values) should select text without quotes if invoked right before closing quote </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51936">RSRP-51936</a>] &#8211; Default &#8220;sub&#8221; template should have parenthesis after $NAME$ </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51938">RSRP-51938</a>] &#8211; IntroduceVariable::VB: Fails to Infer the Type in an Obvious Case </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51979">RSRP-51979</a>] &#8211; CA::VB::IfToSwitch: Don&#8217;t Create CaseElse If There Were no Unconditional Else </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-52027">RSRP-52027</a>] &#8211; Uncomment block in VB cause exception and breaks code </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-52099">RSRP-52099</a>] &#8211; Move type to namespace in XAML VB does not take default namespace into account </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-52162">RSRP-52162</a>] &#8211; Cannot resolve symbols &#8220;DataItem&#8221; error inside &lt;%# block </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-52252">RSRP-52252</a>] &#8211; Create method from usage doesn&#8217;t select method body at the end </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-52425">RSRP-52425</a>] &#8211; Does not recognize LINQ syntax </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-52560">RSRP-52560</a>] &#8211; Wrong result for Alt+Enter context action </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-52638">RSRP-52638</a>] &#8211; ErrorInfo seem to be loaded, even if SWEA is off </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-52899">RSRP-52899</a>] &#8211; SWEA doesn&#8217;t recognize hierarchy dependencies when renaming interface member </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-52939">RSRP-52939</a>] &#8211; Solution Settings Are Not Saved upon Closing Solution / Exiting VS </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-53127">RSRP-53127</a>] &#8211; &#8220;Analyzing changes&#8221; animated icon in errors view should not include background from statusbar </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-53328">RSRP-53328</a>] &#8211; SWEA errors view: files with error are not shown </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-53420">RSRP-53420</a>] &#8211; ReSharper 3.1 doesn&#8217;t upgrade from ReSharper 3.0 settings </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-53444">RSRP-53444</a>] &#8211; Solution analysis should be removed from VB edition </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-53493">RSRP-53493</a>] &#8211; CLONE -Cannot resolve symbol &#8216;onclick&#8217; on asp.net controls </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-53750">RSRP-53750</a>] &#8211; R# overrides parameter info in Visual Studio IntelliSense </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-53784">RSRP-53784</a>] &#8211; Errors view: popup menu resets multiselection </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-53846">RSRP-53846</a>] &#8211; VS 2008 halt down during editing hex value of &#8220;color&#8221; property in css file </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-53948">RSRP-53948</a>] &#8211; Unit Testing from derived type. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-54074">RSRP-54074</a>] &#8211; Errors view: errors inside file are not sorted </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-54076">RSRP-54076</a>] &#8211; Exception </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-54155">RSRP-54155</a>] &#8211; Editing CSS Files Crashes VS 2008 </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-54199">RSRP-54199</a>] &#8211; Extract Interface suggest Object instead of the Interface for replacing the usings. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-54258">RSRP-54258</a>] &#8211; incorretly analyze soultion with errors in XAML files </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-54879">RSRP-54879</a>] &#8211; IDE crashes with R# and BlackBerry plugin </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-54919">RSRP-54919</a>] &#8211; Disabling SWEA or even closing solution does not release SWEA caches for this solution </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-54958">RSRP-54958</a>] &#8211; In build 583 all ReSharper menu items are disabled in both VS 2005 and 2008. Completion and highlighting do not work. </li>
</ul>
<h4>Cosmetics</h4>
<ul>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-48928">RSRP-48928</a>] &#8211; &#8220;SWEA is off. Click for options&#8221;. But click does not work. Double-click is needed. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-49729">RSRP-49729</a>] &#8211; ErrorsView: Use Standard Icon for Options </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-49730">RSRP-49730</a>] &#8211; ErrorsView: SkipFile Should Be Green Not Red </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-50200">RSRP-50200</a>] &#8211; Precompose the SWA Indicator Before Blitting to the Screen </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51228">RSRP-51228</a>] &#8211; SWA ErrorsView: &#8220;Checking for Changes&#8230;&#8221; Section Heading Should not Have the Ellipsis </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51691">RSRP-51691</a>] &#8211; SWEA options: Add/Remove buttons should have accelerators </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-51694">RSRP-51694</a>] &#8211; SWEA status is displaying conflicting information </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-54716">RSRP-54716</a>] &#8211; Visual Studio splash still displays 3.0.3 EAP instead of 3.1 RC </li>
</ul>
<h4>Exception</h4>
<ul>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-30299">RSRP-30299</a>] &#8211; Duplicating record in solution analisys dependencies cache </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-31523">RSRP-31523</a>] &#8211; Duplicating record in word index cache </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-31661">RSRP-31661</a>] &#8211; Duplicating record in TODO cache </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-37559">RSRP-37559</a>] &#8211; Untested case : /// &lt;summary&gt; </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-38509">RSRP-38509</a>] &#8211; Duplicating record in file images cache </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/RSRP-39411">RSRP-39411</a>] &#8211; Untested case : __ReSharper_Property_Binder__( __TEMP_f119d676_b23d_4bd4_b0c3_72c4c577b50f,@&#8221;OnItemDataBound&#8221;,@&amp;q uot;changeCategoryList_ItemDataBound&#8221; ) </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-40633">RSRP-40633</a>] &#8211; Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-41117">RSRP-41117</a>] &#8211; PsiManager is null in write action! </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-42405">RSRP-42405</a>] &#8211; One layouter of the ParameterInfo kind has already been created over this text control, and it is still active. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-43032">RSRP-43032</a>] &#8211; Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-45359">RSRP-45359</a>] &#8211; Project root does not belong to the project </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-45427">RSRP-45427</a>] &#8211; Offset/Line transformation failed: Line is &#8216; &lt;input type=&#8221;button&#8221; id=&#8221;m_buttonDeclineWithdrawal&#8221; onclick=&#8221;window.location=&#8217;./Page.aspx?pgtid=3&#8242;&#8221; value=&#8221;&lt;%=CancelText%&gt;&#8221; class=&#8221;AppButtons&#8221; /&gt;&#8217;, coords: (91,4), line range: (5166,5320), text ran </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-45587">RSRP-45587</a>] &#8211; Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-45687">RSRP-45687</a>] &#8211; Project root does not belong to the project </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-46063">RSRP-46063</a>] &#8211; at DocumentManagerImpl.GetDocument : Attempted to retrieve document for invalid project file </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-46084">RSRP-46084</a>] &#8211; Unknown comment! &#8217;s doch gar nicht. ;-) </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-46337">RSRP-46337</a>] &#8211; at VSSolutionManager.&lt;UpdateSolution_Done&gt;b__1d : CurrentSolution != null </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-46596">RSRP-46596</a>] &#8211; at CSharpExtractMethodFactory.GetStatementsRange : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-47222">RSRP-47222</a>] &#8211; JetBrains.Util.InternalErrorException: The indicator &#8220;JetBrains.ReSharper.Daemon.Impl.SolutionAnalysis.UI.Indicator.StatusBa rIndicatorControl&#8221; [...] desired size {Width=127, Height=21} does not respect the limit {Width=126, Height=21}. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-47321">RSRP-47321</a>] &#8211; at ThrowHelper.ThrowInvalidOperationException : Collection was modified; enumeration operation may not execute. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-47349">RSRP-47349</a>] &#8211; at ParameterInfoControl.LayoutControls : MaxWidth must be positive </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-47436">RSRP-47436</a>] &#8211; at CommonDataRules.DocumentToReferenceRule : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-47460">RSRP-47460</a>] &#8211; Culture name &#8216;n&#8217; is not supported. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-47478">RSRP-47478</a>] &#8211; at ThrowHelper.ThrowKeyNotFoundException : The given key was not present in the dictionary. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-47508">RSRP-47508</a>] &#8211; Collection was modified; enumeration operation may not execute. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-47635">RSRP-47635</a>] &#8211; at DocumentManagerImpl.GetDocument : Attempted to retrieve document for invalid project file </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-47688">RSRP-47688</a>] &#8211; at LowLevelModificationUtil.GetManager : PsiManager is null in write action! </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-47698">RSRP-47698</a>] &#8211; range.EndOffset should not break CR-LF </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-47830">RSRP-47830</a>] &#8211; !typeDeclaration.IsValid() </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-47896">RSRP-47896</a>] &#8211; at VisualStyleRenderer.IsCombinationDefined : Visual Styles-related operation resulted in an error because no visual style is currently active. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-47935">RSRP-47935</a>] &#8211; at TreePresenter.PresentFile : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-47959">RSRP-47959</a>] &#8211; at ProjectFileWrapper.UpdateTimeStamp : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-47963">RSRP-47963</a>] &#8211; at Daemon.GetInstance : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48080">RSRP-48080</a>] &#8211; at StringBuilder.Append : Index was out of range. Must be non-negative and less than the size of the collection. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48103">RSRP-48103</a>] &#8211; at DocumentManagerImpl.GetDocument : Attempted to retrieve document for invalid project file </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48267">RSRP-48267</a>] &#8211; alt + ins create a contructor </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48304">RSRP-48304</a>] &#8211; at DocumentManagerImpl.GetDocument : Attempted to retrieve document for invalid project file </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48326">RSRP-48326</a>] &#8211; at DeclaredElementPointer.FindDeclaredElement : Documents are not committed when trying to restore IDeclaredElement from pointer. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48402">RSRP-48402</a>] &#8211; at DocumentManagerImpl.GetDocument : Attempted to retrieve document for invalid project file </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48502">RSRP-48502</a>] &#8211; at VisualStyleRenderer.IsCombinationDefined : Visual Styles-related operation resulted in an error because no visual style is currently active. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48566">RSRP-48566</a>] &#8211; at Control.get_Handle : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48582">RSRP-48582</a>] &#8211; at DocumentManagerImpl.GetDocument : Attempted to retrieve document for invalid project file </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48625">RSRP-48625</a>] &#8211; at DocumentManagerImpl.GetDocument : Attempted to retrieve document for invalid project file </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48636">RSRP-48636</a>] &#8211; at ProjectImpl.RemoveProjectRoot : Project root does not belong to the project </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48675">RSRP-48675</a>] &#8211; at ThrowHelper.ThrowKeyNotFoundException : The given key was not present in the dictionary. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48732">RSRP-48732</a>] &#8211; at DocumentManagerImpl.GetDocument : Attempted to retrieve document for invalid project file </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48741">RSRP-48741</a>] &#8211; at MethodDeclarationBase.CalculateHashInternal : Das Objekt des Typs JetBrains.ReSharper.Psi.VB.Impl.Tree.ExternalMethodDeclaration kann nicht in Typ JetBrains.ReSharper.Psi.VB.Tree.IMethodDeclarationNode umgewandelt werden. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48762">RSRP-48762</a>] &#8211; at ProjectImpl.RemoveProjectRoot : Project root does not belong to the project </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48776">RSRP-48776</a>] &#8211; exception in Re# (VS 2005) </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48780">RSRP-48780</a>] &#8211; at VSTypeBrowser.GetLibNameForVB : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48803">RSRP-48803</a>] &#8211; at DocumentManagerImpl.GetDocument : Attempted to retrieve document for invalid project file </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48818">RSRP-48818</a>] &#8211; at ProjectImpl.RemoveProjectRoot : Project root does not belong to the project </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48834">RSRP-48834</a>] &#8211; at SolutionAnalysisIndicatorWrapper.&lt;SetNonIdle&gt;b__8 : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48923">RSRP-48923</a>] &#8211; at PsiManager.PsiFile : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48935">RSRP-48935</a>] &#8211; at String.CtorCharArrayStartLength : Exception of type &#8216;System.OutOfMemoryException&#8217; was thrown. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-48984">RSRP-48984</a>] &#8211; at DocumentManagerImpl.GetDocument : Attempted to retrieve document for invalid project file </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-49051">RSRP-49051</a>] &#8211; at DstRangeRemovedAction..ctor : Expected 1 token, found: 5. Removed text: [__ReSharperSynthetic] </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-49112">RSRP-49112</a>] &#8211; at ThrowHelper.ThrowInvalidOperationException : Collection was modified; enumeration operation may not execute. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-49220">RSRP-49220</a>] &#8211; at DocumentManagerImpl.GetDocument : Attempted to retrieve document for invalid project file </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-49272">RSRP-49272</a>] &#8211; Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-49384">RSRP-49384</a>] &#8211; at DocumentManagerImpl.GetDocument : Attempted to retrieve document for invalid project file </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-49391">RSRP-49391</a>] &#8211; at ProjectFileWrapper.RestoreProjectFile : !myProjectFile.IsValid </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-49646">RSRP-49646</a>] &#8211; at DocumentManagerImpl.GetDocument : Attempted to retrieve document for invalid project file </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-49663">RSRP-49663</a>] &#8211; at TextControlToPsi.GetSourceTokenAtCaret : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-49894">RSRP-49894</a>] &#8211; Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-49911">RSRP-49911</a>] &#8211; Reformat code &#8211; Reorder type members &#8211; Exception thrown </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-49950">RSRP-49950</a>] &#8211; at ThrowHelper.ThrowArgumentNullException : Value cannot be null. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50060">RSRP-50060</a>] &#8211; at Resolver.get_ProcessingIsFinished : Exception of type &#8216;JetBrains.Shell.Progress.ProcessCancelledException&#8217; was thrown. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50175">RSRP-50175</a>] &#8211; JetBrains.Util.InternalErrorException: typeElement.IsValid() </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50190">RSRP-50190</a>] &#8211; End offset should be less or equal then text length </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50205">RSRP-50205</a>] &#8211; at Path.CheckInvalidPathChars : Illegal characters in path. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50209">RSRP-50209</a>] &#8211; at ThrowHelper.ThrowArgumentOutOfRangeException : Index was out of range. Must be non-negative and less than the size of the collection. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50223">RSRP-50223</a>] &#8211; at ContextTracker..ctor : textRange.StartOffset &lt;= textControl.CaretModel.Offset </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50254">RSRP-50254</a>] &#8211; at ModificationUtil.CreateCopy : node.IsValid() </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50255">RSRP-50255</a>] &#8211; at CSharpExpressionBase.CompileTimeConstantValue : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50353">RSRP-50353</a>] &#8211; at Gdip.GdipDrawImageRectI : Attempted to read or write protected memory. This is often an indication that other memory is corrupt. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50480">RSRP-50480</a>] &#8211; at SkipFileAction.Execute : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50501">RSRP-50501</a>] &#8211; at SolutionAnalysisManager.GetFilesToAnalyze : Condition (!HasChangesToFlush) is false </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50604">RSRP-50604</a>] &#8211; JetBrains.Util.InternalErrorException: range.EndOffset &gt; textLength </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50681">RSRP-50681</a>] &#8211; at ThrowHelper.ThrowKeyNotFoundException : The given key was not present in the dictionary. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50691">RSRP-50691</a>] &#8211; at ProjectModelWrapper.FileRemoved : !file.IsValid </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50705">RSRP-50705</a>] &#8211; at AbstractPersistentCache`2.Save : Condition (!myDiskCacheReleased) is false </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50803">RSRP-50803</a>] &#8211; Write lock can be aquired only from primary thread, when read lock os being held </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50809">RSRP-50809</a>] &#8211; at Property`1.SetValue : This property is not allowed to be Null. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50872">RSRP-50872</a>] &#8211; at DocumentManagerImpl.GetProjectFile : Value cannot be null. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50978">RSRP-50978</a>] &#8211; at LookupUtil.AssertDocumentRangeIsValid : Invalid range: cuts line break </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51124">RSRP-51124</a>] &#8211; at ProgressStatusControl.DrawRoundProgress : Index was outside the bounds of the array. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51125">RSRP-51125</a>] &#8211; at __Error.WinIOError : Access to the path &#8216;_ReSharper.TempSolution\WordIndex.New&#8217; is denied. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51130">RSRP-51130</a>] &#8211; at ThrowHelper.ThrowInvalidOperationException : Collection was modified; enumeration operation may not execute. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51340">RSRP-51340</a>] &#8211; Opening a Build Type always results in an Unhandled Exception </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51342">RSRP-51342</a>] &#8211; Unloading a project resulted in Unhandled Exception &#8211; JetBrains.Util.InternalErrorException: !file.IsValid </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51383">RSRP-51383</a>] &#8211; JetBrains.Util.InternalErrorException: Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51413">RSRP-51413</a>] &#8211; at ForEachToForAction.ExecuteInternalEx : Unable to cast object of type &#8216;JetBrains.ReSharper.Psi.VB.Impl.Tree.LiteralExpression&#8217; to type &#8216;JetBrains.ReSharper.Psi.VB.Tree.IIndexExpression&#8217;. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51431">RSRP-51431</a>] &#8211; at DocumentManagerImpl.GetDocument : Attempted to retrieve document for invalid project file </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51449">RSRP-51449</a>] &#8211; at ThrowHelper.ThrowArgumentOutOfRangeException : capacity was less than the current size. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51855">RSRP-51855</a>] &#8211; at CreateFieldFromUsageFix.IsAvailableEx : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51863">RSRP-51863</a>] &#8211; at TreeModelView.ViewToModel : Value cannot be null. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51882">RSRP-51882</a>] &#8211; at LabelDeclaration.SetName : Operation is not valid due to the current state of the object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51911">RSRP-51911</a>] &#8211; at TreePresenter.PresentFile : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51937">RSRP-51937</a>] &#8211; at VBMoveStaticMembers.GetOrCreateTypeMemberDeclarationInTargetType : Unable to cast object of type &#8216;JetBrains.ReSharper.Psi.Xaml.Impl.Tree.XamlTypeDeclaration&#8217; to type &#8216;JetBrains.ReSharper.Psi.VB.Tree.IClassLikeDeclaration&#8217;. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-52040">RSRP-52040</a>] &#8211; at ModifierFixBase.ExecuteEx : Unable to cast object of type &#8216;JetBrains.ReSharper.Psi.VB.Impl.Tree.EnumDeclaration&#8217; to type &#8216;JetBrains.ReSharper.Psi.CSharp.Tree.ICSharpTypeMemberDeclaration&#8217;. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-52082">RSRP-52082</a>] &#8211; at VBExpressionBase.NeedToParenthise : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-52159">RSRP-52159</a>] &#8211; at TreePresenter.PresentFile : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-52179">RSRP-52179</a>] &#8211; at ArraySortHelper`1.QuickSort : Failed to compare two elements in the array. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-52242">RSRP-52242</a>] &#8211; at ModifierFixBase.ExecuteEx : Unable to cast object of type &#8216;JetBrains.ReSharper.Psi.VB.Impl.Tree.VariableDeclaration&#8217; to type &#8216;JetBrains.ReSharper.Psi.CSharp.Tree.ICSharpTypeMemberDeclaration&#8217;. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-52279">RSRP-52279</a>] &#8211; at Mutex.ReleaseMutex : Object synchronization method was called from an unsynchronized block of code. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-52317">RSRP-52317</a>] &#8211; at SplitDeclarationAction.IsAvailableInternal : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-52340">RSRP-52340</a>] &#8211; at MemoryStream..ctor : Buffer cannot be null. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-52349">RSRP-52349</a>] &#8211; at AbstractPersistentCache`2.Save : Condition (!myDiskCacheReleased) is false </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-52387">RSRP-52387</a>] &#8211; at XmlAttribute.get_AttributeName : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-52625">RSRP-52625</a>] &#8211; at ThrowHelper.ThrowArgumentOutOfRangeException : Index was out of range. Must be non-negative and less than the size of the collection. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-52792">RSRP-52792</a>] &#8211; Es wurde versucht, im geschützten Speicher zu lesen oder zu schreiben. Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-53046">RSRP-53046</a>] &#8211; at CodeCompletionActionBase.Execute : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-53179">RSRP-53179</a>] &#8211; at BulbManagerImpl.ShowIndicator : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-53208">RSRP-53208</a>] &#8211; at BulbManagerImpl.ShowIndicator : Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-53652">RSRP-53652</a>] &#8211; at SolutionAnalysisManager.SetFileState : The condition (state == FileState.UP_TO_DATE) is false. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-53755">RSRP-53755</a>] &#8211; JetBrains.Util.InternalErrorException: Unkown feature id:BasicCompletion </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-53938">RSRP-53938</a>] &#8211; Cannot access components before instantiation of all components. E.g. in constructor of a component, use Init() method instead. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-53974">RSRP-53974</a>] &#8211; JetBrains.Util.InternalErrorException: Object reference not set to an instance of an object. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-54018">RSRP-54018</a>] &#8211; at ThrowHelper.ThrowArgumentException : An item with the same key has already been added. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-54019">RSRP-54019</a>] &#8211; at DocumentManagerImpl.GetDocument : Attempted to retrieve document for invalid project file </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-54606">RSRP-54606</a>] &#8211; at VBConstructorGenerator.GetFields : Unable to cast object of type &#8216;JetBrains.ReSharper.Psi.Xaml.Impl.Tree.FieldDeclaration&#8217; to type &#8216;JetBrains.ReSharper.Psi.VB.Tree.IVariableDeclaration&#8217;. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-54719">RSRP-54719</a>] &#8211; myHighlightingResultsMap[file] != null for file:18BEB3AF-C6BD-46DF-8771-76C19F9C9B13/d:Tests/f:PersonManagerTests.cs </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-54848">RSRP-54848</a>] &#8211; at Image.get_RawFormat : Object is currently in use elsewhere. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-54849">RSRP-54849</a>] &#8211; The tool area {X=1,Y=2,Width=19,Height=19} described by the JetBrains.ReSharper.Daemon.Impl.SolutionAnalysis.UI.Indicator.ProgressStatus Control tool info must include the point {X=6,Y=0} for which the info was requested. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-54870">RSRP-54870</a>] &#8211; at VSTextControl.GetSafePointOfLineColumn : Unable to call IVsTextView.GetPointsOfLineColumn. NullReferenceException occoured. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-54896">RSRP-54896</a>] &#8211; Unhandled exception at repeated switching on Solution-Wide Error Analysis + error submitting exception to JIRA (see attachment) </li>
</ul>
<h4>New Feature</h4>
<ul>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-28020">RSRP-28020</a>] &#8211; Navigation to the member wich has the same name </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-29021">RSRP-29021</a>] &#8211; Improve namespace matching with folder structure </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-49514">RSRP-49514</a>] &#8211; [SWEA] If I click error indicator on status bar with a single error, go directly to that error, instead of opening error list. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50310">RSRP-50310</a>] &#8211; Solutuon analysis: add &#8220;Pause&#8221; button </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50649">RSRP-50649</a>] &#8211; Solution analysis: change UI for progress and status in the errors view </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-50760">RSRP-50760</a>] &#8211; Solution analysis: show warning/explanation on turning on </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51065">RSRP-51065</a>] &#8211; Allow to set up in options a regular expression to parse localized stack trace. </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-52813">RSRP-52813</a>] &#8211; Support HTML IMPORT construct </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-53099">RSRP-53099</a>] &#8211; License Server &#8211; implement support for went down license server </li>
</ul>
<h4>Performance Problem</h4>
<ul>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-47721">RSRP-47721</a>] &#8211; Code completion for attribute takes too much time </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-52738">RSRP-52738</a>] &#8211; ProjectModelWrapper should not initialize its data structures, unless SWEA is enabled </li>
</ul>
<h4>Task</h4>
<ul>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-36155">RSRP-36155</a>] &#8211; Show modal dialog on first time initialization instead of displaying text in status bar </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51404">RSRP-51404</a>] &#8211; Section nodes in options tree are not bold anymore after my changes </li>
</ul>
<h4>Usability Problem</h4>
<ul>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51225">RSRP-51225</a>] &#8211; SWA ErrorsView: &#8220;Analysing File&#8221; Section Heading Should not be All Bold </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51226">RSRP-51226</a>] &#8211; SWA ErrorsView: &#8220;Analysing File&#8221; Section Heading Counter Should not Be Jumping </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51227">RSRP-51227</a>] &#8211; SWA Icon &#8220;Checking for Changes&#8221; Should Not Be Shown If Duration Is Small </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51690">RSRP-51690</a>] &#8211; SWEA: Ignored file list should support multiselection </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-51843">RSRP-51843</a>] &#8211; Unit Test Runner doesn&#8217;t respect text editor background </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-52095">RSRP-52095</a>] &#8211; Errors view: support multiselection </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-52324">RSRP-52324</a>] &#8211; Evaluation of other edition should be available, even if user already has valid key for another edition </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-54156">RSRP-54156</a>] &#8211; ReSharper installation should support UAC </li>
<li>[<a href="http://www.jetbrains.net/jira/browse/rsrp-54171">RSRP-54171</a>] &#8211; ReSharper License Checker should have &#8220;Bounce&#8221; mode </li>
</ul>
<p>December 20, 2007</p>
<p><img /><img /></p>
<div class="bjtags">Tags:  <a rel="tag" href="http://technorati.com/tag/resharper">ReSharper</a>, <a rel="tag" href="http://technorati.com/tag/alt.net">ALT.NET</a>, <a rel="tag" href="http://technorati.com/tag/gurus">Gurus</a></div>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/dcarr.wordpress.com/103/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/dcarr.wordpress.com/103/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dcarr.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dcarr.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dcarr.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dcarr.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dcarr.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dcarr.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dcarr.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dcarr.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dcarr.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dcarr.wordpress.com/103/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=103&subd=dcarr&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://team.pushbomb.com/2007/12/21/resharper-31-release-notes/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b572cbcda5a17fe984e7dd1ddc9c3d6?s=96&#38;d=&#38;r=PG" medium="image">
			<media:title type="html">pushbomb</media:title>
		</media:content>

		<media:content url="http://dcarr.files.wordpress.com/2007/12/smile19.gif" medium="image" />
	</item>
		<item>
		<title>NHibernate Custom Collections Supporting Lazy Loading with IPersistentCollection &amp; DomainPersistentGenericBag</title>
		<link>http://team.pushbomb.com/2007/11/07/nhibernate-custom-collections/</link>
		<comments>http://team.pushbomb.com/2007/11/07/nhibernate-custom-collections/#comments</comments>
		<pubDate>Wed, 07 Nov 2007 05:44:00 +0000</pubDate>
		<dc:creator>Damon Wilder Carr</dc:creator>
				<category><![CDATA[ORM]]></category>
		<category><![CDATA[Software Design]]></category>
		<category><![CDATA[Software Factories]]></category>
		<category><![CDATA[nhibernate]]></category>
		<category><![CDATA[resharper]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[ActiveRecord]]></category>
		<category><![CDATA[agile practices]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[C# 3.0 Enhancements]]></category>
		<category><![CDATA[Collections]]></category>

		<guid isPermaLink="false">http://dcarr.wordpress.com/2007/07/23/nhibernate-custom-collections-supporting-lazy-loading-with-ipersistentcollection-domainpersistentgenericbag/</guid>
		<description><![CDATA[In NHibernate, to write a custom persistable collection you must inherit from PersistentGenericBag which has no empty constructors (therefore you cannot use this to inherit on your main collection (!) as you MUST have an empty constructor for NHibernate to use it). FUN!
When you inherit from the concrete List as well as IUserCollectionType and (after finally getting it to work perhaps) wonder why they get casting exceptions when using a lazy loaded collection (the default now with 1.2.0) it is more then a pain....<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=83&subd=dcarr&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:center;"><span style="color:#ff0000;"><strong>NOTE: This is now being updated to cover NHibernate 2.0.0.X so please check back if interested in new approaches to this. The previous solution posted is now outdated and I do not recommend using it.</strong></span></p>
<p style="text-align:center;"><strong></strong></p>
<p style="text-align:center;">I will soon be posting a new article which (in my opinion) could be far more useful to every<a href="http://dcarr.files.wordpress.com/2008/04/chart.png"><img class="alignright size-medium wp-image-165" style="float:right;border-width:0;margin:5px;" src="http://dcarr.files.wordpress.com/2008/04/chart.png?w=256" alt="" height="212" /></a>one then this article ever was as it:</p>
<ul>
<li>Has far greater scope and use as Is a &#8216;domain collection&#8217; engine and I believe the first solution to something I have been struggling with for years: The pain of building clean, quick web views in the world of Ajax, controls that expect datasets, and programmers not understanding ORM. It so far works with <a href="http://www.codeproject.com/KB/architecture/NHibernateBestPractices.aspx">NHIbernate </a>(and <a href="http://using.castleproject.org/display/AR/An+introduction">ActiveRecord</a>) and I am finalizing Linq to Entity support</li>
<li>Leverages advanced .NET intrinsic&#8217;s (CustomTypeDescriptors, etc&#8230;) that are leveraged by the third-part component community</li>
<li>
<p style="text-align:left;">Support any &#8216;domain projection/entity set&#8217; operation &#8211; the same engine backs both bindable sets and non-bindable sets.. You just pass the HQL into the user control in VS 2005/2008</p>
</li>
</ul>
<p style="text-align:center;">
<p><span id="more-83"></span><strong></strong>Also stop by the new global repository I am bringing up with some others around &#8216;best practices&#8217; for domain driven (obsessed) work. This has a .NET 3.5 focus (as we will deeply discuss linq I am planning) however it is an architects site, so we will cover mono, java, and likely 50% of the content will be platform agnostic.More to come!</p>
<div style="text-align:center;"><span style="color:#666699;"></p>
<div style="text-align:center;"><strong></strong></div>
<p></span></div>
<p style="text-align:center;">
<div><span style="color:#666699;"></p>
<div style="text-align:center;"><strong><span style="color:#0000ff;">UPDATE: Billy McCafferty has done a fantastic job picking up where I barely get started.</span></strong></div>
<p><strong></strong></p>
<p></span></p>
<div><span style="color:#666699;"><strong><span style="color:#0000ff;"></p>
<div style="text-align:center;"><a href="http://devlicio.us/blogs/billy_mccafferty/archive/2007/12/03/custom-collections-with-nhibernate-part-i-the-basics.aspx">Go here for the must read posts.</a></div>
<div style="text-align:center;"> </div>
<div style="text-align:center;"> </div>
<p><font color="#666699"><strong><font color="#0000ff"> </p>
<p></font></strong></font></span> </p>
<p></strong></span><strong></strong></p>
</div>
</div>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/dcarr.wordpress.com/83/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/dcarr.wordpress.com/83/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dcarr.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dcarr.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dcarr.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dcarr.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dcarr.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dcarr.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dcarr.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dcarr.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dcarr.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dcarr.wordpress.com/83/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=team.pushbomb.com&blog=2366446&post=83&subd=dcarr&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://team.pushbomb.com/2007/11/07/nhibernate-custom-collections/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b572cbcda5a17fe984e7dd1ddc9c3d6?s=96&#38;d=&#38;r=PG" medium="image">
			<media:title type="html">pushbomb</media:title>
		</media:content>

		<media:content url="http://dcarr.files.wordpress.com/2008/04/chart.png?w=256" medium="image" />
	</item>
	</channel>
</rss>