<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" media="screen" href="/styles/xslt/rss.xslt"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:c9="http://channel9.msdn.com">
<channel>
	<title>Channel 9 - Entries tagged with OpenSource</title>
    <atom:link rel="self" type="application/rss+xml" href="http://channel9.msdn.com/Tags/opensource/RSS"></atom:link>
    <itunes:summary></itunes:summary>
    <itunes:author>Microsoft</itunes:author>
    <itunes:subtitle></itunes:subtitle>
    <image>
      <url>http://mschnlnine.vo.llnwd.net/d1/Dev/App_Themes/C9/images/feedimage.png</url>
      <title>Channel 9 - Entries tagged with OpenSource</title>
      <link>http://channel9.msdn.com/Tags/opensource</link>
    </image>
    <itunes:image href=""></itunes:image>
    <itunes:category text="Technology"></itunes:category>
    <description>Channel 9 keeps you up to date with the latest news and behind the scenes info from Microsoft that developers love to keep up with. From LINQ to SilverLight – Watch videos and hear about all the cool technologies coming and the people behind them.</description>
    <link>http://channel9.msdn.com/Tags/opensource</link>
    <language>en</language>
    <pubDate>Sun, 19 May 2013 12:26:14 GMT</pubDate>
    <lastBuildDate>Sun, 19 May 2013 12:26:14 GMT</lastBuildDate>
    <generator>Rev9</generator>
    <c9:totalResults>11</c9:totalResults>
    <c9:pageCount>1</c9:pageCount>
    <c9:pageSize>25</c9:pageSize>
  <item>
      <title>Interoperability Bridges</title>
      <description><![CDATA[ <p><span class="date">Gianugo Rabellino (Senior Director, Open Source Communities at Microsoft) ' 40 min</span></p><p><a class="text"><img src="http://files.channel9.msdn.com/thumbnail/e5a3f7d3-e78b-4404-ae84-b9886887b25e.jpg" alt="Interoperability Bridges Webcast, 22. Juni - 14:00 Uhr"></a></p><div class="text">Gianugo Rabellino is the Senior Director for Open Source Communities at Microsoft. He is also a Vice President of the Apache XML Project Management Committee and Founder and former Chief Executive Officer of Sourcesense. Gianugo has a deep understanding of open source technologies and platforms, and brings a wealth of experience and knowledge to the group of passionate and committed individuals who share his same enthusiasm for interoperability and openness between Microsoft and non-Microsoft platforms. Blog: <a href="http://boldlyopen.com/" target="_blank">http://boldlyopen.com/</a></div> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/opensource/RSS&WT.dl=0&WT.entryid=Entry:RSSView:9a949b9ef55d4196a4ea9f1d00a02329">]]></description>
      <comments>http://channel9.msdn.com/Blogs/codefest/Interoperability-Bridges</comments>
      <itunes:summary> Gianugo Rabellino (Senior Director, Open Source Communities at Microsoft) &#39; 40 min  Gianugo Rabellino is the Senior Director for Open Source Communities at Microsoft. He is also a Vice President of the Apache XML Project Management Committee and Founder and former Chief Executive Officer of Sourcesense. Gianugo has a deep understanding of open source technologies and platforms, and brings a wealth of experience and knowledge to the group of passionate and committed individuals who share his same enthusiasm for interoperability and openness between Microsoft and non-Microsoft platforms. Blog: http://boldlyopen.com/</itunes:summary>
      <itunes:duration>2512</itunes:duration>
      <link>http://channel9.msdn.com/Blogs/codefest/Interoperability-Bridges</link>
      <pubDate>Mon, 11 Jul 2011 13:19:18 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/codefest/Interoperability-Bridges</guid>
      <media:thumbnail url="http://ak.channel9.msdn.com/ch9/2329/9a949b9e-f55d-4196-a4ea-9f1d00a02329/KatapultTVInteroperabilityBridges_100_ch9.jpg" height="75" width="100"></media:thumbnail>
      <media:thumbnail url="http://ak.channel9.msdn.com/ch9/2329/9a949b9e-f55d-4196-a4ea-9f1d00a02329/KatapultTVInteroperabilityBridges_220_ch9.jpg" height="165" width="220"></media:thumbnail>
      <media:thumbnail url="http://ak.channel9.msdn.com/ch9/2329/9a949b9e-f55d-4196-a4ea-9f1d00a02329/KatapultTVInteroperabilityBridges_512_ch9.jpg" height="384" width="512"></media:thumbnail>
      <media:group>
        <media:content url="http://ak.channel9.msdn.com/ch9/2329/9a949b9e-f55d-4196-a4ea-9f1d00a02329/KatapultTVInteroperabilityBridges_2MB_ch9.wmv" expression="full" duration="2512" fileSize="473380086" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://ak.channel9.msdn.com/ch9/2329/9a949b9e-f55d-4196-a4ea-9f1d00a02329/KatapultTVInteroperabilityBridges_ch9.mp3" expression="full" duration="2512" fileSize="20098704" type="audio/mp3" medium="audio"></media:content>
        <media:content url="http://ak.channel9.msdn.com/ch9/2329/9a949b9e-f55d-4196-a4ea-9f1d00a02329/KatapultTVInteroperabilityBridges_ch9.wma" expression="full" duration="2512" fileSize="20321031" type="audio/x-ms-wma" medium="audio"></media:content>
        <media:content url="http://ak.channel9.msdn.com/ch9/2329/9a949b9e-f55d-4196-a4ea-9f1d00a02329/KatapultTVInteroperabilityBridges_ch9.wmv" expression="full" duration="2512" fileSize="193316505" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://ak.channel9.msdn.com/ch9/2329/9a949b9e-f55d-4196-a4ea-9f1d00a02329/KatapultTVInteroperabilityBridges_high_ch9.mp4" expression="full" duration="2512" fileSize="702734889" type="video/mp4" medium="video"></media:content>
        <media:content url="http://ak.channel9.msdn.com/ch9/2329/9a949b9e-f55d-4196-a4ea-9f1d00a02329/KatapultTVInteroperabilityBridges_low_ch9.mp4" expression="full" duration="2512" fileSize="74313672" type="video/mp4" medium="video"></media:content>
        <media:content url="http://smooth.ch9.ms/ch9/2329/9a949b9e-f55d-4196-a4ea-9f1d00a02329/KatapultTVInteroperabilityBridges.ism/manifest" expression="full" duration="2512" fileSize="6246" type="video/x-ms-wmv" medium="video"></media:content>
      </media:group>      
      <enclosure url="http://ak.channel9.msdn.com/ch9/2329/9a949b9e-f55d-4196-a4ea-9f1d00a02329/KatapultTVInteroperabilityBridges_ch9.wmv" length="193316505" type="video/x-ms-wmv"></enclosure>
      <dc:creator>Gerhard Goeschl, CodeFest</dc:creator>
      <itunes:author>Gerhard Goeschl, CodeFest</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/codefest/Interoperability-Bridges/RSS</wfw:commentRss>
      <category>CodeFest</category>
      <category>Interoperability</category>
      <category>OpenSource</category>
      <category>TechNet</category>
    </item>
  <item>
      <title>Erik Porter and Nathan Heskew: Introducing Orchard</title>
      <description><![CDATA[<a shape="rect" href="http://orchardproject.net/download" target="new" shape="rect"><strong>Orchard</strong></a> will create shared components for building ASP.NET applications and extensions, and specific applications that leverage these components to
 meet the needs of end-users, scripters, and developers. Additionally, we seek to create partnerships with existing application authors to help them achieve their goals. Orchard is delivered as part of the
<a shape="rect" href="http://www.codeplex.org/galleries.aspx" shape="rect">ASP.NET Open Source Gallery</a> under the
<a shape="rect" href="http://www.codeplex.org/" shape="rect">CodePlex Foundation</a>. It is licensed under a
<a shape="rect" href="http://www.opensource.org/licenses/bsd-license.php" shape="rect">
New BSD license</a>, which is approved by the OSI. The intended output of the Orchard project is three-fold:
<ul class="list">
<li>Individual .NET-based applications that appeal to end-users , scripters, and developers
</li></ul>
<ul class="list">
<li>A set of re-usable components that makes it easy to build such applications </li></ul>
<ul class="list">
<li>A vibrant community to help define these applications and extensions </li></ul>
In the near term, the Orchard project is focused on delivering a .NET-based CMS application that will allow users to rapidly create content-driven Websites, and an extensibility framework that will allow developers and customizers to provide additional functionality
 through extensions and themes. <br /><br />Erik Porter and Nathan Heskew are two of the developers of Orchard. Do they look familiar? Sure they do. They used to be devs on the C9 team.
 <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/opensource/RSS&WT.dl=0&WT.entryid=Entry:RSSView:7933342095634228aa8f9dea00c9bbd1">]]></description>
      <comments>http://channel9.msdn.com/Blogs/Charles/Erik-Porter-and-Nathan-Heskew-Introducing-Orchard</comments>
      <itunes:summary>Orchard will create shared components for building ASP.NET applications and extensions, and specific applications that leverage these components to
 meet the needs of end-users, scripters, and developers. Additionally, we seek to create partnerships with existing application authors to help them achieve their goals. Orchard is delivered as part of the
ASP.NET Open Source Gallery under the
CodePlex Foundation. It is licensed under a

New BSD license, which is approved by the OSI. The intended output of the Orchard project is three-fold:

Individual .NET-based applications that appeal to end-users , scripters, and developers


A set of re-usable components that makes it easy to build such applications 

A vibrant community to help define these applications and extensions 
In the near term, the Orchard project is focused on delivering a .NET-based CMS application that will allow users to rapidly create content-driven Websites, and an extensibility framework that will allow developers and customizers to provide additional functionality
 through extensions and themes. Erik Porter and Nathan Heskew are two of the developers of Orchard. Do they look familiar? Sure they do. They used to be devs on the C9 team.
</itunes:summary>
      <itunes:duration>1757</itunes:duration>
      <link>http://channel9.msdn.com/Blogs/Charles/Erik-Porter-and-Nathan-Heskew-Introducing-Orchard</link>
      <pubDate>Thu, 18 Mar 2010 00:17:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/Charles/Erik-Porter-and-Nathan-Heskew-Introducing-Orchard</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/100/536693_100x75.jpg" height="75" width="100"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/220/536693_220x165.jpg" height="165" width="220"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/ch9/3/9/6/6/3/5/IntroducingOrchard_320_ch9.png" height="240" width="320"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/ch9/3/9/6/6/3/5/IntroducingOrchard_512_ch9.png" height="384" width="512"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/ch9/3/9/6/6/3/5/IntroducingOrchard_85_ch9.png" height="64" width="85"></media:thumbnail>
      <media:group>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/3/9/6/6/3/5/IntroducingOrchard_2MB_ch9.wmv" expression="full" duration="1757" fileSize="558632862" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/3/9/6/6/3/5/IntroducingOrchard_ch9.mp3" expression="full" duration="1757" fileSize="14059046" type="audio/mp3" medium="audio"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/3/9/6/6/3/5/IntroducingOrchard_ch9.mp4" expression="full" duration="1757" fileSize="274752668" type="video/mp4" medium="video"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/3/9/6/6/3/5/IntroducingOrchard_ch9.wma" expression="full" duration="1757" fileSize="14219907" type="audio/x-ms-wma" medium="audio"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/3/9/6/6/3/5/IntroducingOrchard_ch9.wmv" expression="full" duration="1757" fileSize="369566133" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/3/9/6/6/3/5/IntroducingOrchard_Zune_ch9.wmv" expression="full" duration="1757" fileSize="247630185" type="video/x-ms-wmv" medium="video"></media:content>
      </media:group>      
      <enclosure url="http://ecn.channel9.msdn.com/o9/ch9/3/9/6/6/3/5/IntroducingOrchard_ch9.wmv" length="369566133" type="video/x-ms-wmv"></enclosure>
      <dc:creator>Charles</dc:creator>
      <itunes:author>Charles</itunes:author>
      <slash:comments>9</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/Charles/Erik-Porter-and-Nathan-Heskew-Introducing-Orchard/RSS</wfw:commentRss>
      <category>ASP.NET</category>
      <category>ASP.NET MVC</category>
      <category>CodePlex</category>
      <category>OpenSource</category>
      <category>Orchard</category>
    </item>
  <item>
      <title>Open source HPC code Episode 1.1:  IPython Grid Engine running on Windows HPC Server 2008</title>
      <description><![CDATA[
<p>IPython (<a shape="rect" href="http://ipython.scipy.org/" shape="rect">http://ipython.scipy.org/</a>) enables parallel computations to be performed interactively. IPython parallel jobs can now be started using Windows HPC Server 2008, which makes it easy
 to get starting with interactive parallel computing on Windows.&nbsp; In this screencast, we show the basic steps involved with using IPython on Windows HPC Server 2008.&nbsp; This includes creating and configuring IPython cluster profiles and using these cluster profiles
 to start and stop interactive parallel jobs.<br /><br /><a shape="rect" href="http://ipython.scipy.org/doc/manual/html/parallel/parallel_winhpc.html" shape="rect">Getting started on IPython on Windows HPC Server 2008</a></p>
 <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/opensource/RSS&WT.dl=0&WT.entryid=Entry:RSSView:0f83e3e0e2054e3486719dea00c34b7b">]]></description>
      <comments>http://channel9.msdn.com/Shows/The+HPC+Show/Open-source-HPC-code-Episode-11-IPython-Grid-Engine-running-on-Windows-HPC-Server-2008</comments>
      <itunes:summary>
IPython (http://ipython.scipy.org/) enables parallel computations to be performed interactively. IPython parallel jobs can now be started using Windows HPC Server 2008, which makes it easy
 to get starting with interactive parallel computing on Windows.&amp;nbsp; In this screencast, we show the basic steps involved with using IPython on Windows HPC Server 2008.&amp;nbsp; This includes creating and configuring IPython cluster profiles and using these cluster profiles
 to start and stop interactive parallel jobs.Getting started on IPython on Windows HPC Server 2008 
</itunes:summary>
      <itunes:duration>528</itunes:duration>
      <link>http://channel9.msdn.com/Shows/The+HPC+Show/Open-source-HPC-code-Episode-11-IPython-Grid-Engine-running-on-Windows-HPC-Server-2008</link>
      <pubDate>Sat, 23 Jan 2010 04:05:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Shows/The+HPC+Show/Open-source-HPC-code-Episode-11-IPython-Grid-Engine-running-on-Windows-HPC-Server-2008</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/100/522421_100x75.jpg" height="75" width="100"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/220/522421_220x165.jpg" height="165" width="220"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/ch9/1/2/4/2/2/5/ipythonhpcw2k8_320_ch9.png" height="240" width="320"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/ch9/1/2/4/2/2/5/ipythonhpcw2k8_512_ch9.png" height="384" width="512"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/ch9/1/2/4/2/2/5/ipythonhpcw2k8_85_ch9.png" height="64" width="85"></media:thumbnail>
      <media:group>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/1/2/4/2/2/5/ipythonhpcw2k8_2MB_ch9.wmv" expression="full" duration="528" fileSize="41600665" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/1/2/4/2/2/5/ipythonhpcw2k8_ch9.mp3" expression="full" duration="528" fileSize="4228936" type="audio/mp3" medium="audio"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/1/2/4/2/2/5/ipythonhpcw2k8_ch9.mp4" expression="full" duration="528" fileSize="20867638" type="video/mp4" medium="video"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/1/2/4/2/2/5/ipythonhpcw2k8_ch9.wma" expression="full" duration="528" fileSize="4279663" type="audio/x-ms-wma" medium="audio"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/1/2/4/2/2/5/ipythonhpcw2k8_ch9.wmv" expression="full" duration="528" fileSize="21180919" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/1/2/4/2/2/5/ipythonhpcw2k8_Zune_ch9.wmv" expression="full" duration="528" fileSize="20812971" type="video/x-ms-wmv" medium="video"></media:content>
      </media:group>      
      <enclosure url="http://ecn.channel9.msdn.com/o9/ch9/1/2/4/2/2/5/ipythonhpcw2k8_ch9.wmv" length="21180919" type="video/x-ms-wmv"></enclosure>
      <dc:creator>Wenming Ye</dc:creator>
      <itunes:author>Wenming Ye</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Shows/The+HPC+Show/Open-source-HPC-code-Episode-11-IPython-Grid-Engine-running-on-Windows-HPC-Server-2008/RSS</wfw:commentRss>
      <category>Grid Computing</category>
      <category>HPC Server 2008</category>
      <category>OpenSource</category>
      <category>Python</category>
    </item>
  <item>
      <title>Jesse Liberty&#39;s training projects for Silverlight 3</title>
      <description><![CDATA[<a shape="rect" href="http://silverlight.net/blogs/jesseliberty/archive/2009/06/29/so-much-is-happening-the-silence-is-deafening.aspx" shape="rect">Jesse Liberty talks about two training projects</a>&nbsp;he will be working on to coincide with the release fo
 Silverlight 3.&nbsp; The first entitled imaginatively&nbsp;<a shape="rect" href="http://silverlight.net/blogs/jesseliberty/pages/better-videos.aspx" shape="rect">Better-Videos</a>&nbsp;is his continued refinement of his
<a shape="rect" href="http://silverlight.net/learn/" shape="rect">Silverlight&nbsp;video tutorials</a>.&nbsp; The second is a new project called
<a shape="rect" href="http://www.agopensource.com/" shape="rect">AgOpenSource</a>, where he will be walking through&nbsp;application development&nbsp;stages including&nbsp;initial brainstorming , through design, development, testing, delivery all done in the open for all
 to learn from.  <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/opensource/RSS&WT.dl=0&WT.entryid=Entry:RSSView:bc6a7f9dae0d48d3b9119deb002192c0">]]></description>
      <comments>http://channel9.msdn.com/Blogs/ContinuumNews/Jesse-Libertys-training-projects-for-Silverlight-3</comments>
      <itunes:summary>Jesse Liberty talks about two training projects&amp;nbsp;he will be working on to coincide with the release fo
 Silverlight 3.&amp;nbsp; The first entitled imaginatively&amp;nbsp;Better-Videos&amp;nbsp;is his continued refinement of his
Silverlight&amp;nbsp;video tutorials.&amp;nbsp; The second is a new project called
AgOpenSource, where he will be walking through&amp;nbsp;application development&amp;nbsp;stages including&amp;nbsp;initial brainstorming , through design, development, testing, delivery all done in the open for all
 to learn from. </itunes:summary>
      <link>http://channel9.msdn.com/Blogs/ContinuumNews/Jesse-Libertys-training-projects-for-Silverlight-3</link>
      <pubDate>Tue, 30 Jun 2009 01:03:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/ContinuumNews/Jesse-Libertys-training-projects-for-Silverlight-3</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/100/476084_100x75.jpg" height="75" width="100"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/220/476084_220x165.jpg" height="165" width="220"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/320/a1e640a0-d42a-4a4e-abef-8caeb1d354bc.jpg" height="210" width="280"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/85/0fd2f0f6-8658-45fb-a823-85a380717ab2.jpg" height="64" width="85"></media:thumbnail>      
      <dc:creator>Adam Kinney</dc:creator>
      <itunes:author>Adam Kinney</itunes:author>
      <slash:comments>1</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/ContinuumNews/Jesse-Libertys-training-projects-for-Silverlight-3/RSS</wfw:commentRss>
      <category>OpenSource</category>
      <category>RIA</category>
      <category>Silverlight</category>
    </item>
  <item>
      <title>(More) Suteki Shop and Mike Hadlow</title>
      <description><![CDATA[An interview with Mike Hadlow, developer of Suteki Shop and owner of Suteki Ltd. Suteki Shop is an ASP.NET MVC open source eCommerce application. We chat about &quot;suteki&quot;, ASP.NET MVC, open source, why Suteki Shop and open frameworks.
 <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/opensource/RSS&WT.dl=0&WT.entryid=Entry:RSSView:5632b617615f40c0a3b69deb00146f89">]]></description>
      <comments>http://channel9.msdn.com/Blogs/mike+ormond/More-Suteki-Shop-and-Mike-Hadlow</comments>
      <itunes:summary>An interview with Mike Hadlow, developer of Suteki Shop and owner of Suteki Ltd. Suteki Shop is an ASP.NET MVC open source eCommerce application. We chat about &amp;quot;suteki&amp;quot;, ASP.NET MVC, open source, why Suteki Shop and open frameworks.
</itunes:summary>
      <itunes:duration>584</itunes:duration>
      <link>http://channel9.msdn.com/Blogs/mike+ormond/More-Suteki-Shop-and-Mike-Hadlow</link>
      <pubDate>Tue, 16 Jun 2009 10:13:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/mike+ormond/More-Suteki-Shop-and-Mike-Hadlow</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/100/471067_100x75.jpg" height="75" width="100"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/220/471067_220x165.jpg" height="165" width="220"></media:thumbnail>
      <media:thumbnail url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/6/0/1/7/4/MikeHadlowBus_large_ch9.png" height="240" width="320"></media:thumbnail>
      <media:thumbnail url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/6/0/1/7/4/MikeHadlowBus_small_ch9.png" height="64" width="85"></media:thumbnail>
      <media:group>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/6/0/1/7/4/MikeHadlowBus_2MB_ch9.wmv" expression="full" duration="584" fileSize="386317857" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/6/0/1/7/4/MikeHadlowBus_ch9.mp3" expression="full" duration="584" fileSize="4675211" type="audio/mp3" medium="audio"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/6/0/1/7/4/MikeHadlowBus_ch9.mp4" expression="full" duration="584" fileSize="56982682" type="video/mp4" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/6/0/1/7/4/MikeHadlowBus_ch9.wma" expression="full" duration="584" fileSize="9455573" type="audio/x-ms-wma" medium="audio"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/6/0/1/7/4/MikeHadlowBus_ch9.wmv" expression="full" duration="584" fileSize="83016947" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/6/0/1/7/4/MikeHadlowBus_Zune_ch9.wmv" expression="full" duration="584" fileSize="82312927" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="mms://mschnlnine.vo.llnwd.net/d1/ch9/7/6/0/1/7/4/MikeHadlowBus_ch9.wmv" expression="full" duration="584" fileSize="83016947" type="video/x-ms-wmv" medium="video"></media:content>
      </media:group>      
      <enclosure url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/6/0/1/7/4/MikeHadlowBus_ch9.wmv" length="83016947" type="video/x-ms-wmv"></enclosure>
      <dc:creator>Mike Ormond</dc:creator>
      <itunes:author>Mike Ormond</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/mike+ormond/More-Suteki-Shop-and-Mike-Hadlow/RSS</wfw:commentRss>
      <category>ASP.NET MVC</category>
      <category>en-GB</category>
      <category>Frameworks</category>
      <category>OpenSource</category>
      <category>UKDevTeam</category>
    </item>
  <item>
      <title>Extreme ASP.NET Makeover: Getting Your House in Order - Cmd Line Build</title>
      <description><![CDATA[
<p>Let me give you a very brief introduction to MSBuild. In MSBuild terminology, build steps are called &quot;targets.&quot; We will define three common targets initially: Clean, Init, and Compile. You can create other targets to automate other common tasks such as running
 tests, creating installer packages, deploying to a staging server, or generating documentation. MSBuild uses tasks to define operations within a target. There are many default tasks, such as RemoveDir, MakeDir, MSBuild, and Exec, among others. MSBuild also
 has the notions of items and properties. Items are files, directories, and references. Properties are name-value pairs representing configuration (Debug/Release), architecture (x86/x64/ia64/AnyCPU), or anything else.</p>
<p>&nbsp;</p>
<p>Let's start by defining the Clean target, as shown in the following code:</p>
<pre>&lt;ItemGroup&gt;      &lt;BuildArtifacts Include=&quot;.\buildartifacts\&quot;/&gt;&lt;/ItemGroup&gt;&lt;Target Name=&quot;Clean&quot;&gt;      &lt;RemoveDir Directories=&quot;@(BuildArtifacts)&quot;/&gt;&lt;/Target&gt;</pre>
<p>We use the RemoveDir/ task to remove the $\build\buildartifacts\ directory. Nothing surprising here.</p>
<p>&nbsp;</p>
<p>Next we want to initialize our build environment, which means recreating the $\build\buildartifacts\ directory:</p>
<p>&nbsp;</p>
<pre>&lt;Target Name=&quot;Init&quot; DependsOnTargets=&quot;Clean&quot;&gt;      &lt;MakeDir Directories=&quot;@(BuildArtifacts)&quot;/&gt;&lt;/Target&gt;</pre>
<p>&nbsp;</p>
<p>Note that the Init target depends on the Clean target so the $\build\buildartifacts\ directory will be removed and recreated if it already exists. This ensures a clean build.</p>
<p>&nbsp;</p>
<p>Moving onto the Compile task itself, I don't want to re-specify the project references, C# files, and configuration options that are already present in the project file. (Some developers do like to have this level of control with their builds and use the
 project files solely for organizing files within Visual Studio.) I will simply use the MSBuild/ task to compile the solution (which will compile the associated project files) defined by ScrewTurnWiki.sln. I override OutDir to place the build output in $\build\buildartifacts\
 rather than in various &lt;Project&gt;\bin\Debug directories. I pass through the build configuration (Debug or Release) and set it to Debug if it is left unspecified, as shown in Figure 7. You can override additional options, such as CPU architecture, in a similar
 manner:</p>
<p>&nbsp;</p>
<h2>Compile Using MSBuild</h2>
<br>
<pre>&lt;PropertyGroup&gt;      &lt;Configuration Condition=&quot; '$(Configuration)' == &quot; &quot;&gt;Debug&lt;/Configuration&gt;&lt;/PropertyGroup&gt;&lt;ItemGroup&gt;      &lt;BuildArtifacts Include=&quot;.\buildartifacts\&quot;/&gt;      &lt;SolutionFile Include=&quot;..\ScrewTurnWiki.sln&quot;/&gt;&lt;/ItemGroup&gt;&lt;Target Name=&quot;Compile&quot; DependsOnTargets=&quot;Init&quot;&gt;      &lt;MSBuild Projects=&quot;@(SolutionFile)&quot;Properties=      &quot;OutDir=%(BuildArtifacts.FullPath);Configuration=$(Configuration)&quot;/&gt;&lt;/Target&gt;</pre>
<br>
<h2>Full Build Script</h2>
<pre>      &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?/&gt;      &lt;Project ToolsVersion=&quot;3.5&quot; DefaultTargets=&quot;Compile&quot;             xmlns=&quot;http://schemas.microsoft.com/developer/msbuild/2003&quot;&gt;            &lt;PropertyGroup&gt;                  &lt;Configuration Condition=&quot; '$(Configuration)' == &quot; &quot;&gt;Debug&lt;/Configuration&gt;            &lt;/PropertyGroup&gt;            &lt;ItemGroup&gt;                  &lt;SolutionRoot Include=&quot;..&quot;/&gt;                  &lt;BuildArtifacts Include=&quot;.\buildartifacts\&quot;/&gt;                  &lt;SolutionFile Include=&quot;..\ScrewTurnWiki.sln&quot;/&gt;            &lt;/ItemGroup&gt;            &lt;Target Name=&quot;Clean&quot;&gt;                 &lt;RemoveDir Directories=&quot;@(BuildArtifacts)&quot;/&gt;            &lt;/Target&gt;            &lt;Target Name=&quot;Init&quot; DependsOnTargets=&quot;Clean&quot;&gt;                 &lt;MakeDir Directories=&quot;@(BuildArtifacts)&quot;/&gt;            &lt;/Target&gt;            &lt;Target Name=&quot;Compile&quot; DependsOnTargets=&quot;Init&quot;&gt;                 &lt;MSBuild Projects=&quot;@(SolutionFile)&quot;                  Properties=&quot;OutDir=%(BuildArtifacts.FullPath);Configuration=$(Configuration)&quot;/&gt;            &lt;/Target&gt;      &lt;/Project&gt;</pre>
<p>Notice the Project DefaultTargets=&quot;Compile&quot;/, which specifies that the Compile target should be run if none is specified. You can have msbuild run a specific target using the /t switch. For example, to only run the Clean target:</p>
<p>&nbsp;</p>
<p>msbuild build/ScrewTurnWiki.build /t:Clean</p>
<p>&nbsp;</p>
<p>For more information on creating MSBuild scripts, I encourage you to read Sayed Ibrahim Hashimi's Best Practices For Creating Reliable Builds Part 1 and Part 2. I would also like to extend my thanks to Sayed for his assistance in troubleshooting a MSBuild
 issue that I encountered while writing this article.</p>
<p>&nbsp;</p>
<h2>Conclusion</h2>
<p>This article is just the beginning of our journey as we set out to improve ScrewTurn Wiki. It is never too late to implement good development practices on an existing codebase, such as version control, issue tracking, automated self-contained build scripts,
 and automated testing. These practices provide your team with a safety net that allows you to more confidently make changes to improve an existing codebase. The next article will focus on automated testing, including acceptance testing with WatiN, a Web testing
 framework, and unit/integration testing with NUnit.</p>
<h2>Other videos from this article</h2>
<p>· <a shape="rect" href="http://channel9.msdn.com/posts/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Overview/" shape="rect">
Overview</a></p>
<p>· <a shape="rect" href="http://channel9.msdn.com/posts/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Source-Control/" shape="rect">
Source control</a></p>
<p>· <a shape="rect" href="http://channel9.msdn.com/posts/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Inspecting-a-Proj-File/" shape="rect">
Inspecting a project file</a></p>
<p>· <a shape="rect" href="http://channel9.msdn.com/posts/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Cmd-Line-Build/" shape="rect">
Building from the command line</a></p>
<p>&nbsp;</p>
<h2>Read the full article at <a shape="rect" href="http://msdn.microsoft.com/en-us/magazine/dd758790.aspx" shape="rect">
http://msdn.microsoft.com/en-us/magazine/dd758790.aspx</a> </h2>
 <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/opensource/RSS&WT.dl=0&WT.entryid=Entry:RSSView:3dc0245299cc4f5d8fdb9deb00dcb7e3">]]></description>
      <comments>http://channel9.msdn.com/Blogs/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Cmd-Line-Build</comments>
      <itunes:summary>
Let me give you a very brief introduction to MSBuild. In MSBuild terminology, build steps are called &amp;quot;targets.&amp;quot; We will define three common targets initially: Clean, Init, and Compile. You can create other targets to automate other common tasks such as running
 tests, creating installer packages, deploying to a staging server, or generating documentation. MSBuild uses tasks to define operations within a target. There are many default tasks, such as RemoveDir, MakeDir, MSBuild, and Exec, among others. MSBuild also
 has the notions of items and properties. Items are files, directories, and references. Properties are name-value pairs representing configuration (Debug/Release), architecture (x86/x64/ia64/AnyCPU), or anything else. 
&amp;nbsp; 
Let&#39;s start by defining the Clean target, as shown in the following code: 
&amp;lt;ItemGroup&amp;gt;      &amp;lt;BuildArtifacts Include=&amp;quot;.\buildartifacts\&amp;quot;/&amp;gt;&amp;lt;/ItemGroup&amp;gt;&amp;lt;Target Name=&amp;quot;Clean&amp;quot;&amp;gt;      &amp;lt;RemoveDir Directories=&amp;quot;@(BuildArtifacts)&amp;quot;/&amp;gt;&amp;lt;/Target&amp;gt;
We use the RemoveDir/ task to remove the $\build\buildartifacts\ directory. Nothing surprising here. 
&amp;nbsp; 
Next we want to initialize our build environment, which means recreating the $\build\buildartifacts\ directory: 
&amp;nbsp; 
&amp;lt;Target Name=&amp;quot;Init&amp;quot; DependsOnTargets=&amp;quot;Clean&amp;quot;&amp;gt;      &amp;lt;MakeDir Directories=&amp;quot;@(BuildArtifacts)&amp;quot;/&amp;gt;&amp;lt;/Target&amp;gt;
&amp;nbsp; 
Note that the Init target depends on the Clean target so the $\build\buildartifacts\ directory will be removed and recreated if it already exists. This ensures a clean build. 
&amp;nbsp; 
Moving onto the Compile task itself, I don&#39;t want to re-specify the project references, C# files, and configuration options that are already present in the project file. (Some developers do like to have this level of control with their builds and use the
 project files solely for organizing files within Visual Studio.) I will simply use </itunes:summary>
      <itunes:duration>113</itunes:duration>
      <link>http://channel9.msdn.com/Blogs/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Cmd-Line-Build</link>
      <pubDate>Fri, 05 Jun 2009 06:57:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Cmd-Line-Build</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/100/467688_100x75.jpg" height="75" width="100"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/220/467688_220x165.jpg" height="165" width="220"></media:thumbnail>
      <media:thumbnail url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/6/7/6/4/BuildingFromTheCmdLine_large_ch9.png" height="240" width="320"></media:thumbnail>
      <media:thumbnail url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/6/7/6/4/BuildingFromTheCmdLine_small_ch9.png" height="64" width="85"></media:thumbnail>
      <media:group>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/6/7/6/4/BuildingFromTheCmdLine_2MB_ch9.wmv" expression="full" duration="113" fileSize="5269638" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/6/7/6/4/BuildingFromTheCmdLine_ch9.mp3" expression="full" duration="113" fileSize="913089" type="audio/mp3" medium="audio"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/6/7/6/4/BuildingFromTheCmdLine_ch9.mp4" expression="full" duration="113" fileSize="3786999" type="video/mp4" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/6/7/6/4/BuildingFromTheCmdLine_ch9.wma" expression="full" duration="113" fileSize="1849445" type="audio/x-ms-wma" medium="audio"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/6/7/6/4/BuildingFromTheCmdLine_ch9.wmv" expression="full" duration="113" fileSize="3670121" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/6/7/6/4/BuildingFromTheCmdLine_Zune_ch9.wmv" expression="full" duration="113" fileSize="3638101" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="mms://mschnlnine.wmod.llnwd.net/a1809/d1/ch9/8/8/6/7/6/4/BuildingFromTheCmdLine_s_ch9.wmv" expression="full" duration="113" fileSize="225" type="video/x-ms-wmv" medium="video"></media:content>
      </media:group>      
      <enclosure url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/6/7/6/4/BuildingFromTheCmdLine_ch9.wmv" length="3670121" type="video/x-ms-wmv"></enclosure>
      <dc:creator>Howard Dierking</dc:creator>
      <itunes:author>Howard Dierking</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Cmd-Line-Build/RSS</wfw:commentRss>
      <category>ASP.NET</category>
      <category>Brownfield Development</category>
      <category>MSBuild</category>
      <category>MSDN Magazine</category>
      <category>OpenSource</category>
      <category>Refactoring</category>
    </item>
  <item>
      <title>Extreme ASP.NET Makeover: Getting Your House in Order - Inspecting a Proj File</title>
      <description><![CDATA[
<h2>Creating an Automated Build Script</h2>
<p>In creating a build script, we want to automate common tasks for building the project source code as much as possible. Whether you know it or not, you are already using build scripts. When you create a new project, Visual Studio creates a build script for
 that project in the form of a .csproj or .vbproj file. (MSBuild was introduced with .NET Framework 2.0, so project files created by Visual Studio 2005 and above use the new MSBuild format under the covers.) If you open a project file in a text editor such
 as Notepad rather than Visual Studio, you will see something like this clip.</p>
<p>To run a build from the command line, simply launch a Visual Studio 2008 Command Prompt, navigate to the solution root, and execute:</p>
<p>&nbsp;</p>
<p>msbuild ScrewTurnWiki.sln</p>
<p>&nbsp;</p>
<p>Running the Visual Studio 2008 Command Prompt instead of the standard command prompt ensures that the Visual Studio and the .NET Framework directories are added to the PATH environment variable, enabling you to execute commands like msbuild.exe without specifying
 the full path to the executable. In addition to compiling the entire solution, you can compile individual projects.</p>
<p>&nbsp;</p>
<p>msbuild src\app\Core\Core.csproj</p>
<h2>&nbsp;</h2>
<p>Rather than editing the project files directly, I will create a separate build file for building the solution from the command line. If you are creating a custom build file, the two most commonly used build engines on the .NET platform are MSBuild and NAnt.
 (Other options include rake, Bake, and psake, among others.) I will use MSBuild since it is installed by default with .NET Framework 2.0 and above.</p>
<h2>&nbsp;</h2>
<h2>Other videos from this article</h2>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a shape="rect" href="http://channel9.msdn.com/posts/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Overview/" shape="rect">
Overview</a></p>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a shape="rect" href="http://channel9.msdn.com/posts/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Source-Control/" shape="rect">
Source control</a></p>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a shape="rect" href="http://channel9.msdn.com/posts/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Inspecting-a-Proj-File/" shape="rect">
Inspecting a project file</a></p>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a shape="rect" href="http://channel9.msdn.com/posts/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Cmd-Line-Build/" shape="rect">
Building from the command line</a></p>
<p>&nbsp;</p>
<h2>Read the full article at &nbsp;<a shape="rect" href="http://msdn.microsoft.com/en-us/magazine/dd758790.aspx" shape="rect">http://msdn.microsoft.com/en-us/magazine/dd758790.aspx</a>
</h2>
 <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/opensource/RSS&WT.dl=0&WT.entryid=Entry:RSSView:b8a9f36e057b4a7bb2879deb00dcbb60">]]></description>
      <comments>http://channel9.msdn.com/Blogs/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Inspecting-a-Proj-File</comments>
      <itunes:summary>
Creating an Automated Build Script
In creating a build script, we want to automate common tasks for building the project source code as much as possible. Whether you know it or not, you are already using build scripts. When you create a new project, Visual Studio creates a build script for
 that project in the form of a .csproj or .vbproj file. (MSBuild was introduced with .NET Framework 2.0, so project files created by Visual Studio 2005 and above use the new MSBuild format under the covers.) If you open a project file in a text editor such
 as Notepad rather than Visual Studio, you will see something like this clip. 
To run a build from the command line, simply launch a Visual Studio 2008 Command Prompt, navigate to the solution root, and execute: 
&amp;nbsp; 
msbuild ScrewTurnWiki.sln 
&amp;nbsp; 
Running the Visual Studio 2008 Command Prompt instead of the standard command prompt ensures that the Visual Studio and the .NET Framework directories are added to the PATH environment variable, enabling you to execute commands like msbuild.exe without specifying
 the full path to the executable. In addition to compiling the entire solution, you can compile individual projects. 
&amp;nbsp; 
msbuild src\app\Core\Core.csproj 
&amp;nbsp;
Rather than editing the project files directly, I will create a separate build file for building the solution from the command line. If you are creating a custom build file, the two most commonly used build engines on the .NET platform are MSBuild and NAnt.
 (Other options include rake, Bake, and psake, among others.) I will use MSBuild since it is installed by default with .NET Framework 2.0 and above. 
&amp;nbsp;
Other videos from this article
&#183;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
Overview 
&#183;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
Source control 
&#183;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
Inspecting a project file 
&#183;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
Building from the command line 
&amp;nb</itunes:summary>
      <itunes:duration>183</itunes:duration>
      <link>http://channel9.msdn.com/Blogs/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Inspecting-a-Proj-File</link>
      <pubDate>Fri, 05 Jun 2009 06:56:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Inspecting-a-Proj-File</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/100/467687_100x75.jpg" height="75" width="100"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/220/467687_220x165.jpg" height="165" width="220"></media:thumbnail>
      <media:thumbnail url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/8/6/7/6/4/ExaminingCsprojInNotepad_large_ch9.png" height="240" width="320"></media:thumbnail>
      <media:thumbnail url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/8/6/7/6/4/ExaminingCsprojInNotepad_small_ch9.png" height="64" width="85"></media:thumbnail>
      <media:group>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/8/6/7/6/4/ExaminingCsprojInNotepad_2MB_ch9.wmv" expression="full" duration="183" fileSize="5079454" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/8/6/7/6/4/ExaminingCsprojInNotepad_ch9.mp3" expression="full" duration="183" fileSize="1469192" type="audio/mp3" medium="audio"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/8/6/7/6/4/ExaminingCsprojInNotepad_ch9.mp4" expression="full" duration="183" fileSize="4882137" type="video/mp4" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/8/6/7/6/4/ExaminingCsprojInNotepad_ch9.wma" expression="full" duration="183" fileSize="2975945" type="audio/x-ms-wma" medium="audio"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/8/6/7/6/4/ExaminingCsprojInNotepad_ch9.wmv" expression="full" duration="183" fileSize="4934541" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/8/6/7/6/4/ExaminingCsprojInNotepad_Zune_ch9.wmv" expression="full" duration="183" fileSize="4726521" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="mms://mschnlnine.wmod.llnwd.net/a1809/d1/ch9/7/8/6/7/6/4/ExaminingCsprojInNotepad_s_ch9.wmv" expression="full" duration="183" fileSize="229" type="video/x-ms-wmv" medium="video"></media:content>
      </media:group>      
      <enclosure url="http://mschnlnine.vo.llnwd.net/d1/ch9/7/8/6/7/6/4/ExaminingCsprojInNotepad_ch9.wmv" length="4934541" type="video/x-ms-wmv"></enclosure>
      <dc:creator>Howard Dierking</dc:creator>
      <itunes:author>Howard Dierking</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Inspecting-a-Proj-File/RSS</wfw:commentRss>
      <category>ASP.NET</category>
      <category>Brownfield Development</category>
      <category>MSBuild</category>
      <category>MSDN Magazine</category>
      <category>OpenSource</category>
      <category>Refactoring</category>
    </item>
  <item>
      <title>Extreme ASP.NET Makeover: Getting Your House in Order - Source Control</title>
      <description><![CDATA[
<h2>Version Control</h2>
<p>All software development projects should use a version control system (VCS) for tracking and coordinating changes to code files and other project artifacts. The size of the project team doesn't matter as even a single developer benefits from using version
 control. If you are still using ZIP files to track changes to your source, you should reconsider.</p>
<p>A VCS helps a team coordinate changes to source code and other artifacts during development. If a developer tries to commit changes without updating to the latest version in the repository, the VCS will require the developer to update before committing.
 This will give the developer a chance to resolve any conflicts that may be present. The VCS also prevents one developer from accidentally overwriting the changes made by another developer.</p>
<p>A VCS also acts as a safety net for developers. If a developer makes a change that breaks the application, the change can easily be reverted by rolling back to a build with the latest known good state in the repository. Even if the change has been committed
 to the repository, it is possible to revert the change. Modern version control systems support branching, merging, and diffing. (For definitions of these and other terms, please take a look at our Glossary.) They can answer questions such as who last changed
 this code, what changes were made, and which other files were modified at the same time. They prevent developers from accidentally overwriting other changes either via edit/merge or a pessimistic locking (also known as checkout) mechanism. Although it sounds
 dangerous at first glance, edit/merge causes less friction on a development team and works better in practice than pessimistic locking. In most cases, merges happen automatically because developers are working on different parts of a code file. If developers
 happen to be working on the same part of the codebase, they should probably be coordinating their efforts somewhere other than the VCS.</p>
<p>There are many modern version control systems available today. For open source projects, the most popular—and free—choice is Subversion (SVN) and it is supported by most open source project host sites, such as SourceForge, Google Code, and CodePlex. (CodePlex
 actually uses <a shape="rect" href="http://msdn.microsoft.com/teamsystem/dd408382.aspx" shape="rect">
Microsoft Team Foundation Server</a> for source control, but hosts SvnBridge, which allows Subversion clients to talk to Team Foundation Server.) In corporate environments, teams often install these same version control systems, such as Subversion (SVN) or
 Team Foundation Server , behind the firewall.</p>
<p>The ScrewTurn Wiki project manages its source code using Subversion. If you want to get started with Subversion, I would recommend downloading TortoiseSVN (http://tortoisesvn.net), which is a Windows Explorer Shell Extension and provides context menus for
 source control operations. TortoiseSVN will also optionally install the command line tools, which allow you to use Subversion from cmd.exe or PowerShell. Let's take a quick tour of Subversion and TortoiseSVN ( see Figures 2 and 3):</p>
<p><img alt="figure 2" src="http://i.msdn.microsoft.com/dd758790.screenshot1(en-us,MSDN.10).jpg">&nbsp;</p>
<p><b>Figure 2 TortoiseSVN File Manager View Showing Overlay Icons</b></p>
<p>You will notice the icon overlays in Figure 2, which is TortoiseSVN indicating the current status of a file/directory. (Green check = no pending changes; red exclamation = pending changes; question mark = not versioned; grey dash = ignored file) If you right
 click on a file/directory, as shown in Figure 3, you can see the TortoiseSVN context menu appear.</p>
<p><img alt="figure 3" src="http://i.msdn.microsoft.com/dd758790.screenshot2(en-us,MSDN.10).jpg"></p>
<p><b>Figure 3 Context Menus for Source Control Operations</b></p>
<h2>Glossary</h2>
<p><b>branch</b>: A temporary development line in a VCS repository. Often used while creating a patch, stabilizing a release (while development on the trunk continues), or experimenting with a new (and disruptive) feature.</p>
<p><b>changeset</b>: Combined set of changes that should be atomically committed to a repository.</p>
<p><b>commit</b>: Send a changeset to the VCS repository.</p>
<p><b>diff</b>: Changes made to a file.</p>
<p><b>merge</b>: Integrating multiple changes into a working copy. The changes can be from a different developer working on the trunk or from another branch.</p>
<p><b>patch</b>: Changeset expressed as a single file that can be electronically sent to another developer.</p>
<p><b>tag</b>: An important milestone in a VCS repository, such as a publicly released version (alpha, beta, full release, or patch). Similar in concept to labels in VSS.</p>
<p><b>trunk</b>: The main development line in a VCS repository.</p>
<p><b>update</b>: Retrieve any changes made to the trunk (or branch) since last update.</p>
<p><b>working copy</b>: Local copy of a project checked out from a VCS repository.</p>
<p>&nbsp;</p>
<h2>Other videos from this article</h2>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a shape="rect" href="http://channel9.msdn.com/posts/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Overview/" shape="rect">
Overview</a></p>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a shape="rect" href="http://channel9.msdn.com/posts/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Source-Control/" shape="rect">
Source control</a></p>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a shape="rect" href="http://channel9.msdn.com/posts/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Inspecting-a-Proj-File/" shape="rect">
Inspecting a project file</a></p>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a shape="rect" href="http://channel9.msdn.com/posts/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Cmd-Line-Build/" shape="rect">
Building from the command line</a></p>
<p>&nbsp;</p>
<h2>Read the full article at &nbsp;<a shape="rect" href="http://msdn.microsoft.com/en-us/magazine/dd758790.aspx" shape="rect">http://msdn.microsoft.com/en-us/magazine/dd758790.aspx</a>
</h2>
 <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/opensource/RSS&WT.dl=0&WT.entryid=Entry:RSSView:543b8da0d766440c87b89deb00dcbeec">]]></description>
      <comments>http://channel9.msdn.com/Blogs/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Source-Control</comments>
      <itunes:summary>
Version Control
All software development projects should use a version control system (VCS) for tracking and coordinating changes to code files and other project artifacts. The size of the project team doesn&#39;t matter as even a single developer benefits from using version
 control. If you are still using ZIP files to track changes to your source, you should reconsider. 
A VCS helps a team coordinate changes to source code and other artifacts during development. If a developer tries to commit changes without updating to the latest version in the repository, the VCS will require the developer to update before committing.
 This will give the developer a chance to resolve any conflicts that may be present. The VCS also prevents one developer from accidentally overwriting the changes made by another developer. 
A VCS also acts as a safety net for developers. If a developer makes a change that breaks the application, the change can easily be reverted by rolling back to a build with the latest known good state in the repository. Even if the change has been committed
 to the repository, it is possible to revert the change. Modern version control systems support branching, merging, and diffing. (For definitions of these and other terms, please take a look at our Glossary.) They can answer questions such as who last changed
 this code, what changes were made, and which other files were modified at the same time. They prevent developers from accidentally overwriting other changes either via edit/merge or a pessimistic locking (also known as checkout) mechanism. Although it sounds
 dangerous at first glance, edit/merge causes less friction on a development team and works better in practice than pessimistic locking. In most cases, merges happen automatically because developers are working on different parts of a code file. If developers
 happen to be working on the same part of the codebase, they should probably be coordinating their efforts somewhere other than the VC</itunes:summary>
      <itunes:duration>480</itunes:duration>
      <link>http://channel9.msdn.com/Blogs/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Source-Control</link>
      <pubDate>Fri, 05 Jun 2009 06:56:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Source-Control</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/100/467686_100x75.jpg" height="75" width="100"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/220/467686_220x165.jpg" height="165" width="220"></media:thumbnail>
      <media:thumbnail url="http://mschnlnine.vo.llnwd.net/d1/ch9/6/8/6/7/6/4/IntroToSvn_large_ch9.png" height="240" width="320"></media:thumbnail>
      <media:thumbnail url="http://mschnlnine.vo.llnwd.net/d1/ch9/6/8/6/7/6/4/IntroToSvn_small_ch9.png" height="64" width="85"></media:thumbnail>
      <media:group>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/6/8/6/7/6/4/IntroToSvn_2MB_ch9.wmv" expression="full" duration="480" fileSize="14548072" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/6/8/6/7/6/4/IntroToSvn_ch9.mp3" expression="full" duration="480" fileSize="3845909" type="audio/mp3" medium="audio"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/6/8/6/7/6/4/IntroToSvn_ch9.mp4" expression="full" duration="480" fileSize="13564045" type="video/mp4" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/6/8/6/7/6/4/IntroToSvn_ch9.wma" expression="full" duration="480" fileSize="7785349" type="audio/x-ms-wma" medium="audio"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/6/8/6/7/6/4/IntroToSvn_ch9.wmv" expression="full" duration="480" fileSize="13240323" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/6/8/6/7/6/4/IntroToSvn_Zune_ch9.wmv" expression="full" duration="480" fileSize="12776303" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="mms://mschnlnine.wmod.llnwd.net/a1809/d1/ch9/6/8/6/7/6/4/IntroToSvn_s_ch9.wmv" expression="full" duration="480" fileSize="201" type="video/x-ms-wmv" medium="video"></media:content>
      </media:group>      
      <enclosure url="http://mschnlnine.vo.llnwd.net/d1/ch9/6/8/6/7/6/4/IntroToSvn_ch9.wmv" length="13240323" type="video/x-ms-wmv"></enclosure>
      <dc:creator>Howard Dierking</dc:creator>
      <itunes:author>Howard Dierking</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Source-Control/RSS</wfw:commentRss>
      <category>ASP.NET</category>
      <category>Brownfield Development</category>
      <category>MSDN Magazine</category>
      <category>OpenSource</category>
      <category>Refactoring</category>
      <category>Source Control</category>
    </item>
  <item>
      <title>Extreme ASP.NET Makeover: Getting Your House in Order - Overview</title>
      <description><![CDATA[
<p>I don’t have to remind everyone that we’re in the middle of a world-wide economic downturn. When the economy is good, it is hard enough to convince your client to re-build an application from scratch. When the economy is bad, it is close to impossible. As
 developers, we’re going to see more push from our clients for evolutionary development of applications rather than wholesale replacement. We will be called upon to improve existing codebases, implement new features, and take these projects in initially unforeseen
 directions.</p>
<p>In this nine-part article series, I will take you on a journey to improve an existing &quot;classic&quot; ASP.NET Web application. By classic, I mean a Web application written in ASP.NET 1.X or 2.0, but before the widespread use of AJAX techniques or ASP.NET MVC.
 In other words, a Web application that you wouldn't be surprised to find running in your corporate data center or somewhere on the internet, or a workhorse of an application that gets the job done, but doesn't necessarily do it in a manner that is maintainable
 or that improves the productivity of its users.</p>
<p>In choosing a suitable Web application, I had a few requirements:</p>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Typical ASP.NET 2.0 codebase </p>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Good quality codebase </p>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Familiar business domain concepts </p>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Real Web application with publicly available source</p>
<p>Based on these requirements, I chose ScrewTurn Wiki, which is available from <a shape="rect" href="http://www.screwturn.eu/" target="_blank" shape="rect">
http://www.screwturn.eu/</a>.</p>
<p>Let me explain why I chose ScrewTurn Wiki.</p>
<p>&nbsp;</p>
<h2>Typical ASP.NET 2.0 Codebase</h2>
<p>I wanted the code to feel familiar so that techniques discussed can be easily transferred to your own codebases. The ScrewTurn Wiki codebase should be familiar to anyone who has ever written an ASP.NET 2.0 Web application—ASPX pages, ASCX controls, master
 pages, dynamic content stored in a database (or files).</p>
<p>&nbsp;</p>
<h2>Good Quality Codebase</h2>
<p>I wanted the code to look like code that any of us could have written last year, last month, or last week. I want to show ways to improve the codebase, not ridicule its inadequacies. The reason for selecting ScrewTurn Wiki is not because it is desperately
 in need of improvement. On the contrary, ScrewTurn Wiki is an overall good codebase and could use improvement the way any quality codebase would benefit from improvement.</p>
<p>&nbsp;</p>
<h2>Familiar Business Domain Concepts</h2>
<p>I wanted to choose a business domain that was easily recognizable and understandable to nearly everyone. Shopping carts and eCommerce sites have been used as examples far too frequently. A stock trading application is not a good choice in the current economy.
 Many other business domains, such as shipping, accounting, and others, simply require too much explanation of core concepts.</p>
<p>&nbsp;</p>
<p>With the success of wikis such as Wikipedia.org, every developer should have at least a passing familiarity with the business domain concepts in a wiki—pages, edits, history, diffs, and similar. I hope that this familiarity makes the code easily approachable
 for a wide developer audience.</p>
<p>&nbsp;</p>
<h2>Real Web Application with Publicly Available Source</h2>
<p>I wanted to improve a real Web application, not some contrived example. Additionally, I wanted to find an application with the source code available so that you could follow along as I refactored the codebase (a code download is available from the MSDN Code
 Gallery). ScrewTurn Wiki has a public Subversion repository and you can get the latest version of the source code from here:</p>
<p>&nbsp;</p>
<p>svn://svn.screwturn.eu/STW/Trunk</p>
<p>&nbsp;</p>
<p>You'll need a Subversion client such as TortoiseSVN, available from http://tortoisesvn.net, to download the latest source.</p>
<p>&nbsp;</p>
<p>Note that I will be starting from the ScrewTurn Wiki 3.0 Beta codebase, &quot;The Trunk&quot; (noted above). Most ScrewTurn Wiki sites are currently running ScrewTurn Wiki 2.0. I felt that it would be more valuable and relevant to work with the latest source code
 rather than a previous version.</p>
<p>&nbsp;</p>
<h2>Other Advantages</h2>
<p>Choosing ScrewTurn Wiki for this series has a number of other advantages:</p>
<p>&nbsp;</p>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; It is the software behind many wikis on the internet</p>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; It was recently included in Microsoft Web Platform Installer v2</p>
<p>As such, many of you have probably heard of ScrewTurn Wiki even if you haven't looked at the source code.</p>
<p>&nbsp;</p>
<p>Another big advantage is that when I contacted ScrewTurn Wiki's author/maintainer, Dario Solera, about using it as the Web application for this article series, he was excited and supportive. When finished with the article series, I will donate all source
 created back to the ScrewTurn Wiki project.</p>
<p>&nbsp;</p>
<h2>The Series</h2>
<p>So what will I be doing to ScrewTurn Wiki in this nine-part series? I will apply a combination of good software engineering practices and integrate new technologies into the existing ScrewTurn Wiki 3.0 codebase. Each article will cover a different type of
 improvement and can be read alone or as part of the larger series. Topics will include everything from build automation/scripting, testing, and refactoring to HTTP handlers/modules, AJAX, jQuery, and ASP.NET MVC. This article will focus on “Brownfield Basics”
 or how to get started with improving an existing application.</p>
<p>&nbsp;</p>
<h2>What is a Brownfield Application?</h2>
<p>Most developers have probably heard the term &quot;greenfield development,&quot; meaning a brand new project without any existing source code. The project is a clean slate on which you can make your mark as an architect, developer, or designer. It is your own personal
 playground.</p>
<p>&nbsp;</p>
<p>So what is brownfield? Wikipedia defines brownfield as:</p>
<p>&nbsp;</p>
<p>...land <i>previously used for industrial purposes, or certain commercial uses, and that may be contaminated by low concentrations of hazardous waste or pollution and has the potential to be reused once it is cleaned up.</i></p>
<p>&nbsp;</p>
<p>&nbsp;In software development terms, a brownfield application is an existing application which is developmentally hindered by poorly implemented practices, but has the potential for improvement. Poor practices might sound overly harsh, but almost every project
 can improve its software development practices in one way or another. When starting (or continuing) work on an existing application, we should consider the current practices implemented on the project and how they can be improved. I will examine ScrewTurn
 Wiki in light of some brownfield basics. (For a deeper look at brownfield development, I recommend Brownfield Application Development in .NET by Kyle Baley and Donald Belcham.)</p>
<p>&nbsp;</p>
<h2>Brownfield Basics</h2>
<p>There are some fundamental software engineering principles that every project should adopt, regardless of the particular methodology to which you might subscribe. They are:</p>
<p>1.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Version control</p>
<p>2.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Issue tracking</p>
<p>3.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Automated, self-contained builds</p>
<p>4.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Automated testing</p>
<p>&nbsp;</p>
<p>In the rest of this article, we will discuss the first three. Automated testing will be the topic of the next article.</p>
<p>&nbsp;</p>
<h2>Other videos from this article</h2>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a shape="rect" href="http://channel9.msdn.com/posts/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Overview/" shape="rect">
Overview</a></p>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a shape="rect" href="http://channel9.msdn.com/posts/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Source-Control/" shape="rect">
Source control</a></p>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a shape="rect" href="http://channel9.msdn.com/posts/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Inspecting-a-Proj-File/" shape="rect">
Inspecting a project file</a></p>
<p>·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a shape="rect" href="http://channel9.msdn.com/posts/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Cmd-Line-Build/" shape="rect">
Building from the command line</a></p>
<p>&nbsp;</p>
<h2>Read the full article at &nbsp;<a shape="rect" href="http://msdn.microsoft.com/en-us/magazine/dd758790.aspx" shape="rect">http://msdn.microsoft.com/en-us/magazine/dd758790.aspx</a>
</h2>
 <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/opensource/RSS&WT.dl=0&WT.entryid=Entry:RSSView:06c536032aaf44039e019deb00dcc268">]]></description>
      <comments>http://channel9.msdn.com/Blogs/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Overview</comments>
      <itunes:summary>
I don’t have to remind everyone that we’re in the middle of a world-wide economic downturn. When the economy is good, it is hard enough to convince your client to re-build an application from scratch. When the economy is bad, it is close to impossible. As
 developers, we’re going to see more push from our clients for evolutionary development of applications rather than wholesale replacement. We will be called upon to improve existing codebases, implement new features, and take these projects in initially unforeseen
 directions. 
In this nine-part article series, I will take you on a journey to improve an existing &amp;quot;classic&amp;quot; ASP.NET Web application. By classic, I mean a Web application written in ASP.NET 1.X or 2.0, but before the widespread use of AJAX techniques or ASP.NET MVC.
 In other words, a Web application that you wouldn&#39;t be surprised to find running in your corporate data center or somewhere on the internet, or a workhorse of an application that gets the job done, but doesn&#39;t necessarily do it in a manner that is maintainable
 or that improves the productivity of its users. 
In choosing a suitable Web application, I had a few requirements: 
&#183;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Typical ASP.NET 2.0 codebase  
&#183;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Good quality codebase  
&#183;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Familiar business domain concepts  
&#183;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Real Web application with publicly available source 
Based on these requirements, I chose ScrewTurn Wiki, which is available from 
http://www.screwturn.eu/. 
Let me explain why I chose ScrewTurn Wiki. 
&amp;nbsp; 
Typical ASP.NET 2.0 Codebase
I wanted the code to feel familiar so that techniques discussed can be easily transferred to your own codebases. The ScrewTurn Wiki codebase should be familiar to anyone who has ever written an ASP.NET 2.0 Web application—ASPX pages, ASCX controls, master
 pages, dynamic c</itunes:summary>
      <itunes:duration>265</itunes:duration>
      <link>http://channel9.msdn.com/Blogs/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Overview</link>
      <pubDate>Fri, 05 Jun 2009 06:56:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Overview</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/100/467664_100x75.jpg" height="75" width="100"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/220/467664_220x165.jpg" height="165" width="220"></media:thumbnail>
      <media:thumbnail url="http://mschnlnine.vo.llnwd.net/d1/ch9/4/6/6/7/6/4/ScrewTurnWikiTour_large_ch9.png" height="240" width="320"></media:thumbnail>
      <media:thumbnail url="http://mschnlnine.vo.llnwd.net/d1/ch9/4/6/6/7/6/4/ScrewTurnWikiTour_small_ch9.png" height="64" width="85"></media:thumbnail>
      <media:group>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/4/6/6/7/6/4/ScrewTurnWikiTour_2MB_ch9.wmv" expression="full" duration="265" fileSize="17268736" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/4/6/6/7/6/4/ScrewTurnWikiTour_ch9.mp3" expression="full" duration="265" fileSize="2126419" type="audio/mp3" medium="audio"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/4/6/6/7/6/4/ScrewTurnWikiTour_ch9.mp4" expression="full" duration="265" fileSize="10086869" type="video/mp4" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/4/6/6/7/6/4/ScrewTurnWikiTour_ch9.wma" expression="full" duration="265" fileSize="4303713" type="audio/x-ms-wma" medium="audio"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/4/6/6/7/6/4/ScrewTurnWikiTour_ch9.wmv" expression="full" duration="265" fileSize="9399033" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/4/6/6/7/6/4/ScrewTurnWikiTour_Zune_ch9.wmv" expression="full" duration="265" fileSize="9271013" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="mms://mschnlnine.wmod.llnwd.net/a1809/d1/ch9/4/6/6/7/6/4/ScrewTurnWikiTour_s_ch9.wmv" expression="full" duration="265" fileSize="215" type="video/x-ms-wmv" medium="video"></media:content>
      </media:group>      
      <enclosure url="http://mschnlnine.vo.llnwd.net/d1/ch9/4/6/6/7/6/4/ScrewTurnWikiTour_ch9.wmv" length="9399033" type="video/x-ms-wmv"></enclosure>
      <dc:creator>Howard Dierking</dc:creator>
      <itunes:author>Howard Dierking</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/howarddierking/Extreme-ASPNET-Makeover-Getting-Your-House-in-Order-Overview/RSS</wfw:commentRss>
      <category>ASP.NET</category>
      <category>Brownfield Development</category>
      <category>MSDN Magazine</category>
      <category>OpenSource</category>
      <category>Refactoring</category>
    </item>
  <item>
      <title>Umbraco CMS</title>
      <description><![CDATA[
<p>&nbsp;&nbsp;&nbsp;&nbsp;Por cortesía de Campus MVP, podemos ver en este screencast de Alberto Población, cómo empezar a trabajar con plantillas y documentos en Umbraco CMS</p>
 <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/opensource/RSS&WT.dl=0&WT.entryid=Entry:RSSView:c62008079a68474485d09deb016f742e">]]></description>
      <comments>http://channel9.msdn.com/Blogs/Daniel+Garzon/Umbraco-CMS</comments>
      <itunes:summary>
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Por cortes&#237;a de Campus MVP, podemos ver en este screencast de Alberto Poblaci&#243;n, c&#243;mo empezar a trabajar con plantillas y documentos en Umbraco CMS 
</itunes:summary>
      <itunes:duration>678</itunes:duration>
      <link>http://channel9.msdn.com/Blogs/Daniel+Garzon/Umbraco-CMS</link>
      <pubDate>Thu, 26 Feb 2009 15:51:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/Daniel+Garzon/Umbraco-CMS</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/100/456490_100x75.jpg" height="75" width="100"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/220/456490_220x165.jpg" height="165" width="220"></media:thumbnail>
      <media:thumbnail url="http://mschnlnine.vo.llnwd.net/d1/ch9/0/9/4/6/5/4/Umbraco_large_ch9.png" height="240" width="320"></media:thumbnail>
      <media:thumbnail url="http://mschnlnine.vo.llnwd.net/d1/ch9/0/9/4/6/5/4/Umbraco_small_ch9.png" height="64" width="85"></media:thumbnail>
      <media:group>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/0/9/4/6/5/4/Umbraco_2MB_ch9.wmv" expression="full" duration="678" fileSize="23293245" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/0/9/4/6/5/4/Umbraco_ch9.mp3" expression="full" duration="678" fileSize="5428581" type="audio/mp3" medium="audio"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/0/9/4/6/5/4/Umbraco_ch9.mp4" expression="full" duration="678" fileSize="17963194" type="video/mp4" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/0/9/4/6/5/4/Umbraco_ch9.wma" expression="full" duration="678" fileSize="10978599" type="audio/x-ms-wma" medium="audio"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/0/9/4/6/5/4/Umbraco_ch9.wmv" expression="full" duration="678" fileSize="18457509" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/0/9/4/6/5/4/Umbraco_Zune_ch9.wmv" expression="full" duration="678" fileSize="17689489" type="video/x-ms-wmv" medium="video"></media:content>
      </media:group>      
      <enclosure url="http://mschnlnine.vo.llnwd.net/d1/ch9/0/9/4/6/5/4/Umbraco_ch9.wmv" length="18457509" type="video/x-ms-wmv"></enclosure>
      <dc:creator>Daniel Garzon</dc:creator>
      <itunes:author>Daniel Garzon</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/Daniel+Garzon/Umbraco-CMS/RSS</wfw:commentRss>
      <category>CMS</category>
      <category>es-es</category>
      <category>OpenSource</category>
      <category>Spain</category>
      <category>Spanish</category>
    </item>
  <item>
      <title>Instalar BlogEngine.net</title>
      <description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;Por cortesía de Campus MVP, podemos ver en este screencast de Alberto Población, cómo instalar de forma rápida y sencilla el conocido motor de blogs BlogEngine.net
<br>
<br>
<br>
Recursos:&nbsp;
<div>•BlogEngine.net</div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;<a shape="rect" href="http://dotnetblogengine.net" shape="rect">http</a><a shape="rect" href="http://dotnetblogengine.net/" shape="rect">://</a><a shape="rect" href="http://dotnetblogengine.net/" shape="rect">dotnetblogengine.net</a></p>
 <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/opensource/RSS&WT.dl=0&WT.entryid=Entry:RSSView:fd16bfb911024114b8699deb016f77dd">]]></description>
      <comments>http://channel9.msdn.com/Blogs/Daniel+Garzon/Instalar-BlogEnginenet</comments>
      <itunes:summary>&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Por cortes&#237;a de Campus MVP, podemos ver en este screencast de Alberto Poblaci&#243;n, c&#243;mo instalar de forma r&#225;pida y sencilla el conocido motor de blogs BlogEngine.net



Recursos:&amp;nbsp;
•BlogEngine.net
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;http://dotnetblogengine.net 
</itunes:summary>
      <itunes:duration>465</itunes:duration>
      <link>http://channel9.msdn.com/Blogs/Daniel+Garzon/Instalar-BlogEnginenet</link>
      <pubDate>Thu, 26 Feb 2009 15:50:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/Daniel+Garzon/Instalar-BlogEnginenet</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/100/456488_100x75.jpg" height="75" width="100"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/previewImages/220/456488_220x165.jpg" height="165" width="220"></media:thumbnail>
      <media:thumbnail url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/4/6/5/4/BlogEngine_large_ch9.png" height="240" width="320"></media:thumbnail>
      <media:thumbnail url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/4/6/5/4/BlogEngine_small_ch9.png" height="64" width="85"></media:thumbnail>
      <media:group>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/4/6/5/4/BlogEngine_2MB_ch9.wmv" expression="full" duration="465" fileSize="20006342" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/4/6/5/4/BlogEngine_ch9.mp3" expression="full" duration="465" fileSize="3722054" type="audio/mp3" medium="audio"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/4/6/5/4/BlogEngine_ch9.mp4" expression="full" duration="465" fileSize="13558135" type="video/mp4" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/4/6/5/4/BlogEngine_ch9.wma" expression="full" duration="465" fileSize="7530007" type="audio/x-ms-wma" medium="audio"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/4/6/5/4/BlogEngine_ch9.wmv" expression="full" duration="465" fileSize="14232231" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/4/6/5/4/BlogEngine_Zune_ch9.wmv" expression="full" duration="465" fileSize="13800211" type="video/x-ms-wmv" medium="video"></media:content>
      </media:group>      
      <enclosure url="http://mschnlnine.vo.llnwd.net/d1/ch9/8/8/4/6/5/4/BlogEngine_ch9.wmv" length="14232231" type="video/x-ms-wmv"></enclosure>
      <dc:creator>Daniel Garzon</dc:creator>
      <itunes:author>Daniel Garzon</itunes:author>
      <slash:comments>3</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/Daniel+Garzon/Instalar-BlogEnginenet/RSS</wfw:commentRss>
      <category>Blogs</category>
      <category>es-es</category>
      <category>OpenSource</category>
      <category>Spain</category>
      <category>Spanish</category>
    </item>    
</channel>
</rss>