<?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/"
	>

<channel>
	<title>Elegant Code &#187; Microsoft</title>
	<atom:link href="http://elegantcode.com/tag/microsoft/feed/" rel="self" type="application/rss+xml" />
	<link>http://elegantcode.com</link>
	<description></description>
	<lastBuildDate>Tue, 15 May 2012 10:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Code Cast 13 &#8211; Microsoft Patterns and Practices</title>
		<link>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=code-cast-13-microsoft-patterns-and-practices</link>
		<comments>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 04:14:00 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[CodeCast]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Code Cast]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Patterns and Practices]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/</guid>
		<description><![CDATA[Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&#38;P, what P&#38;P has to offer the community, and forthcoming products from the team. Show [...]]]></description>
			<content:encoded><![CDATA[<a href="http://microsoftpdc.com/" target="_blank"><img src="http://www.microsoftpdc.com/Images/BlogBling/Bling3.jpg" alt="" align="right" /></a> Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&amp;P, what P&amp;P has to offer the community, and forthcoming products from the team.

<strong>Show Links</strong>
<ul>
	<li><a href="http://blogs.msdn.com/agile/">Grigori Melnik’s Blog</a></li>
	<li><a href="http://blogs.msdn.com/ajoyk/">Ajoy Krishnamoorthy’s Blog</a></li>
	<li><a href="http://msdn.microsoft.com/practices">Microsoft P&amp;P Team Site</a></li>
	<li><a href="http://codeplex.com/TestingGuidance">Acceptance Test Engineering Guidance</a></li>
	<li><a href="http://channel9.msdn.com/posts/Charles/Tour-Patterns-and-Practices-Lab/">P&amp;P Team Room Video</a></li>
	<li><a href="http://msdn.microsoft.com/en-us/practices/bb232643.aspx">P&amp;P Upcoming Releases</a></li>
	<li><a href="http://www.pnpsummit.com/_practices.aspx">Patterns and Practices Summit</a>, November 3-7, 2008</li>
</ul>
<a href="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3">Download the episode MP3</a>

<a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=271207118"><img src="http://elegantcode.com/cast/files/images/itunes_button.gif" border="0" alt="View in iTunes" /></a> <a href="http://feeds.feedburner.com/elegantcodecast"><img src="http://elegantcode.com/cast/files/images/rss_podcast.jpg" border="0" alt="Any Podcatcher" /></a>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:103d8226-f879-4268-877a-01eac008542a" class="wlWriterSmartContent" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/Micrososft+P%26P">Micrososft P&amp;P</a>,<a rel="tag" href="http://technorati.com/tags/Agile">Agile</a>,<a rel="tag" href="http://technorati.com/tags/Patterns+and+Practices">Patterns and Practices</a>,<a rel="tag" href="http://technorati.com/tags/.Net">.Net</a></div>
<img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=39d5550f-2b51-4176-8f5c-cd4d82122c93" alt="" />]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3" length="31363377" type="audio/mpeg" />
		</item>
		<item>
		<title>Microsoft&#8217;s ALM Story</title>
		<link>http://elegantcode.com/2008/06/12/microsofts-alm-story/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=microsofts-alm-story</link>
		<comments>http://elegantcode.com/2008/06/12/microsofts-alm-story/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 04:31:31 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Architecture and Design]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/12/microsofts-alm-story/</guid>
		<description><![CDATA[Microsoft has embraced the idea of Application Lifecycle Management as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. ALM is the enterprise software development holy grail that IBM sought [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft has embraced the idea of <a href="http://en.wikipedia.org/wiki/Application_Lifecycle_Management" target="_blank">Application Lifecycle Management</a> as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. </p> <p>ALM is the enterprise software development holy grail that IBM sought for years and invested in with the <a href="http://www-306.ibm.com/software/rational/" target="_blank">Rational tools</a>. And although there is a tremendous value in prescriptive guidance in enterprise development models, there is a natural tension between the ALM crowd and <em>Development as a Craft</em> advocates. ALM, after all, is all about quantifying, measuring, predicting, planning, and economies of scale. Ironically, the kind of transparency and predictability called for by the minimalist Agile community is the same goal of ALM tooling offered by Big Blue and now by the new blue in Redmond.</p> <p>How are Microsoft products staged to lay across the ALM model? The story today is mixed.</p> <table cellspacing="0" cellpadding="2" width="366" border="1"> <tbody> <tr> <td valign="top" width="160"><strong>ALM Principle</strong></td> <td valign="top" width="204"><strong>MS Product Answer</strong></td></tr> <tr> <td valign="top" width="176">Project Management</td> <td valign="top" width="213">Portfolio Server, Project Server, MS Project</td></tr> <tr> <td valign="top" width="181">Project Tacking</td> <td valign="top" width="214">TFS, MS Project</td></tr> <tr> <td valign="top" width="184">Requirements Planning</td> <td valign="top" width="213">3rd Party Solutions</td></tr> <tr> <td valign="top" width="185">Design and Development</td> <td valign="top" width="212">Visio, Visual Studio</td></tr> <tr> <td valign="top" width="186">Quality Assurance</td> <td valign="top" width="211">Visual Studio</td></tr> <tr> <td valign="top" width="187">Release Management</td> <td valign="top" width="211">System Center, Team Build</td></tr> <tr> <td valign="top" width="187">Helpdesk</td> <td valign="top" width="211">SharePoint?</td></tr></tbody></table> <p>Your familiarity with these products may lead you to the same conclusion that many have already reached. The products in the stack currently fail to integrate cleanly and many provide only a starting taste of the functionality needed to realize the ALM vision. The story is obviously a little muddy today. But what's next?</p> <p>Team System Rosario promises much improvement in the areas of tracking, design, quality assurance, and development. Significant bridges are also being started toward improving the release management story.</p> <p>That won't do it all, of course. There are other pieces needed in the stack that will need to be freshened up including operational support tools. Microsoft is in hot pursuit of filling this gap with a host of products under the <a href="http://www.microsoft.com/systemcenter/en/us/products.aspx" target="_blank">System Center umbrella of products</a>. An actual helpdesk management system to displace the TechExcels and Remedys of the world is essential here.</p> <p>The point is, MS has its sights set on a complete ALM story and are focusing on the midsize market, as Microsoft is so good at doing. </p> <h2>The Good</h2> <p>A focus on ALM in the Microsoft stack will have a tremendous impact on software development and delivery as we know it. Interoperable components in the pipeline will help bridge those gaps in midsize organizations that are typically only filled in large enterprises. Transparency will be ubiquitous.</p> <p>Given the open nature of products being developed at MS these days, I have high hopes that these systems will truly be pluggable, so that if you want to bridge TFS to Remedy (for example) doing so is not rocket surgery. Web services are great, aren't they?</p> <h2>Concerns</h2> <p>There is a fine line between managing for predictability and 'command and control'. Tools like those in this stack are like guns. They can be used for good, but misuse is more common than not. </p> <p>Tooling like this gives every non-tool Agilist out there genuine pause, and with good reason. The history of stewardship in complex models like this is less than stellar. That is to say, this tooling can provide huge value, and the basis for crushing souls. Let's be careful how we wield them.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/12/microsofts-alm-story/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008 Day 2</title>
		<link>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-2</link>
		<comments>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 02:47:34 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/</guid>
		<description><![CDATA[Elegant Code Cast With Ward Bell Ward Bell is the Vice President of Product Management at IdeaBlade, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&#160; Ward was good enough to [...]]]></description>
			<content:encoded><![CDATA[<h2>Elegant Code Cast With Ward Bell</h2> <p><a href="http://neverindoubtnet.blogspot.com/" target="_blank">Ward Bell</a> is the Vice President of Product Management at <a href="http://ideablade.com" target="_blank">IdeaBlade</a>, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&nbsp; Ward was good enough to share 30 minutes or so on the mics and you'll be hearing hi interview on the Elegant Code Cast in the weeks to come.</p> <h2>Platforms for SOA and Business Process Management: Comparing .NET and Java</h2> <p><a href="http://davidchappell.com" target="_blank"><img height="145" src="http://www.davidchappell.com/EMAIL_images/the_man.jpg" width="122" align="right" border="0"></a>This session looks at the worlds of Java and .Net while paying particular attention to the problems found in the ESB space. For example, how does each stack solve for workflow, rules, messaging, etc.</p> <p><a href="http://davidchappell.com/" target="_blank">David Chappell</a> has presented this session at the Java One conference, so it is important to remember that this information as been vetted through the Java community.</p> <p>The basic message came down to this: Sun's stewardship of Java has promoted a fragmentation of technologies implemented in the Java language. This is great news for MS, who provides a unified stack of solutions in these spaces. The presenter asked the room this question, "Who believes that many solutions to workflow is good for the Java community?" About half the room went one way, the other half went another.</p> <p>This gets to the core truth of the whole 1 vs. many solution discussion. Developers obviously love choice in their tools. After all, developers like to tinker and play with new technologies. Are these people also the ones most capable of making core platforms decisions for an enterprise? Typically not, because there is a bias toward new technology adoption over uniform practices.</p> <p>As an example, the speaker told a story:</p> <blockquote> <p>A Java developer asked him at a conference, "Help me construct an argument for my management to get permission for me to use Spring."</p> <p>"Why do you want to use Spring?" asked David.</p> <p>"Because it's cool, man," answered the developer. "I want to play with it because everyone knows it is a better way to write applications."</p> <p>"You should be fired," he answered.</p></blockquote> <p>The point here is that executives and logical decision makers who choose platforms are interested in the long game, not what technology is cool. Can I depend on vendor support? Will the product continue to evolve and grow? These are the questions that yearn for an answer of a unified platform that can be depended on to carry the business forward.</p> <p>David actually cited the Garter quote that predicts the ultimate death of the J2EE platform in favor of vendor supported Java platforms by IBM and Oracle. If that actually comes to fruition, it is fascinating not just for its technical implications, but also for the comment this makes on the ultimate viability of community-based technology stewardship.</p> <p>Maybe this 3 legged race of IBM v. Oracle v. MS offers an easier soup to stir than one consisting of many open source implementations. Interesting talk. The most interesting part of that discussion is the notable absence of Sun as a player in the Java discussion. What a weird world.</p> <p>My favorite quote of the session, "Model Driven Architecture is where the rubber meets the sky." Awesome. This comment on the huge abstraction of MDA feels right on.</p> <h2>FDD With Team System</h2> <p><a href="http://weblogs.asp.net/JSemeniuk/" target="_blank">Joel Semenuik</a> provided a great overview of how his organization uses a formal Feature Driven Development process in conjunction with Scrum to deliver software. They do this using of Team System, which is no surprise since Joel is the co-author of <a href="http://www.amazon.com/Managing-Projects-Microsoft-Visual-Pro-Developer/dp/0735622167/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1212632983&amp;sr=1-1">Managing Projects with Microsoft Visual Studio Team System</a> with Martin Danner. </p> <p>I later learned from Martin, who used to be my office mate, that he and Joel are sponsoring a CodePlex project to aggregate open source process templates. What a nice idea! One stop shopping for process templates. I went hunting for it, but couldn't find it on CodePlex yet.</p> <h2>How I Became a Team Build Muscle Man</h2> <p>Steve Borg blew packing material all over me when the build failed in his demo. To be more precise, he had a build monitor application hooked to a fan that blew packing peanuts all over me when his build failed. Nice. It tok 10 minutes to get all the stic clingy bits off me.</p> <p>Anyway, Steve ran through a demo on using Team Build for CI and for deployment. It was pretty good, although I think many of us could have done without the Richard Simmons imitation. :)</p> <p><strong>Deploying to IIS</strong></p> <p>Steve used the MSBuild tasks found in the <a href="http://www.codeplex.com/sdctasks" target="_blank">SDC CodePlex project</a> to deploy his web application to IIS on a deployment and smoke test machine. </p> <p><strong>Deploying SQL Data</strong></p> <p>Even better, he used Visual Studio 2008 DB Pro to create a DB sample data loading script and deployed that to his test DB server via the SDC task DeployDatabase. This ensures that his web tests will always be run against his app with the same underlying data. This makes writing and running automated web tests as part of your build MUCH easier.</p> <p><strong>Misc</strong></p> <p>Also in 2008, we get the new BuildStep task that we can use to emote nice messages into our build log to provide some debugging information. Handy.</p> <p>Implement the ITask interface to create your own tasks BTW. This is easy, I've actually done it!</p> <p>WIX (Windows Installer for XML) is an open source tool that MS actually wrote and released to CodePlex. It is a nice little tool that helps us build MSI installers for our application. This utility is actually used by MS to create their installers like the MS Office and other binaries. This is basically a Visual Studio project that works like MAKE, but better. You can use WIX to accomplish all kinds of things like prepping your target machine's dependencies as part of the MSI. Nice.</p> <h2>Source Control Branching Strategies</h2> <p>This was a great after-hours Birds of a Feather session that deserves a post of its own and will get it. </p> <p>Here's the takeaway: <em>I had no idea source control strategy was a religious issue or that one can see an organization's dysfunction in a source control system's folder structure. </em></p> <p>Now I know.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008, Day 1</title>
		<link>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-1</link>
		<comments>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 01:03:17 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/</guid>
		<description><![CDATA[Keynote by Bill Gates and a cast of Microsoft Executives Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF. Brian Harry on TFS Now and Future This was a great session. I know we are all tired of hearing it, but Rosario really is [...]]]></description>
			<content:encoded><![CDATA[<h2>Keynote by Bill Gates and a cast of Microsoft Executives</h2> <p>Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF.</p> <h2>Brian Harry on TFS Now and Future</h2> <p>This was a great session. I know we are all tired of hearing it, but Rosario really is the release of TFS that will be the ONE. We are all struggling with Work Items and being able to manage our work the way we actually think of our work.</p> <p>The one question I posed was simply how may an organization manage one single backlog of work within TFS and parse out that work to separate teams? The answer is that for right now, there isn't a good story here. I will be blogging later in the summer about how I am solving for this in our organization.</p> <h2>Open Q&amp;A on TFS - Jeff Levinson</h2> <p>Jeff is a Team System MVP and trainer and consultant for <a href="http://www.nwcadence.com/" target="_blank">NW Cadence</a>. He talked people through a lot of the typical questions that get asked soon after you install TFS in your organization.</p> <ol> <li>What source control branching model makes sense for me?  <li>How can I customize my work items?  <li>What's in the service packs?  <li>How should I deploy for my build environments?</li></ol> <p>You get the idea. Here are some likeable nuggets I took away from this session.</p> <ul> <li>If you are installing TFS into an organization with fewer than 500 active developers, install it all on one box.<br><br>I have installed on one machine for simplicity's sake and recommend the same model , but I had no idea the scalability of that model went as high as 500. Jeff claims that this kind of load will only flutter the CPU. Bear in mind, though: This is NOT regarding the build machine. Build machines need to be separate and preferably virtual. <br> <li>Microsoft will be paying closer attention to X in Rosario. X can equal any of these things:  <ul> <li>Project server integration  <li>Portfolio server integration  <li>Query-able link control in work items  <li>Tooling for testers, and that doesn't mean test tools for developers.</li></ul></li></ul> <h2>Application Lifecycle Management Panel Discussion</h2> <p>An entire stage of Team System MVPs, discussing Application Lifecycle Management. Rich Hundhausen, Jeff Levinson, Mike Azocar, Steve Borg, Jeff Beehler,&nbsp; Mickey Gousset, and several others.</p> <p>This is about ALM which includes all phases of the lifecycle, so how are we helped by rapid delivery.</p> <p>I only asked one question of the panel. "What's the view forward for integrating the entire ownership lifecycle? Don't we really need tooling like support in TFS for System Center to get where you are all talking about?"</p> <p>Answer: It turns out that MS is solving for different phases of the overall ALM problem at different phases with different tools. TFS for developers, System Center for I.T., Project and Portfolio Server for the business folks. What ties it all together? Nothing yet. Maybe BizTalk will do the trick, eh? Right.</p> <h2>Scrum-tastic Process Template</h2> <p>Presented by, Mike Azocar, the author and project manager of the actual <a href="http://www.codeplex.com/VSTSScrum" target="_blank">CodePlex project</a> for the Light Weight Scrum Process Template for Team System (whew).</p> <p>I am particularly interested in this work because of the aforementioned focus I have on customizing the <a href="http://scrumforteamsystem.com/en/default.aspx" target="_blank">Scrum process template from Conchango</a>.</p> <p>Nuggets:</p> <ul> <li>An interactive system can never be fully specified - Wagner's Law  <li>Scrum is appealing to many organizations because it is:  <ul> <li>Simple  <li>Free  <li>Transparent  <li>Common sense</li></ul> <li>"No one runs beyond 3 or 4 sprints before changing their out-of-the-box process template." - Mike</li></ul> <h2>Lastly</h2> <p>Keep a watch on <a href="http://msdn.microsoft.com/en-us/events/teched/cc676818.aspx" target="_blank">this page</a>, which hosts videos from the Tech Ed floor. </p> <p>Oh, and I met Richard Campbell of <a href="http://dotnetrocks.com/" target="_blank">DotNetRocks</a>. I told him it was sort of like meeting Madonna. He asked me not to follow him into the bathroom.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Programmability Advisory Council</title>
		<link>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-programmability-advisory-council</link>
		<comments>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 07:41:55 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/data-programmability-advisory-council/</guid>
		<description><![CDATA[Danny Simmons posted some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out: One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">Danny Simmons posted</a> some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out:</p>
<!--more-->
 <blockquote> <p>One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable credentials in that area. </p> <p>Eric Evans - <a href="http://www.domainlanguage.com/about/ericevans.html">http://www.domainlanguage.com/about/ericevans.html</a><br>Stephen Forte - <a href="http://www.stephenforte.net/">http://www.stephenforte.net/</a><br>Martin Fowler - <a href="http://martinfowler.com/">http://martinfowler.com/</a><br>Pavel Hruby - <a href="http://www.phruby.com/">http://www.phruby.com/</a><br>Jimmy Nilsson - <a href="http://jimmynilsson.com/">http://jimmynilsson.com/</a></p></blockquote> <p>Yes... I had to take a second look myself. That's an impressive list I say!  <p>Its just words on a web page at this point, but I think this speaks loud and clear that MS is listening to all the valuable constructive criticism that has been given from the community. I commend the Data Programmability team for making such a great move, but mostly all those who have stepped up to provide their insight.  <p>Along with this announcement, Danny is also requesting that folks continue to <a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">keep providing feedback.</a>  <p>Frickin' <em>sweet!</em>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Future of .NET</title>
		<link>http://elegantcode.com/2008/06/02/the-future-of-net/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-future-of-net</link>
		<comments>http://elegantcode.com/2008/06/02/the-future-of-net/#comments</comments>
		<pubDate>Mon, 02 Jun 2008 18:17:40 +0000</pubDate>
		<dc:creator>Jan Van Ryswyck</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/02/the-future-of-net/</guid>
		<description><![CDATA[That's the title of the latest .NET Rocks episode. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out maintainability, maintainability, maintainability! Let the ASP.NET MVC framework be your first [...]]]></description>
			<content:encoded><![CDATA[<p>That's the title of <a href="http://www.dotnetrocks.com/default.aspx?showNum=346" target="_blank">the latest .NET Rocks episode</a>. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out <a href="http://vanryswyckjan.blogspot.com/2007/01/maintainable-code.html" target="_blank">maintainability</a>, <a href="http://codebetter.com/blogs/jeremy.miller/archive/2006/12/06/On-Writing-Maintainable-Code.aspx" target="_blank">maintainability</a>, <a href="http://elegantcode.com/2008/03/30/elegant-code-essay-contest-winner/" target="_blank">maintainability</a>! Let the ASP.NET MVC framework be your first big success and your guide on the path for providing us developers some tools and most important, some patterns &amp; practices for creating more maintainable software.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/02/the-future-of-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2008 Service Pack 1 &#8211; BETA</title>
		<link>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=visual-studio-2008-service-pack-1-beta</link>
		<comments>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/#comments</comments>
		<pubDate>Fri, 09 May 2008 17:25:43 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/</guid>
		<description><![CDATA["With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement [...]]]></description>
			<content:encoded><![CDATA[<p><em>"</em>With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement in the client-side script tooling including JavaScript IntelliSense. Additionally, full support for SQL Server 2008, the ADO.NET Entity Framework and performance improvements for the IDE make Service Pack 1 a great release across the board.</p> <p>The .NET Framework 3.5 Service Pack 1 delivers more controls, a streamlined setup, improved start-up performance, and powerful new graphics features for client development and rich data scaffolding, improved AJAX support, and other improvements for Web development. Additionally it introduces the ADO.NET Entity Framework and ADO.NET Data Services, which simplify data access code in applications by providing an extensible, conceptual model for data from any data source and enabling this model to closely reflect business requirements.<em>"</em>  <p><em>IF YOU HAVE INSTALLED SILVERLIGHT TOOLS make sure you remove them, and <strong>make sure you also remove KB949325</strong>. See </em><a href="http://www.hanselman.com/blog/VS2008AndNet35SP1BetaShouldYouFearThisRelease.aspx"><em>Hanselman</em></a><em>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> or </em><a href="http://blogs.msdn.com/webdevtools/archive/2008/05/12/error-installing-visual-studio-2008-sp1-beta-and-silverlight-tools-beta-1.aspx"><em>here</em></a><em>.</em> <p>Read more on <a href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx">MSDN</a>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> and <a href="http://blogs.msdn.com/somasegar/archive/2008/05/12/visual-studio-2008-and-net-fx-3-5-sp1-beta-available-now.aspx">Somasegar</a><a href="http://go.microsoft.com/fwlink/?LinkId=119125"></a></p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MS Developer Goodness in Boise on Monday</title>
		<link>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ms-developer-goodness-in-boise-on-monday</link>
		<comments>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 16:17:04 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/</guid>
		<description><![CDATA[MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got [...]]]></description>
			<content:encoded><![CDATA[<p>MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got the not-so-sexy session, but I am spending all day today (and much of the last week) learning about VSTO so that I can share it with you tomorrow.</p>  <p>There are over 350 people registered for the developer track already. Come on down. <a href="http://www.microsoft.com/heroeshappenhere/events/Boise/default.mspx">Register here</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DI hooks in the Framework?</title>
		<link>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=di-mocking-hooks-in-the-framework</link>
		<comments>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/#comments</comments>
		<pubDate>Sat, 26 Apr 2008 04:01:33 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/</guid>
		<description><![CDATA[Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the Managed Extensibility [...]]]></description>
			<content:encoded><![CDATA[<p>Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the <b></b><a href="http://blogs.msdn.com/kcwalina/archive/2008/04/25/MEF.aspx" target="_blank">Managed Extensibility Framework (MEF)</a> can provide you with the best extension points in the .Net Framework. Wow, this is exciting news.</p> <p>On a related note, I heard some rumblings that some future releases (such as v4.0 Asp.Net) will ship with all the unit tests! </p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unity 1.0 EventBroker Sample CAB Style</title>
	<atom:link href="http://elegantcode.com/tag/microsoft/feed/" rel="self" type="application/rss+xml" />
	<link>http://elegantcode.com</link>
	<description></description>
	<lastBuildDate>Tue, 15 May 2012 10:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Elegant Code &#187; Microsoft</title>
	<atom:link href="http://elegantcode.com/tag/microsoft/feed/" rel="self" type="application/rss+xml" />
	<link>http://elegantcode.com</link>
	<description></description>
	<lastBuildDate>Tue, 15 May 2012 10:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Code Cast 13 &#8211; Microsoft Patterns and Practices</title>
		<link>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=code-cast-13-microsoft-patterns-and-practices</link>
		<comments>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 04:14:00 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[CodeCast]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Code Cast]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Patterns and Practices]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/</guid>
		<description><![CDATA[Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&#38;P, what P&#38;P has to offer the community, and forthcoming products from the team. Show [...]]]></description>
			<content:encoded><![CDATA[<a href="http://microsoftpdc.com/" target="_blank"><img src="http://www.microsoftpdc.com/Images/BlogBling/Bling3.jpg" alt="" align="right" /></a> Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&amp;P, what P&amp;P has to offer the community, and forthcoming products from the team.

<strong>Show Links</strong>
<ul>
	<li><a href="http://blogs.msdn.com/agile/">Grigori Melnik’s Blog</a></li>
	<li><a href="http://blogs.msdn.com/ajoyk/">Ajoy Krishnamoorthy’s Blog</a></li>
	<li><a href="http://msdn.microsoft.com/practices">Microsoft P&amp;P Team Site</a></li>
	<li><a href="http://codeplex.com/TestingGuidance">Acceptance Test Engineering Guidance</a></li>
	<li><a href="http://channel9.msdn.com/posts/Charles/Tour-Patterns-and-Practices-Lab/">P&amp;P Team Room Video</a></li>
	<li><a href="http://msdn.microsoft.com/en-us/practices/bb232643.aspx">P&amp;P Upcoming Releases</a></li>
	<li><a href="http://www.pnpsummit.com/_practices.aspx">Patterns and Practices Summit</a>, November 3-7, 2008</li>
</ul>
<a href="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3">Download the episode MP3</a>

<a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=271207118"><img src="http://elegantcode.com/cast/files/images/itunes_button.gif" border="0" alt="View in iTunes" /></a> <a href="http://feeds.feedburner.com/elegantcodecast"><img src="http://elegantcode.com/cast/files/images/rss_podcast.jpg" border="0" alt="Any Podcatcher" /></a>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:103d8226-f879-4268-877a-01eac008542a" class="wlWriterSmartContent" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/Micrososft+P%26P">Micrososft P&amp;P</a>,<a rel="tag" href="http://technorati.com/tags/Agile">Agile</a>,<a rel="tag" href="http://technorati.com/tags/Patterns+and+Practices">Patterns and Practices</a>,<a rel="tag" href="http://technorati.com/tags/.Net">.Net</a></div>
<img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=39d5550f-2b51-4176-8f5c-cd4d82122c93" alt="" />]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3" length="31363377" type="audio/mpeg" />
		</item>
		<item>
		<title>Microsoft&#8217;s ALM Story</title>
		<link>http://elegantcode.com/2008/06/12/microsofts-alm-story/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=microsofts-alm-story</link>
		<comments>http://elegantcode.com/2008/06/12/microsofts-alm-story/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 04:31:31 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Architecture and Design]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/12/microsofts-alm-story/</guid>
		<description><![CDATA[Microsoft has embraced the idea of Application Lifecycle Management as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. ALM is the enterprise software development holy grail that IBM sought [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft has embraced the idea of <a href="http://en.wikipedia.org/wiki/Application_Lifecycle_Management" target="_blank">Application Lifecycle Management</a> as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. </p> <p>ALM is the enterprise software development holy grail that IBM sought for years and invested in with the <a href="http://www-306.ibm.com/software/rational/" target="_blank">Rational tools</a>. And although there is a tremendous value in prescriptive guidance in enterprise development models, there is a natural tension between the ALM crowd and <em>Development as a Craft</em> advocates. ALM, after all, is all about quantifying, measuring, predicting, planning, and economies of scale. Ironically, the kind of transparency and predictability called for by the minimalist Agile community is the same goal of ALM tooling offered by Big Blue and now by the new blue in Redmond.</p> <p>How are Microsoft products staged to lay across the ALM model? The story today is mixed.</p> <table cellspacing="0" cellpadding="2" width="366" border="1"> <tbody> <tr> <td valign="top" width="160"><strong>ALM Principle</strong></td> <td valign="top" width="204"><strong>MS Product Answer</strong></td></tr> <tr> <td valign="top" width="176">Project Management</td> <td valign="top" width="213">Portfolio Server, Project Server, MS Project</td></tr> <tr> <td valign="top" width="181">Project Tacking</td> <td valign="top" width="214">TFS, MS Project</td></tr> <tr> <td valign="top" width="184">Requirements Planning</td> <td valign="top" width="213">3rd Party Solutions</td></tr> <tr> <td valign="top" width="185">Design and Development</td> <td valign="top" width="212">Visio, Visual Studio</td></tr> <tr> <td valign="top" width="186">Quality Assurance</td> <td valign="top" width="211">Visual Studio</td></tr> <tr> <td valign="top" width="187">Release Management</td> <td valign="top" width="211">System Center, Team Build</td></tr> <tr> <td valign="top" width="187">Helpdesk</td> <td valign="top" width="211">SharePoint?</td></tr></tbody></table> <p>Your familiarity with these products may lead you to the same conclusion that many have already reached. The products in the stack currently fail to integrate cleanly and many provide only a starting taste of the functionality needed to realize the ALM vision. The story is obviously a little muddy today. But what's next?</p> <p>Team System Rosario promises much improvement in the areas of tracking, design, quality assurance, and development. Significant bridges are also being started toward improving the release management story.</p> <p>That won't do it all, of course. There are other pieces needed in the stack that will need to be freshened up including operational support tools. Microsoft is in hot pursuit of filling this gap with a host of products under the <a href="http://www.microsoft.com/systemcenter/en/us/products.aspx" target="_blank">System Center umbrella of products</a>. An actual helpdesk management system to displace the TechExcels and Remedys of the world is essential here.</p> <p>The point is, MS has its sights set on a complete ALM story and are focusing on the midsize market, as Microsoft is so good at doing. </p> <h2>The Good</h2> <p>A focus on ALM in the Microsoft stack will have a tremendous impact on software development and delivery as we know it. Interoperable components in the pipeline will help bridge those gaps in midsize organizations that are typically only filled in large enterprises. Transparency will be ubiquitous.</p> <p>Given the open nature of products being developed at MS these days, I have high hopes that these systems will truly be pluggable, so that if you want to bridge TFS to Remedy (for example) doing so is not rocket surgery. Web services are great, aren't they?</p> <h2>Concerns</h2> <p>There is a fine line between managing for predictability and 'command and control'. Tools like those in this stack are like guns. They can be used for good, but misuse is more common than not. </p> <p>Tooling like this gives every non-tool Agilist out there genuine pause, and with good reason. The history of stewardship in complex models like this is less than stellar. That is to say, this tooling can provide huge value, and the basis for crushing souls. Let's be careful how we wield them.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/12/microsofts-alm-story/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008 Day 2</title>
		<link>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-2</link>
		<comments>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 02:47:34 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/</guid>
		<description><![CDATA[Elegant Code Cast With Ward Bell Ward Bell is the Vice President of Product Management at IdeaBlade, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&#160; Ward was good enough to [...]]]></description>
			<content:encoded><![CDATA[<h2>Elegant Code Cast With Ward Bell</h2> <p><a href="http://neverindoubtnet.blogspot.com/" target="_blank">Ward Bell</a> is the Vice President of Product Management at <a href="http://ideablade.com" target="_blank">IdeaBlade</a>, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&nbsp; Ward was good enough to share 30 minutes or so on the mics and you'll be hearing hi interview on the Elegant Code Cast in the weeks to come.</p> <h2>Platforms for SOA and Business Process Management: Comparing .NET and Java</h2> <p><a href="http://davidchappell.com" target="_blank"><img height="145" src="http://www.davidchappell.com/EMAIL_images/the_man.jpg" width="122" align="right" border="0"></a>This session looks at the worlds of Java and .Net while paying particular attention to the problems found in the ESB space. For example, how does each stack solve for workflow, rules, messaging, etc.</p> <p><a href="http://davidchappell.com/" target="_blank">David Chappell</a> has presented this session at the Java One conference, so it is important to remember that this information as been vetted through the Java community.</p> <p>The basic message came down to this: Sun's stewardship of Java has promoted a fragmentation of technologies implemented in the Java language. This is great news for MS, who provides a unified stack of solutions in these spaces. The presenter asked the room this question, "Who believes that many solutions to workflow is good for the Java community?" About half the room went one way, the other half went another.</p> <p>This gets to the core truth of the whole 1 vs. many solution discussion. Developers obviously love choice in their tools. After all, developers like to tinker and play with new technologies. Are these people also the ones most capable of making core platforms decisions for an enterprise? Typically not, because there is a bias toward new technology adoption over uniform practices.</p> <p>As an example, the speaker told a story:</p> <blockquote> <p>A Java developer asked him at a conference, "Help me construct an argument for my management to get permission for me to use Spring."</p> <p>"Why do you want to use Spring?" asked David.</p> <p>"Because it's cool, man," answered the developer. "I want to play with it because everyone knows it is a better way to write applications."</p> <p>"You should be fired," he answered.</p></blockquote> <p>The point here is that executives and logical decision makers who choose platforms are interested in the long game, not what technology is cool. Can I depend on vendor support? Will the product continue to evolve and grow? These are the questions that yearn for an answer of a unified platform that can be depended on to carry the business forward.</p> <p>David actually cited the Garter quote that predicts the ultimate death of the J2EE platform in favor of vendor supported Java platforms by IBM and Oracle. If that actually comes to fruition, it is fascinating not just for its technical implications, but also for the comment this makes on the ultimate viability of community-based technology stewardship.</p> <p>Maybe this 3 legged race of IBM v. Oracle v. MS offers an easier soup to stir than one consisting of many open source implementations. Interesting talk. The most interesting part of that discussion is the notable absence of Sun as a player in the Java discussion. What a weird world.</p> <p>My favorite quote of the session, "Model Driven Architecture is where the rubber meets the sky." Awesome. This comment on the huge abstraction of MDA feels right on.</p> <h2>FDD With Team System</h2> <p><a href="http://weblogs.asp.net/JSemeniuk/" target="_blank">Joel Semenuik</a> provided a great overview of how his organization uses a formal Feature Driven Development process in conjunction with Scrum to deliver software. They do this using of Team System, which is no surprise since Joel is the co-author of <a href="http://www.amazon.com/Managing-Projects-Microsoft-Visual-Pro-Developer/dp/0735622167/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1212632983&amp;sr=1-1">Managing Projects with Microsoft Visual Studio Team System</a> with Martin Danner. </p> <p>I later learned from Martin, who used to be my office mate, that he and Joel are sponsoring a CodePlex project to aggregate open source process templates. What a nice idea! One stop shopping for process templates. I went hunting for it, but couldn't find it on CodePlex yet.</p> <h2>How I Became a Team Build Muscle Man</h2> <p>Steve Borg blew packing material all over me when the build failed in his demo. To be more precise, he had a build monitor application hooked to a fan that blew packing peanuts all over me when his build failed. Nice. It tok 10 minutes to get all the stic clingy bits off me.</p> <p>Anyway, Steve ran through a demo on using Team Build for CI and for deployment. It was pretty good, although I think many of us could have done without the Richard Simmons imitation. :)</p> <p><strong>Deploying to IIS</strong></p> <p>Steve used the MSBuild tasks found in the <a href="http://www.codeplex.com/sdctasks" target="_blank">SDC CodePlex project</a> to deploy his web application to IIS on a deployment and smoke test machine. </p> <p><strong>Deploying SQL Data</strong></p> <p>Even better, he used Visual Studio 2008 DB Pro to create a DB sample data loading script and deployed that to his test DB server via the SDC task DeployDatabase. This ensures that his web tests will always be run against his app with the same underlying data. This makes writing and running automated web tests as part of your build MUCH easier.</p> <p><strong>Misc</strong></p> <p>Also in 2008, we get the new BuildStep task that we can use to emote nice messages into our build log to provide some debugging information. Handy.</p> <p>Implement the ITask interface to create your own tasks BTW. This is easy, I've actually done it!</p> <p>WIX (Windows Installer for XML) is an open source tool that MS actually wrote and released to CodePlex. It is a nice little tool that helps us build MSI installers for our application. This utility is actually used by MS to create their installers like the MS Office and other binaries. This is basically a Visual Studio project that works like MAKE, but better. You can use WIX to accomplish all kinds of things like prepping your target machine's dependencies as part of the MSI. Nice.</p> <h2>Source Control Branching Strategies</h2> <p>This was a great after-hours Birds of a Feather session that deserves a post of its own and will get it. </p> <p>Here's the takeaway: <em>I had no idea source control strategy was a religious issue or that one can see an organization's dysfunction in a source control system's folder structure. </em></p> <p>Now I know.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008, Day 1</title>
		<link>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-1</link>
		<comments>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 01:03:17 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/</guid>
		<description><![CDATA[Keynote by Bill Gates and a cast of Microsoft Executives Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF. Brian Harry on TFS Now and Future This was a great session. I know we are all tired of hearing it, but Rosario really is [...]]]></description>
			<content:encoded><![CDATA[<h2>Keynote by Bill Gates and a cast of Microsoft Executives</h2> <p>Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF.</p> <h2>Brian Harry on TFS Now and Future</h2> <p>This was a great session. I know we are all tired of hearing it, but Rosario really is the release of TFS that will be the ONE. We are all struggling with Work Items and being able to manage our work the way we actually think of our work.</p> <p>The one question I posed was simply how may an organization manage one single backlog of work within TFS and parse out that work to separate teams? The answer is that for right now, there isn't a good story here. I will be blogging later in the summer about how I am solving for this in our organization.</p> <h2>Open Q&amp;A on TFS - Jeff Levinson</h2> <p>Jeff is a Team System MVP and trainer and consultant for <a href="http://www.nwcadence.com/" target="_blank">NW Cadence</a>. He talked people through a lot of the typical questions that get asked soon after you install TFS in your organization.</p> <ol> <li>What source control branching model makes sense for me?  <li>How can I customize my work items?  <li>What's in the service packs?  <li>How should I deploy for my build environments?</li></ol> <p>You get the idea. Here are some likeable nuggets I took away from this session.</p> <ul> <li>If you are installing TFS into an organization with fewer than 500 active developers, install it all on one box.<br><br>I have installed on one machine for simplicity's sake and recommend the same model , but I had no idea the scalability of that model went as high as 500. Jeff claims that this kind of load will only flutter the CPU. Bear in mind, though: This is NOT regarding the build machine. Build machines need to be separate and preferably virtual. <br> <li>Microsoft will be paying closer attention to X in Rosario. X can equal any of these things:  <ul> <li>Project server integration  <li>Portfolio server integration  <li>Query-able link control in work items  <li>Tooling for testers, and that doesn't mean test tools for developers.</li></ul></li></ul> <h2>Application Lifecycle Management Panel Discussion</h2> <p>An entire stage of Team System MVPs, discussing Application Lifecycle Management. Rich Hundhausen, Jeff Levinson, Mike Azocar, Steve Borg, Jeff Beehler,&nbsp; Mickey Gousset, and several others.</p> <p>This is about ALM which includes all phases of the lifecycle, so how are we helped by rapid delivery.</p> <p>I only asked one question of the panel. "What's the view forward for integrating the entire ownership lifecycle? Don't we really need tooling like support in TFS for System Center to get where you are all talking about?"</p> <p>Answer: It turns out that MS is solving for different phases of the overall ALM problem at different phases with different tools. TFS for developers, System Center for I.T., Project and Portfolio Server for the business folks. What ties it all together? Nothing yet. Maybe BizTalk will do the trick, eh? Right.</p> <h2>Scrum-tastic Process Template</h2> <p>Presented by, Mike Azocar, the author and project manager of the actual <a href="http://www.codeplex.com/VSTSScrum" target="_blank">CodePlex project</a> for the Light Weight Scrum Process Template for Team System (whew).</p> <p>I am particularly interested in this work because of the aforementioned focus I have on customizing the <a href="http://scrumforteamsystem.com/en/default.aspx" target="_blank">Scrum process template from Conchango</a>.</p> <p>Nuggets:</p> <ul> <li>An interactive system can never be fully specified - Wagner's Law  <li>Scrum is appealing to many organizations because it is:  <ul> <li>Simple  <li>Free  <li>Transparent  <li>Common sense</li></ul> <li>"No one runs beyond 3 or 4 sprints before changing their out-of-the-box process template." - Mike</li></ul> <h2>Lastly</h2> <p>Keep a watch on <a href="http://msdn.microsoft.com/en-us/events/teched/cc676818.aspx" target="_blank">this page</a>, which hosts videos from the Tech Ed floor. </p> <p>Oh, and I met Richard Campbell of <a href="http://dotnetrocks.com/" target="_blank">DotNetRocks</a>. I told him it was sort of like meeting Madonna. He asked me not to follow him into the bathroom.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Programmability Advisory Council</title>
		<link>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-programmability-advisory-council</link>
		<comments>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 07:41:55 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/data-programmability-advisory-council/</guid>
		<description><![CDATA[Danny Simmons posted some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out: One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">Danny Simmons posted</a> some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out:</p>
<!--more-->
 <blockquote> <p>One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable credentials in that area. </p> <p>Eric Evans - <a href="http://www.domainlanguage.com/about/ericevans.html">http://www.domainlanguage.com/about/ericevans.html</a><br>Stephen Forte - <a href="http://www.stephenforte.net/">http://www.stephenforte.net/</a><br>Martin Fowler - <a href="http://martinfowler.com/">http://martinfowler.com/</a><br>Pavel Hruby - <a href="http://www.phruby.com/">http://www.phruby.com/</a><br>Jimmy Nilsson - <a href="http://jimmynilsson.com/">http://jimmynilsson.com/</a></p></blockquote> <p>Yes... I had to take a second look myself. That's an impressive list I say!  <p>Its just words on a web page at this point, but I think this speaks loud and clear that MS is listening to all the valuable constructive criticism that has been given from the community. I commend the Data Programmability team for making such a great move, but mostly all those who have stepped up to provide their insight.  <p>Along with this announcement, Danny is also requesting that folks continue to <a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">keep providing feedback.</a>  <p>Frickin' <em>sweet!</em>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Future of .NET</title>
		<link>http://elegantcode.com/2008/06/02/the-future-of-net/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-future-of-net</link>
		<comments>http://elegantcode.com/2008/06/02/the-future-of-net/#comments</comments>
		<pubDate>Mon, 02 Jun 2008 18:17:40 +0000</pubDate>
		<dc:creator>Jan Van Ryswyck</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/02/the-future-of-net/</guid>
		<description><![CDATA[That's the title of the latest .NET Rocks episode. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out maintainability, maintainability, maintainability! Let the ASP.NET MVC framework be your first [...]]]></description>
			<content:encoded><![CDATA[<p>That's the title of <a href="http://www.dotnetrocks.com/default.aspx?showNum=346" target="_blank">the latest .NET Rocks episode</a>. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out <a href="http://vanryswyckjan.blogspot.com/2007/01/maintainable-code.html" target="_blank">maintainability</a>, <a href="http://codebetter.com/blogs/jeremy.miller/archive/2006/12/06/On-Writing-Maintainable-Code.aspx" target="_blank">maintainability</a>, <a href="http://elegantcode.com/2008/03/30/elegant-code-essay-contest-winner/" target="_blank">maintainability</a>! Let the ASP.NET MVC framework be your first big success and your guide on the path for providing us developers some tools and most important, some patterns &amp; practices for creating more maintainable software.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/02/the-future-of-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2008 Service Pack 1 &#8211; BETA</title>
		<link>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=visual-studio-2008-service-pack-1-beta</link>
		<comments>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/#comments</comments>
		<pubDate>Fri, 09 May 2008 17:25:43 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/</guid>
		<description><![CDATA["With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement [...]]]></description>
			<content:encoded><![CDATA[<p><em>"</em>With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement in the client-side script tooling including JavaScript IntelliSense. Additionally, full support for SQL Server 2008, the ADO.NET Entity Framework and performance improvements for the IDE make Service Pack 1 a great release across the board.</p> <p>The .NET Framework 3.5 Service Pack 1 delivers more controls, a streamlined setup, improved start-up performance, and powerful new graphics features for client development and rich data scaffolding, improved AJAX support, and other improvements for Web development. Additionally it introduces the ADO.NET Entity Framework and ADO.NET Data Services, which simplify data access code in applications by providing an extensible, conceptual model for data from any data source and enabling this model to closely reflect business requirements.<em>"</em>  <p><em>IF YOU HAVE INSTALLED SILVERLIGHT TOOLS make sure you remove them, and <strong>make sure you also remove KB949325</strong>. See </em><a href="http://www.hanselman.com/blog/VS2008AndNet35SP1BetaShouldYouFearThisRelease.aspx"><em>Hanselman</em></a><em>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> or </em><a href="http://blogs.msdn.com/webdevtools/archive/2008/05/12/error-installing-visual-studio-2008-sp1-beta-and-silverlight-tools-beta-1.aspx"><em>here</em></a><em>.</em> <p>Read more on <a href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx">MSDN</a>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> and <a href="http://blogs.msdn.com/somasegar/archive/2008/05/12/visual-studio-2008-and-net-fx-3-5-sp1-beta-available-now.aspx">Somasegar</a><a href="http://go.microsoft.com/fwlink/?LinkId=119125"></a></p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MS Developer Goodness in Boise on Monday</title>
		<link>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ms-developer-goodness-in-boise-on-monday</link>
		<comments>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 16:17:04 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/</guid>
		<description><![CDATA[MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got [...]]]></description>
			<content:encoded><![CDATA[<p>MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got the not-so-sexy session, but I am spending all day today (and much of the last week) learning about VSTO so that I can share it with you tomorrow.</p>  <p>There are over 350 people registered for the developer track already. Come on down. <a href="http://www.microsoft.com/heroeshappenhere/events/Boise/default.mspx">Register here</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DI hooks in the Framework?</title>
		<link>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=di-mocking-hooks-in-the-framework</link>
		<comments>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/#comments</comments>
		<pubDate>Sat, 26 Apr 2008 04:01:33 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/</guid>
		<description><![CDATA[Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the Managed Extensibility [...]]]></description>
			<content:encoded><![CDATA[<p>Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the <b></b><a href="http://blogs.msdn.com/kcwalina/archive/2008/04/25/MEF.aspx" target="_blank">Managed Extensibility Framework (MEF)</a> can provide you with the best extension points in the .Net Framework. Wow, this is exciting news.</p> <p>On a related note, I heard some rumblings that some future releases (such as v4.0 Asp.Net) will ship with all the unit tests! </p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unity 1.0 EventBroker Sample CAB Style</title>
		<link>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=code-cast-13-microsoft-patterns-and-practices</link>
		<comments>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 04:14:00 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[CodeCast]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Code Cast]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Patterns and Practices]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/</guid>
		<description><![CDATA[Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&#38;P, what P&#38;P has to offer the community, and forthcoming products from the team. Show [...]]]></description>
			<content:encoded><![CDATA[<a href="http://microsoftpdc.com/" target="_blank"><img src="http://www.microsoftpdc.com/Images/BlogBling/Bling3.jpg" alt="" align="right" /></a> Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&amp;P, what P&amp;P has to offer the community, and forthcoming products from the team.

<strong>Show Links</strong>
<ul>
	<li><a href="http://blogs.msdn.com/agile/">Grigori Melnik’s Blog</a></li>
	<li><a href="http://blogs.msdn.com/ajoyk/">Ajoy Krishnamoorthy’s Blog</a></li>
	<li><a href="http://msdn.microsoft.com/practices">Microsoft P&amp;P Team Site</a></li>
	<li><a href="http://codeplex.com/TestingGuidance">Acceptance Test Engineering Guidance</a></li>
	<li><a href="http://channel9.msdn.com/posts/Charles/Tour-Patterns-and-Practices-Lab/">P&amp;P Team Room Video</a></li>
	<li><a href="http://msdn.microsoft.com/en-us/practices/bb232643.aspx">P&amp;P Upcoming Releases</a></li>
	<li><a href="http://www.pnpsummit.com/_practices.aspx">Patterns and Practices Summit</a>, November 3-7, 2008</li>
</ul>
<a href="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3">Download the episode MP3</a>

<a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=271207118"><img src="http://elegantcode.com/cast/files/images/itunes_button.gif" border="0" alt="View in iTunes" /></a> <a href="http://feeds.feedburner.com/elegantcodecast"><img src="http://elegantcode.com/cast/files/images/rss_podcast.jpg" border="0" alt="Any Podcatcher" /></a>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:103d8226-f879-4268-877a-01eac008542a" class="wlWriterSmartContent" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/Micrososft+P%26P">Micrososft P&amp;P</a>,<a rel="tag" href="http://technorati.com/tags/Agile">Agile</a>,<a rel="tag" href="http://technorati.com/tags/Patterns+and+Practices">Patterns and Practices</a>,<a rel="tag" href="http://technorati.com/tags/.Net">.Net</a></div>
<img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=39d5550f-2b51-4176-8f5c-cd4d82122c93" alt="" />]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3" length="31363377" type="audio/mpeg" />
		</item>
		<item>
		<title>Elegant Code &#187; Microsoft</title>
	<atom:link href="http://elegantcode.com/tag/microsoft/feed/" rel="self" type="application/rss+xml" />
	<link>http://elegantcode.com</link>
	<description></description>
	<lastBuildDate>Tue, 15 May 2012 10:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Code Cast 13 &#8211; Microsoft Patterns and Practices</title>
		<link>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=code-cast-13-microsoft-patterns-and-practices</link>
		<comments>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 04:14:00 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[CodeCast]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Code Cast]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Patterns and Practices]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/</guid>
		<description><![CDATA[Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&#38;P, what P&#38;P has to offer the community, and forthcoming products from the team. Show [...]]]></description>
			<content:encoded><![CDATA[<a href="http://microsoftpdc.com/" target="_blank"><img src="http://www.microsoftpdc.com/Images/BlogBling/Bling3.jpg" alt="" align="right" /></a> Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&amp;P, what P&amp;P has to offer the community, and forthcoming products from the team.

<strong>Show Links</strong>
<ul>
	<li><a href="http://blogs.msdn.com/agile/">Grigori Melnik’s Blog</a></li>
	<li><a href="http://blogs.msdn.com/ajoyk/">Ajoy Krishnamoorthy’s Blog</a></li>
	<li><a href="http://msdn.microsoft.com/practices">Microsoft P&amp;P Team Site</a></li>
	<li><a href="http://codeplex.com/TestingGuidance">Acceptance Test Engineering Guidance</a></li>
	<li><a href="http://channel9.msdn.com/posts/Charles/Tour-Patterns-and-Practices-Lab/">P&amp;P Team Room Video</a></li>
	<li><a href="http://msdn.microsoft.com/en-us/practices/bb232643.aspx">P&amp;P Upcoming Releases</a></li>
	<li><a href="http://www.pnpsummit.com/_practices.aspx">Patterns and Practices Summit</a>, November 3-7, 2008</li>
</ul>
<a href="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3">Download the episode MP3</a>

<a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=271207118"><img src="http://elegantcode.com/cast/files/images/itunes_button.gif" border="0" alt="View in iTunes" /></a> <a href="http://feeds.feedburner.com/elegantcodecast"><img src="http://elegantcode.com/cast/files/images/rss_podcast.jpg" border="0" alt="Any Podcatcher" /></a>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:103d8226-f879-4268-877a-01eac008542a" class="wlWriterSmartContent" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/Micrososft+P%26P">Micrososft P&amp;P</a>,<a rel="tag" href="http://technorati.com/tags/Agile">Agile</a>,<a rel="tag" href="http://technorati.com/tags/Patterns+and+Practices">Patterns and Practices</a>,<a rel="tag" href="http://technorati.com/tags/.Net">.Net</a></div>
<img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=39d5550f-2b51-4176-8f5c-cd4d82122c93" alt="" />]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3" length="31363377" type="audio/mpeg" />
		</item>
		<item>
		<title>Microsoft&#8217;s ALM Story</title>
		<link>http://elegantcode.com/2008/06/12/microsofts-alm-story/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=microsofts-alm-story</link>
		<comments>http://elegantcode.com/2008/06/12/microsofts-alm-story/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 04:31:31 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Architecture and Design]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/12/microsofts-alm-story/</guid>
		<description><![CDATA[Microsoft has embraced the idea of Application Lifecycle Management as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. ALM is the enterprise software development holy grail that IBM sought [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft has embraced the idea of <a href="http://en.wikipedia.org/wiki/Application_Lifecycle_Management" target="_blank">Application Lifecycle Management</a> as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. </p> <p>ALM is the enterprise software development holy grail that IBM sought for years and invested in with the <a href="http://www-306.ibm.com/software/rational/" target="_blank">Rational tools</a>. And although there is a tremendous value in prescriptive guidance in enterprise development models, there is a natural tension between the ALM crowd and <em>Development as a Craft</em> advocates. ALM, after all, is all about quantifying, measuring, predicting, planning, and economies of scale. Ironically, the kind of transparency and predictability called for by the minimalist Agile community is the same goal of ALM tooling offered by Big Blue and now by the new blue in Redmond.</p> <p>How are Microsoft products staged to lay across the ALM model? The story today is mixed.</p> <table cellspacing="0" cellpadding="2" width="366" border="1"> <tbody> <tr> <td valign="top" width="160"><strong>ALM Principle</strong></td> <td valign="top" width="204"><strong>MS Product Answer</strong></td></tr> <tr> <td valign="top" width="176">Project Management</td> <td valign="top" width="213">Portfolio Server, Project Server, MS Project</td></tr> <tr> <td valign="top" width="181">Project Tacking</td> <td valign="top" width="214">TFS, MS Project</td></tr> <tr> <td valign="top" width="184">Requirements Planning</td> <td valign="top" width="213">3rd Party Solutions</td></tr> <tr> <td valign="top" width="185">Design and Development</td> <td valign="top" width="212">Visio, Visual Studio</td></tr> <tr> <td valign="top" width="186">Quality Assurance</td> <td valign="top" width="211">Visual Studio</td></tr> <tr> <td valign="top" width="187">Release Management</td> <td valign="top" width="211">System Center, Team Build</td></tr> <tr> <td valign="top" width="187">Helpdesk</td> <td valign="top" width="211">SharePoint?</td></tr></tbody></table> <p>Your familiarity with these products may lead you to the same conclusion that many have already reached. The products in the stack currently fail to integrate cleanly and many provide only a starting taste of the functionality needed to realize the ALM vision. The story is obviously a little muddy today. But what's next?</p> <p>Team System Rosario promises much improvement in the areas of tracking, design, quality assurance, and development. Significant bridges are also being started toward improving the release management story.</p> <p>That won't do it all, of course. There are other pieces needed in the stack that will need to be freshened up including operational support tools. Microsoft is in hot pursuit of filling this gap with a host of products under the <a href="http://www.microsoft.com/systemcenter/en/us/products.aspx" target="_blank">System Center umbrella of products</a>. An actual helpdesk management system to displace the TechExcels and Remedys of the world is essential here.</p> <p>The point is, MS has its sights set on a complete ALM story and are focusing on the midsize market, as Microsoft is so good at doing. </p> <h2>The Good</h2> <p>A focus on ALM in the Microsoft stack will have a tremendous impact on software development and delivery as we know it. Interoperable components in the pipeline will help bridge those gaps in midsize organizations that are typically only filled in large enterprises. Transparency will be ubiquitous.</p> <p>Given the open nature of products being developed at MS these days, I have high hopes that these systems will truly be pluggable, so that if you want to bridge TFS to Remedy (for example) doing so is not rocket surgery. Web services are great, aren't they?</p> <h2>Concerns</h2> <p>There is a fine line between managing for predictability and 'command and control'. Tools like those in this stack are like guns. They can be used for good, but misuse is more common than not. </p> <p>Tooling like this gives every non-tool Agilist out there genuine pause, and with good reason. The history of stewardship in complex models like this is less than stellar. That is to say, this tooling can provide huge value, and the basis for crushing souls. Let's be careful how we wield them.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/12/microsofts-alm-story/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008 Day 2</title>
		<link>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-2</link>
		<comments>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 02:47:34 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/</guid>
		<description><![CDATA[Elegant Code Cast With Ward Bell Ward Bell is the Vice President of Product Management at IdeaBlade, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&#160; Ward was good enough to [...]]]></description>
			<content:encoded><![CDATA[<h2>Elegant Code Cast With Ward Bell</h2> <p><a href="http://neverindoubtnet.blogspot.com/" target="_blank">Ward Bell</a> is the Vice President of Product Management at <a href="http://ideablade.com" target="_blank">IdeaBlade</a>, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&nbsp; Ward was good enough to share 30 minutes or so on the mics and you'll be hearing hi interview on the Elegant Code Cast in the weeks to come.</p> <h2>Platforms for SOA and Business Process Management: Comparing .NET and Java</h2> <p><a href="http://davidchappell.com" target="_blank"><img height="145" src="http://www.davidchappell.com/EMAIL_images/the_man.jpg" width="122" align="right" border="0"></a>This session looks at the worlds of Java and .Net while paying particular attention to the problems found in the ESB space. For example, how does each stack solve for workflow, rules, messaging, etc.</p> <p><a href="http://davidchappell.com/" target="_blank">David Chappell</a> has presented this session at the Java One conference, so it is important to remember that this information as been vetted through the Java community.</p> <p>The basic message came down to this: Sun's stewardship of Java has promoted a fragmentation of technologies implemented in the Java language. This is great news for MS, who provides a unified stack of solutions in these spaces. The presenter asked the room this question, "Who believes that many solutions to workflow is good for the Java community?" About half the room went one way, the other half went another.</p> <p>This gets to the core truth of the whole 1 vs. many solution discussion. Developers obviously love choice in their tools. After all, developers like to tinker and play with new technologies. Are these people also the ones most capable of making core platforms decisions for an enterprise? Typically not, because there is a bias toward new technology adoption over uniform practices.</p> <p>As an example, the speaker told a story:</p> <blockquote> <p>A Java developer asked him at a conference, "Help me construct an argument for my management to get permission for me to use Spring."</p> <p>"Why do you want to use Spring?" asked David.</p> <p>"Because it's cool, man," answered the developer. "I want to play with it because everyone knows it is a better way to write applications."</p> <p>"You should be fired," he answered.</p></blockquote> <p>The point here is that executives and logical decision makers who choose platforms are interested in the long game, not what technology is cool. Can I depend on vendor support? Will the product continue to evolve and grow? These are the questions that yearn for an answer of a unified platform that can be depended on to carry the business forward.</p> <p>David actually cited the Garter quote that predicts the ultimate death of the J2EE platform in favor of vendor supported Java platforms by IBM and Oracle. If that actually comes to fruition, it is fascinating not just for its technical implications, but also for the comment this makes on the ultimate viability of community-based technology stewardship.</p> <p>Maybe this 3 legged race of IBM v. Oracle v. MS offers an easier soup to stir than one consisting of many open source implementations. Interesting talk. The most interesting part of that discussion is the notable absence of Sun as a player in the Java discussion. What a weird world.</p> <p>My favorite quote of the session, "Model Driven Architecture is where the rubber meets the sky." Awesome. This comment on the huge abstraction of MDA feels right on.</p> <h2>FDD With Team System</h2> <p><a href="http://weblogs.asp.net/JSemeniuk/" target="_blank">Joel Semenuik</a> provided a great overview of how his organization uses a formal Feature Driven Development process in conjunction with Scrum to deliver software. They do this using of Team System, which is no surprise since Joel is the co-author of <a href="http://www.amazon.com/Managing-Projects-Microsoft-Visual-Pro-Developer/dp/0735622167/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1212632983&amp;sr=1-1">Managing Projects with Microsoft Visual Studio Team System</a> with Martin Danner. </p> <p>I later learned from Martin, who used to be my office mate, that he and Joel are sponsoring a CodePlex project to aggregate open source process templates. What a nice idea! One stop shopping for process templates. I went hunting for it, but couldn't find it on CodePlex yet.</p> <h2>How I Became a Team Build Muscle Man</h2> <p>Steve Borg blew packing material all over me when the build failed in his demo. To be more precise, he had a build monitor application hooked to a fan that blew packing peanuts all over me when his build failed. Nice. It tok 10 minutes to get all the stic clingy bits off me.</p> <p>Anyway, Steve ran through a demo on using Team Build for CI and for deployment. It was pretty good, although I think many of us could have done without the Richard Simmons imitation. :)</p> <p><strong>Deploying to IIS</strong></p> <p>Steve used the MSBuild tasks found in the <a href="http://www.codeplex.com/sdctasks" target="_blank">SDC CodePlex project</a> to deploy his web application to IIS on a deployment and smoke test machine. </p> <p><strong>Deploying SQL Data</strong></p> <p>Even better, he used Visual Studio 2008 DB Pro to create a DB sample data loading script and deployed that to his test DB server via the SDC task DeployDatabase. This ensures that his web tests will always be run against his app with the same underlying data. This makes writing and running automated web tests as part of your build MUCH easier.</p> <p><strong>Misc</strong></p> <p>Also in 2008, we get the new BuildStep task that we can use to emote nice messages into our build log to provide some debugging information. Handy.</p> <p>Implement the ITask interface to create your own tasks BTW. This is easy, I've actually done it!</p> <p>WIX (Windows Installer for XML) is an open source tool that MS actually wrote and released to CodePlex. It is a nice little tool that helps us build MSI installers for our application. This utility is actually used by MS to create their installers like the MS Office and other binaries. This is basically a Visual Studio project that works like MAKE, but better. You can use WIX to accomplish all kinds of things like prepping your target machine's dependencies as part of the MSI. Nice.</p> <h2>Source Control Branching Strategies</h2> <p>This was a great after-hours Birds of a Feather session that deserves a post of its own and will get it. </p> <p>Here's the takeaway: <em>I had no idea source control strategy was a religious issue or that one can see an organization's dysfunction in a source control system's folder structure. </em></p> <p>Now I know.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008, Day 1</title>
		<link>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-1</link>
		<comments>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 01:03:17 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/</guid>
		<description><![CDATA[Keynote by Bill Gates and a cast of Microsoft Executives Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF. Brian Harry on TFS Now and Future This was a great session. I know we are all tired of hearing it, but Rosario really is [...]]]></description>
			<content:encoded><![CDATA[<h2>Keynote by Bill Gates and a cast of Microsoft Executives</h2> <p>Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF.</p> <h2>Brian Harry on TFS Now and Future</h2> <p>This was a great session. I know we are all tired of hearing it, but Rosario really is the release of TFS that will be the ONE. We are all struggling with Work Items and being able to manage our work the way we actually think of our work.</p> <p>The one question I posed was simply how may an organization manage one single backlog of work within TFS and parse out that work to separate teams? The answer is that for right now, there isn't a good story here. I will be blogging later in the summer about how I am solving for this in our organization.</p> <h2>Open Q&amp;A on TFS - Jeff Levinson</h2> <p>Jeff is a Team System MVP and trainer and consultant for <a href="http://www.nwcadence.com/" target="_blank">NW Cadence</a>. He talked people through a lot of the typical questions that get asked soon after you install TFS in your organization.</p> <ol> <li>What source control branching model makes sense for me?  <li>How can I customize my work items?  <li>What's in the service packs?  <li>How should I deploy for my build environments?</li></ol> <p>You get the idea. Here are some likeable nuggets I took away from this session.</p> <ul> <li>If you are installing TFS into an organization with fewer than 500 active developers, install it all on one box.<br><br>I have installed on one machine for simplicity's sake and recommend the same model , but I had no idea the scalability of that model went as high as 500. Jeff claims that this kind of load will only flutter the CPU. Bear in mind, though: This is NOT regarding the build machine. Build machines need to be separate and preferably virtual. <br> <li>Microsoft will be paying closer attention to X in Rosario. X can equal any of these things:  <ul> <li>Project server integration  <li>Portfolio server integration  <li>Query-able link control in work items  <li>Tooling for testers, and that doesn't mean test tools for developers.</li></ul></li></ul> <h2>Application Lifecycle Management Panel Discussion</h2> <p>An entire stage of Team System MVPs, discussing Application Lifecycle Management. Rich Hundhausen, Jeff Levinson, Mike Azocar, Steve Borg, Jeff Beehler,&nbsp; Mickey Gousset, and several others.</p> <p>This is about ALM which includes all phases of the lifecycle, so how are we helped by rapid delivery.</p> <p>I only asked one question of the panel. "What's the view forward for integrating the entire ownership lifecycle? Don't we really need tooling like support in TFS for System Center to get where you are all talking about?"</p> <p>Answer: It turns out that MS is solving for different phases of the overall ALM problem at different phases with different tools. TFS for developers, System Center for I.T., Project and Portfolio Server for the business folks. What ties it all together? Nothing yet. Maybe BizTalk will do the trick, eh? Right.</p> <h2>Scrum-tastic Process Template</h2> <p>Presented by, Mike Azocar, the author and project manager of the actual <a href="http://www.codeplex.com/VSTSScrum" target="_blank">CodePlex project</a> for the Light Weight Scrum Process Template for Team System (whew).</p> <p>I am particularly interested in this work because of the aforementioned focus I have on customizing the <a href="http://scrumforteamsystem.com/en/default.aspx" target="_blank">Scrum process template from Conchango</a>.</p> <p>Nuggets:</p> <ul> <li>An interactive system can never be fully specified - Wagner's Law  <li>Scrum is appealing to many organizations because it is:  <ul> <li>Simple  <li>Free  <li>Transparent  <li>Common sense</li></ul> <li>"No one runs beyond 3 or 4 sprints before changing their out-of-the-box process template." - Mike</li></ul> <h2>Lastly</h2> <p>Keep a watch on <a href="http://msdn.microsoft.com/en-us/events/teched/cc676818.aspx" target="_blank">this page</a>, which hosts videos from the Tech Ed floor. </p> <p>Oh, and I met Richard Campbell of <a href="http://dotnetrocks.com/" target="_blank">DotNetRocks</a>. I told him it was sort of like meeting Madonna. He asked me not to follow him into the bathroom.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Programmability Advisory Council</title>
		<link>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-programmability-advisory-council</link>
		<comments>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 07:41:55 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/data-programmability-advisory-council/</guid>
		<description><![CDATA[Danny Simmons posted some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out: One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">Danny Simmons posted</a> some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out:</p>
<!--more-->
 <blockquote> <p>One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable credentials in that area. </p> <p>Eric Evans - <a href="http://www.domainlanguage.com/about/ericevans.html">http://www.domainlanguage.com/about/ericevans.html</a><br>Stephen Forte - <a href="http://www.stephenforte.net/">http://www.stephenforte.net/</a><br>Martin Fowler - <a href="http://martinfowler.com/">http://martinfowler.com/</a><br>Pavel Hruby - <a href="http://www.phruby.com/">http://www.phruby.com/</a><br>Jimmy Nilsson - <a href="http://jimmynilsson.com/">http://jimmynilsson.com/</a></p></blockquote> <p>Yes... I had to take a second look myself. That's an impressive list I say!  <p>Its just words on a web page at this point, but I think this speaks loud and clear that MS is listening to all the valuable constructive criticism that has been given from the community. I commend the Data Programmability team for making such a great move, but mostly all those who have stepped up to provide their insight.  <p>Along with this announcement, Danny is also requesting that folks continue to <a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">keep providing feedback.</a>  <p>Frickin' <em>sweet!</em>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Future of .NET</title>
		<link>http://elegantcode.com/2008/06/02/the-future-of-net/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-future-of-net</link>
		<comments>http://elegantcode.com/2008/06/02/the-future-of-net/#comments</comments>
		<pubDate>Mon, 02 Jun 2008 18:17:40 +0000</pubDate>
		<dc:creator>Jan Van Ryswyck</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/02/the-future-of-net/</guid>
		<description><![CDATA[That's the title of the latest .NET Rocks episode. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out maintainability, maintainability, maintainability! Let the ASP.NET MVC framework be your first [...]]]></description>
			<content:encoded><![CDATA[<p>That's the title of <a href="http://www.dotnetrocks.com/default.aspx?showNum=346" target="_blank">the latest .NET Rocks episode</a>. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out <a href="http://vanryswyckjan.blogspot.com/2007/01/maintainable-code.html" target="_blank">maintainability</a>, <a href="http://codebetter.com/blogs/jeremy.miller/archive/2006/12/06/On-Writing-Maintainable-Code.aspx" target="_blank">maintainability</a>, <a href="http://elegantcode.com/2008/03/30/elegant-code-essay-contest-winner/" target="_blank">maintainability</a>! Let the ASP.NET MVC framework be your first big success and your guide on the path for providing us developers some tools and most important, some patterns &amp; practices for creating more maintainable software.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/02/the-future-of-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2008 Service Pack 1 &#8211; BETA</title>
		<link>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=visual-studio-2008-service-pack-1-beta</link>
		<comments>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/#comments</comments>
		<pubDate>Fri, 09 May 2008 17:25:43 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/</guid>
		<description><![CDATA["With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement [...]]]></description>
			<content:encoded><![CDATA[<p><em>"</em>With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement in the client-side script tooling including JavaScript IntelliSense. Additionally, full support for SQL Server 2008, the ADO.NET Entity Framework and performance improvements for the IDE make Service Pack 1 a great release across the board.</p> <p>The .NET Framework 3.5 Service Pack 1 delivers more controls, a streamlined setup, improved start-up performance, and powerful new graphics features for client development and rich data scaffolding, improved AJAX support, and other improvements for Web development. Additionally it introduces the ADO.NET Entity Framework and ADO.NET Data Services, which simplify data access code in applications by providing an extensible, conceptual model for data from any data source and enabling this model to closely reflect business requirements.<em>"</em>  <p><em>IF YOU HAVE INSTALLED SILVERLIGHT TOOLS make sure you remove them, and <strong>make sure you also remove KB949325</strong>. See </em><a href="http://www.hanselman.com/blog/VS2008AndNet35SP1BetaShouldYouFearThisRelease.aspx"><em>Hanselman</em></a><em>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> or </em><a href="http://blogs.msdn.com/webdevtools/archive/2008/05/12/error-installing-visual-studio-2008-sp1-beta-and-silverlight-tools-beta-1.aspx"><em>here</em></a><em>.</em> <p>Read more on <a href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx">MSDN</a>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> and <a href="http://blogs.msdn.com/somasegar/archive/2008/05/12/visual-studio-2008-and-net-fx-3-5-sp1-beta-available-now.aspx">Somasegar</a><a href="http://go.microsoft.com/fwlink/?LinkId=119125"></a></p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MS Developer Goodness in Boise on Monday</title>
		<link>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ms-developer-goodness-in-boise-on-monday</link>
		<comments>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 16:17:04 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/</guid>
		<description><![CDATA[MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got [...]]]></description>
			<content:encoded><![CDATA[<p>MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got the not-so-sexy session, but I am spending all day today (and much of the last week) learning about VSTO so that I can share it with you tomorrow.</p>  <p>There are over 350 people registered for the developer track already. Come on down. <a href="http://www.microsoft.com/heroeshappenhere/events/Boise/default.mspx">Register here</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DI hooks in the Framework?</title>
		<link>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=di-mocking-hooks-in-the-framework</link>
		<comments>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/#comments</comments>
		<pubDate>Sat, 26 Apr 2008 04:01:33 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/</guid>
		<description><![CDATA[Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the Managed Extensibility [...]]]></description>
			<content:encoded><![CDATA[<p>Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the <b></b><a href="http://blogs.msdn.com/kcwalina/archive/2008/04/25/MEF.aspx" target="_blank">Managed Extensibility Framework (MEF)</a> can provide you with the best extension points in the .Net Framework. Wow, this is exciting news.</p> <p>On a related note, I heard some rumblings that some future releases (such as v4.0 Asp.Net) will ship with all the unit tests! </p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unity 1.0 EventBroker Sample CAB Style</title>
		<link>http://elegantcode.com/2008/06/12/microsofts-alm-story/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=microsofts-alm-story</link>
		<comments>http://elegantcode.com/2008/06/12/microsofts-alm-story/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 04:31:31 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Architecture and Design]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/12/microsofts-alm-story/</guid>
		<description><![CDATA[Microsoft has embraced the idea of Application Lifecycle Management as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. ALM is the enterprise software development holy grail that IBM sought [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft has embraced the idea of <a href="http://en.wikipedia.org/wiki/Application_Lifecycle_Management" target="_blank">Application Lifecycle Management</a> as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. </p> <p>ALM is the enterprise software development holy grail that IBM sought for years and invested in with the <a href="http://www-306.ibm.com/software/rational/" target="_blank">Rational tools</a>. And although there is a tremendous value in prescriptive guidance in enterprise development models, there is a natural tension between the ALM crowd and <em>Development as a Craft</em> advocates. ALM, after all, is all about quantifying, measuring, predicting, planning, and economies of scale. Ironically, the kind of transparency and predictability called for by the minimalist Agile community is the same goal of ALM tooling offered by Big Blue and now by the new blue in Redmond.</p> <p>How are Microsoft products staged to lay across the ALM model? The story today is mixed.</p> <table cellspacing="0" cellpadding="2" width="366" border="1"> <tbody> <tr> <td valign="top" width="160"><strong>ALM Principle</strong></td> <td valign="top" width="204"><strong>MS Product Answer</strong></td></tr> <tr> <td valign="top" width="176">Project Management</td> <td valign="top" width="213">Portfolio Server, Project Server, MS Project</td></tr> <tr> <td valign="top" width="181">Project Tacking</td> <td valign="top" width="214">TFS, MS Project</td></tr> <tr> <td valign="top" width="184">Requirements Planning</td> <td valign="top" width="213">3rd Party Solutions</td></tr> <tr> <td valign="top" width="185">Design and Development</td> <td valign="top" width="212">Visio, Visual Studio</td></tr> <tr> <td valign="top" width="186">Quality Assurance</td> <td valign="top" width="211">Visual Studio</td></tr> <tr> <td valign="top" width="187">Release Management</td> <td valign="top" width="211">System Center, Team Build</td></tr> <tr> <td valign="top" width="187">Helpdesk</td> <td valign="top" width="211">SharePoint?</td></tr></tbody></table> <p>Your familiarity with these products may lead you to the same conclusion that many have already reached. The products in the stack currently fail to integrate cleanly and many provide only a starting taste of the functionality needed to realize the ALM vision. The story is obviously a little muddy today. But what's next?</p> <p>Team System Rosario promises much improvement in the areas of tracking, design, quality assurance, and development. Significant bridges are also being started toward improving the release management story.</p> <p>That won't do it all, of course. There are other pieces needed in the stack that will need to be freshened up including operational support tools. Microsoft is in hot pursuit of filling this gap with a host of products under the <a href="http://www.microsoft.com/systemcenter/en/us/products.aspx" target="_blank">System Center umbrella of products</a>. An actual helpdesk management system to displace the TechExcels and Remedys of the world is essential here.</p> <p>The point is, MS has its sights set on a complete ALM story and are focusing on the midsize market, as Microsoft is so good at doing. </p> <h2>The Good</h2> <p>A focus on ALM in the Microsoft stack will have a tremendous impact on software development and delivery as we know it. Interoperable components in the pipeline will help bridge those gaps in midsize organizations that are typically only filled in large enterprises. Transparency will be ubiquitous.</p> <p>Given the open nature of products being developed at MS these days, I have high hopes that these systems will truly be pluggable, so that if you want to bridge TFS to Remedy (for example) doing so is not rocket surgery. Web services are great, aren't they?</p> <h2>Concerns</h2> <p>There is a fine line between managing for predictability and 'command and control'. Tools like those in this stack are like guns. They can be used for good, but misuse is more common than not. </p> <p>Tooling like this gives every non-tool Agilist out there genuine pause, and with good reason. The history of stewardship in complex models like this is less than stellar. That is to say, this tooling can provide huge value, and the basis for crushing souls. Let's be careful how we wield them.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/12/microsofts-alm-story/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Elegant Code &#187; Microsoft</title>
	<atom:link href="http://elegantcode.com/tag/microsoft/feed/" rel="self" type="application/rss+xml" />
	<link>http://elegantcode.com</link>
	<description></description>
	<lastBuildDate>Tue, 15 May 2012 10:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Code Cast 13 &#8211; Microsoft Patterns and Practices</title>
		<link>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=code-cast-13-microsoft-patterns-and-practices</link>
		<comments>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 04:14:00 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[CodeCast]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Code Cast]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Patterns and Practices]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/</guid>
		<description><![CDATA[Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&#38;P, what P&#38;P has to offer the community, and forthcoming products from the team. Show [...]]]></description>
			<content:encoded><![CDATA[<a href="http://microsoftpdc.com/" target="_blank"><img src="http://www.microsoftpdc.com/Images/BlogBling/Bling3.jpg" alt="" align="right" /></a> Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&amp;P, what P&amp;P has to offer the community, and forthcoming products from the team.

<strong>Show Links</strong>
<ul>
	<li><a href="http://blogs.msdn.com/agile/">Grigori Melnik’s Blog</a></li>
	<li><a href="http://blogs.msdn.com/ajoyk/">Ajoy Krishnamoorthy’s Blog</a></li>
	<li><a href="http://msdn.microsoft.com/practices">Microsoft P&amp;P Team Site</a></li>
	<li><a href="http://codeplex.com/TestingGuidance">Acceptance Test Engineering Guidance</a></li>
	<li><a href="http://channel9.msdn.com/posts/Charles/Tour-Patterns-and-Practices-Lab/">P&amp;P Team Room Video</a></li>
	<li><a href="http://msdn.microsoft.com/en-us/practices/bb232643.aspx">P&amp;P Upcoming Releases</a></li>
	<li><a href="http://www.pnpsummit.com/_practices.aspx">Patterns and Practices Summit</a>, November 3-7, 2008</li>
</ul>
<a href="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3">Download the episode MP3</a>

<a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=271207118"><img src="http://elegantcode.com/cast/files/images/itunes_button.gif" border="0" alt="View in iTunes" /></a> <a href="http://feeds.feedburner.com/elegantcodecast"><img src="http://elegantcode.com/cast/files/images/rss_podcast.jpg" border="0" alt="Any Podcatcher" /></a>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:103d8226-f879-4268-877a-01eac008542a" class="wlWriterSmartContent" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/Micrososft+P%26P">Micrososft P&amp;P</a>,<a rel="tag" href="http://technorati.com/tags/Agile">Agile</a>,<a rel="tag" href="http://technorati.com/tags/Patterns+and+Practices">Patterns and Practices</a>,<a rel="tag" href="http://technorati.com/tags/.Net">.Net</a></div>
<img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=39d5550f-2b51-4176-8f5c-cd4d82122c93" alt="" />]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3" length="31363377" type="audio/mpeg" />
		</item>
		<item>
		<title>Microsoft&#8217;s ALM Story</title>
		<link>http://elegantcode.com/2008/06/12/microsofts-alm-story/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=microsofts-alm-story</link>
		<comments>http://elegantcode.com/2008/06/12/microsofts-alm-story/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 04:31:31 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Architecture and Design]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/12/microsofts-alm-story/</guid>
		<description><![CDATA[Microsoft has embraced the idea of Application Lifecycle Management as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. ALM is the enterprise software development holy grail that IBM sought [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft has embraced the idea of <a href="http://en.wikipedia.org/wiki/Application_Lifecycle_Management" target="_blank">Application Lifecycle Management</a> as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. </p> <p>ALM is the enterprise software development holy grail that IBM sought for years and invested in with the <a href="http://www-306.ibm.com/software/rational/" target="_blank">Rational tools</a>. And although there is a tremendous value in prescriptive guidance in enterprise development models, there is a natural tension between the ALM crowd and <em>Development as a Craft</em> advocates. ALM, after all, is all about quantifying, measuring, predicting, planning, and economies of scale. Ironically, the kind of transparency and predictability called for by the minimalist Agile community is the same goal of ALM tooling offered by Big Blue and now by the new blue in Redmond.</p> <p>How are Microsoft products staged to lay across the ALM model? The story today is mixed.</p> <table cellspacing="0" cellpadding="2" width="366" border="1"> <tbody> <tr> <td valign="top" width="160"><strong>ALM Principle</strong></td> <td valign="top" width="204"><strong>MS Product Answer</strong></td></tr> <tr> <td valign="top" width="176">Project Management</td> <td valign="top" width="213">Portfolio Server, Project Server, MS Project</td></tr> <tr> <td valign="top" width="181">Project Tacking</td> <td valign="top" width="214">TFS, MS Project</td></tr> <tr> <td valign="top" width="184">Requirements Planning</td> <td valign="top" width="213">3rd Party Solutions</td></tr> <tr> <td valign="top" width="185">Design and Development</td> <td valign="top" width="212">Visio, Visual Studio</td></tr> <tr> <td valign="top" width="186">Quality Assurance</td> <td valign="top" width="211">Visual Studio</td></tr> <tr> <td valign="top" width="187">Release Management</td> <td valign="top" width="211">System Center, Team Build</td></tr> <tr> <td valign="top" width="187">Helpdesk</td> <td valign="top" width="211">SharePoint?</td></tr></tbody></table> <p>Your familiarity with these products may lead you to the same conclusion that many have already reached. The products in the stack currently fail to integrate cleanly and many provide only a starting taste of the functionality needed to realize the ALM vision. The story is obviously a little muddy today. But what's next?</p> <p>Team System Rosario promises much improvement in the areas of tracking, design, quality assurance, and development. Significant bridges are also being started toward improving the release management story.</p> <p>That won't do it all, of course. There are other pieces needed in the stack that will need to be freshened up including operational support tools. Microsoft is in hot pursuit of filling this gap with a host of products under the <a href="http://www.microsoft.com/systemcenter/en/us/products.aspx" target="_blank">System Center umbrella of products</a>. An actual helpdesk management system to displace the TechExcels and Remedys of the world is essential here.</p> <p>The point is, MS has its sights set on a complete ALM story and are focusing on the midsize market, as Microsoft is so good at doing. </p> <h2>The Good</h2> <p>A focus on ALM in the Microsoft stack will have a tremendous impact on software development and delivery as we know it. Interoperable components in the pipeline will help bridge those gaps in midsize organizations that are typically only filled in large enterprises. Transparency will be ubiquitous.</p> <p>Given the open nature of products being developed at MS these days, I have high hopes that these systems will truly be pluggable, so that if you want to bridge TFS to Remedy (for example) doing so is not rocket surgery. Web services are great, aren't they?</p> <h2>Concerns</h2> <p>There is a fine line between managing for predictability and 'command and control'. Tools like those in this stack are like guns. They can be used for good, but misuse is more common than not. </p> <p>Tooling like this gives every non-tool Agilist out there genuine pause, and with good reason. The history of stewardship in complex models like this is less than stellar. That is to say, this tooling can provide huge value, and the basis for crushing souls. Let's be careful how we wield them.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/12/microsofts-alm-story/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008 Day 2</title>
		<link>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-2</link>
		<comments>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 02:47:34 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/</guid>
		<description><![CDATA[Elegant Code Cast With Ward Bell Ward Bell is the Vice President of Product Management at IdeaBlade, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&#160; Ward was good enough to [...]]]></description>
			<content:encoded><![CDATA[<h2>Elegant Code Cast With Ward Bell</h2> <p><a href="http://neverindoubtnet.blogspot.com/" target="_blank">Ward Bell</a> is the Vice President of Product Management at <a href="http://ideablade.com" target="_blank">IdeaBlade</a>, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&nbsp; Ward was good enough to share 30 minutes or so on the mics and you'll be hearing hi interview on the Elegant Code Cast in the weeks to come.</p> <h2>Platforms for SOA and Business Process Management: Comparing .NET and Java</h2> <p><a href="http://davidchappell.com" target="_blank"><img height="145" src="http://www.davidchappell.com/EMAIL_images/the_man.jpg" width="122" align="right" border="0"></a>This session looks at the worlds of Java and .Net while paying particular attention to the problems found in the ESB space. For example, how does each stack solve for workflow, rules, messaging, etc.</p> <p><a href="http://davidchappell.com/" target="_blank">David Chappell</a> has presented this session at the Java One conference, so it is important to remember that this information as been vetted through the Java community.</p> <p>The basic message came down to this: Sun's stewardship of Java has promoted a fragmentation of technologies implemented in the Java language. This is great news for MS, who provides a unified stack of solutions in these spaces. The presenter asked the room this question, "Who believes that many solutions to workflow is good for the Java community?" About half the room went one way, the other half went another.</p> <p>This gets to the core truth of the whole 1 vs. many solution discussion. Developers obviously love choice in their tools. After all, developers like to tinker and play with new technologies. Are these people also the ones most capable of making core platforms decisions for an enterprise? Typically not, because there is a bias toward new technology adoption over uniform practices.</p> <p>As an example, the speaker told a story:</p> <blockquote> <p>A Java developer asked him at a conference, "Help me construct an argument for my management to get permission for me to use Spring."</p> <p>"Why do you want to use Spring?" asked David.</p> <p>"Because it's cool, man," answered the developer. "I want to play with it because everyone knows it is a better way to write applications."</p> <p>"You should be fired," he answered.</p></blockquote> <p>The point here is that executives and logical decision makers who choose platforms are interested in the long game, not what technology is cool. Can I depend on vendor support? Will the product continue to evolve and grow? These are the questions that yearn for an answer of a unified platform that can be depended on to carry the business forward.</p> <p>David actually cited the Garter quote that predicts the ultimate death of the J2EE platform in favor of vendor supported Java platforms by IBM and Oracle. If that actually comes to fruition, it is fascinating not just for its technical implications, but also for the comment this makes on the ultimate viability of community-based technology stewardship.</p> <p>Maybe this 3 legged race of IBM v. Oracle v. MS offers an easier soup to stir than one consisting of many open source implementations. Interesting talk. The most interesting part of that discussion is the notable absence of Sun as a player in the Java discussion. What a weird world.</p> <p>My favorite quote of the session, "Model Driven Architecture is where the rubber meets the sky." Awesome. This comment on the huge abstraction of MDA feels right on.</p> <h2>FDD With Team System</h2> <p><a href="http://weblogs.asp.net/JSemeniuk/" target="_blank">Joel Semenuik</a> provided a great overview of how his organization uses a formal Feature Driven Development process in conjunction with Scrum to deliver software. They do this using of Team System, which is no surprise since Joel is the co-author of <a href="http://www.amazon.com/Managing-Projects-Microsoft-Visual-Pro-Developer/dp/0735622167/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1212632983&amp;sr=1-1">Managing Projects with Microsoft Visual Studio Team System</a> with Martin Danner. </p> <p>I later learned from Martin, who used to be my office mate, that he and Joel are sponsoring a CodePlex project to aggregate open source process templates. What a nice idea! One stop shopping for process templates. I went hunting for it, but couldn't find it on CodePlex yet.</p> <h2>How I Became a Team Build Muscle Man</h2> <p>Steve Borg blew packing material all over me when the build failed in his demo. To be more precise, he had a build monitor application hooked to a fan that blew packing peanuts all over me when his build failed. Nice. It tok 10 minutes to get all the stic clingy bits off me.</p> <p>Anyway, Steve ran through a demo on using Team Build for CI and for deployment. It was pretty good, although I think many of us could have done without the Richard Simmons imitation. :)</p> <p><strong>Deploying to IIS</strong></p> <p>Steve used the MSBuild tasks found in the <a href="http://www.codeplex.com/sdctasks" target="_blank">SDC CodePlex project</a> to deploy his web application to IIS on a deployment and smoke test machine. </p> <p><strong>Deploying SQL Data</strong></p> <p>Even better, he used Visual Studio 2008 DB Pro to create a DB sample data loading script and deployed that to his test DB server via the SDC task DeployDatabase. This ensures that his web tests will always be run against his app with the same underlying data. This makes writing and running automated web tests as part of your build MUCH easier.</p> <p><strong>Misc</strong></p> <p>Also in 2008, we get the new BuildStep task that we can use to emote nice messages into our build log to provide some debugging information. Handy.</p> <p>Implement the ITask interface to create your own tasks BTW. This is easy, I've actually done it!</p> <p>WIX (Windows Installer for XML) is an open source tool that MS actually wrote and released to CodePlex. It is a nice little tool that helps us build MSI installers for our application. This utility is actually used by MS to create their installers like the MS Office and other binaries. This is basically a Visual Studio project that works like MAKE, but better. You can use WIX to accomplish all kinds of things like prepping your target machine's dependencies as part of the MSI. Nice.</p> <h2>Source Control Branching Strategies</h2> <p>This was a great after-hours Birds of a Feather session that deserves a post of its own and will get it. </p> <p>Here's the takeaway: <em>I had no idea source control strategy was a religious issue or that one can see an organization's dysfunction in a source control system's folder structure. </em></p> <p>Now I know.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008, Day 1</title>
		<link>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-1</link>
		<comments>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 01:03:17 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/</guid>
		<description><![CDATA[Keynote by Bill Gates and a cast of Microsoft Executives Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF. Brian Harry on TFS Now and Future This was a great session. I know we are all tired of hearing it, but Rosario really is [...]]]></description>
			<content:encoded><![CDATA[<h2>Keynote by Bill Gates and a cast of Microsoft Executives</h2> <p>Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF.</p> <h2>Brian Harry on TFS Now and Future</h2> <p>This was a great session. I know we are all tired of hearing it, but Rosario really is the release of TFS that will be the ONE. We are all struggling with Work Items and being able to manage our work the way we actually think of our work.</p> <p>The one question I posed was simply how may an organization manage one single backlog of work within TFS and parse out that work to separate teams? The answer is that for right now, there isn't a good story here. I will be blogging later in the summer about how I am solving for this in our organization.</p> <h2>Open Q&amp;A on TFS - Jeff Levinson</h2> <p>Jeff is a Team System MVP and trainer and consultant for <a href="http://www.nwcadence.com/" target="_blank">NW Cadence</a>. He talked people through a lot of the typical questions that get asked soon after you install TFS in your organization.</p> <ol> <li>What source control branching model makes sense for me?  <li>How can I customize my work items?  <li>What's in the service packs?  <li>How should I deploy for my build environments?</li></ol> <p>You get the idea. Here are some likeable nuggets I took away from this session.</p> <ul> <li>If you are installing TFS into an organization with fewer than 500 active developers, install it all on one box.<br><br>I have installed on one machine for simplicity's sake and recommend the same model , but I had no idea the scalability of that model went as high as 500. Jeff claims that this kind of load will only flutter the CPU. Bear in mind, though: This is NOT regarding the build machine. Build machines need to be separate and preferably virtual. <br> <li>Microsoft will be paying closer attention to X in Rosario. X can equal any of these things:  <ul> <li>Project server integration  <li>Portfolio server integration  <li>Query-able link control in work items  <li>Tooling for testers, and that doesn't mean test tools for developers.</li></ul></li></ul> <h2>Application Lifecycle Management Panel Discussion</h2> <p>An entire stage of Team System MVPs, discussing Application Lifecycle Management. Rich Hundhausen, Jeff Levinson, Mike Azocar, Steve Borg, Jeff Beehler,&nbsp; Mickey Gousset, and several others.</p> <p>This is about ALM which includes all phases of the lifecycle, so how are we helped by rapid delivery.</p> <p>I only asked one question of the panel. "What's the view forward for integrating the entire ownership lifecycle? Don't we really need tooling like support in TFS for System Center to get where you are all talking about?"</p> <p>Answer: It turns out that MS is solving for different phases of the overall ALM problem at different phases with different tools. TFS for developers, System Center for I.T., Project and Portfolio Server for the business folks. What ties it all together? Nothing yet. Maybe BizTalk will do the trick, eh? Right.</p> <h2>Scrum-tastic Process Template</h2> <p>Presented by, Mike Azocar, the author and project manager of the actual <a href="http://www.codeplex.com/VSTSScrum" target="_blank">CodePlex project</a> for the Light Weight Scrum Process Template for Team System (whew).</p> <p>I am particularly interested in this work because of the aforementioned focus I have on customizing the <a href="http://scrumforteamsystem.com/en/default.aspx" target="_blank">Scrum process template from Conchango</a>.</p> <p>Nuggets:</p> <ul> <li>An interactive system can never be fully specified - Wagner's Law  <li>Scrum is appealing to many organizations because it is:  <ul> <li>Simple  <li>Free  <li>Transparent  <li>Common sense</li></ul> <li>"No one runs beyond 3 or 4 sprints before changing their out-of-the-box process template." - Mike</li></ul> <h2>Lastly</h2> <p>Keep a watch on <a href="http://msdn.microsoft.com/en-us/events/teched/cc676818.aspx" target="_blank">this page</a>, which hosts videos from the Tech Ed floor. </p> <p>Oh, and I met Richard Campbell of <a href="http://dotnetrocks.com/" target="_blank">DotNetRocks</a>. I told him it was sort of like meeting Madonna. He asked me not to follow him into the bathroom.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Programmability Advisory Council</title>
		<link>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-programmability-advisory-council</link>
		<comments>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 07:41:55 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/data-programmability-advisory-council/</guid>
		<description><![CDATA[Danny Simmons posted some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out: One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">Danny Simmons posted</a> some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out:</p>
<!--more-->
 <blockquote> <p>One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable credentials in that area. </p> <p>Eric Evans - <a href="http://www.domainlanguage.com/about/ericevans.html">http://www.domainlanguage.com/about/ericevans.html</a><br>Stephen Forte - <a href="http://www.stephenforte.net/">http://www.stephenforte.net/</a><br>Martin Fowler - <a href="http://martinfowler.com/">http://martinfowler.com/</a><br>Pavel Hruby - <a href="http://www.phruby.com/">http://www.phruby.com/</a><br>Jimmy Nilsson - <a href="http://jimmynilsson.com/">http://jimmynilsson.com/</a></p></blockquote> <p>Yes... I had to take a second look myself. That's an impressive list I say!  <p>Its just words on a web page at this point, but I think this speaks loud and clear that MS is listening to all the valuable constructive criticism that has been given from the community. I commend the Data Programmability team for making such a great move, but mostly all those who have stepped up to provide their insight.  <p>Along with this announcement, Danny is also requesting that folks continue to <a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">keep providing feedback.</a>  <p>Frickin' <em>sweet!</em>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Future of .NET</title>
		<link>http://elegantcode.com/2008/06/02/the-future-of-net/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-future-of-net</link>
		<comments>http://elegantcode.com/2008/06/02/the-future-of-net/#comments</comments>
		<pubDate>Mon, 02 Jun 2008 18:17:40 +0000</pubDate>
		<dc:creator>Jan Van Ryswyck</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/02/the-future-of-net/</guid>
		<description><![CDATA[That's the title of the latest .NET Rocks episode. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out maintainability, maintainability, maintainability! Let the ASP.NET MVC framework be your first [...]]]></description>
			<content:encoded><![CDATA[<p>That's the title of <a href="http://www.dotnetrocks.com/default.aspx?showNum=346" target="_blank">the latest .NET Rocks episode</a>. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out <a href="http://vanryswyckjan.blogspot.com/2007/01/maintainable-code.html" target="_blank">maintainability</a>, <a href="http://codebetter.com/blogs/jeremy.miller/archive/2006/12/06/On-Writing-Maintainable-Code.aspx" target="_blank">maintainability</a>, <a href="http://elegantcode.com/2008/03/30/elegant-code-essay-contest-winner/" target="_blank">maintainability</a>! Let the ASP.NET MVC framework be your first big success and your guide on the path for providing us developers some tools and most important, some patterns &amp; practices for creating more maintainable software.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/02/the-future-of-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2008 Service Pack 1 &#8211; BETA</title>
		<link>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=visual-studio-2008-service-pack-1-beta</link>
		<comments>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/#comments</comments>
		<pubDate>Fri, 09 May 2008 17:25:43 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/</guid>
		<description><![CDATA["With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement [...]]]></description>
			<content:encoded><![CDATA[<p><em>"</em>With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement in the client-side script tooling including JavaScript IntelliSense. Additionally, full support for SQL Server 2008, the ADO.NET Entity Framework and performance improvements for the IDE make Service Pack 1 a great release across the board.</p> <p>The .NET Framework 3.5 Service Pack 1 delivers more controls, a streamlined setup, improved start-up performance, and powerful new graphics features for client development and rich data scaffolding, improved AJAX support, and other improvements for Web development. Additionally it introduces the ADO.NET Entity Framework and ADO.NET Data Services, which simplify data access code in applications by providing an extensible, conceptual model for data from any data source and enabling this model to closely reflect business requirements.<em>"</em>  <p><em>IF YOU HAVE INSTALLED SILVERLIGHT TOOLS make sure you remove them, and <strong>make sure you also remove KB949325</strong>. See </em><a href="http://www.hanselman.com/blog/VS2008AndNet35SP1BetaShouldYouFearThisRelease.aspx"><em>Hanselman</em></a><em>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> or </em><a href="http://blogs.msdn.com/webdevtools/archive/2008/05/12/error-installing-visual-studio-2008-sp1-beta-and-silverlight-tools-beta-1.aspx"><em>here</em></a><em>.</em> <p>Read more on <a href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx">MSDN</a>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> and <a href="http://blogs.msdn.com/somasegar/archive/2008/05/12/visual-studio-2008-and-net-fx-3-5-sp1-beta-available-now.aspx">Somasegar</a><a href="http://go.microsoft.com/fwlink/?LinkId=119125"></a></p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MS Developer Goodness in Boise on Monday</title>
		<link>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ms-developer-goodness-in-boise-on-monday</link>
		<comments>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 16:17:04 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/</guid>
		<description><![CDATA[MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got [...]]]></description>
			<content:encoded><![CDATA[<p>MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got the not-so-sexy session, but I am spending all day today (and much of the last week) learning about VSTO so that I can share it with you tomorrow.</p>  <p>There are over 350 people registered for the developer track already. Come on down. <a href="http://www.microsoft.com/heroeshappenhere/events/Boise/default.mspx">Register here</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DI hooks in the Framework?</title>
		<link>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=di-mocking-hooks-in-the-framework</link>
		<comments>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/#comments</comments>
		<pubDate>Sat, 26 Apr 2008 04:01:33 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/</guid>
		<description><![CDATA[Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the Managed Extensibility [...]]]></description>
			<content:encoded><![CDATA[<p>Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the <b></b><a href="http://blogs.msdn.com/kcwalina/archive/2008/04/25/MEF.aspx" target="_blank">Managed Extensibility Framework (MEF)</a> can provide you with the best extension points in the .Net Framework. Wow, this is exciting news.</p> <p>On a related note, I heard some rumblings that some future releases (such as v4.0 Asp.Net) will ship with all the unit tests! </p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unity 1.0 EventBroker Sample CAB Style</title>
		<link>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-2</link>
		<comments>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 02:47:34 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/</guid>
		<description><![CDATA[Elegant Code Cast With Ward Bell Ward Bell is the Vice President of Product Management at IdeaBlade, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&#160; Ward was good enough to [...]]]></description>
			<content:encoded><![CDATA[<h2>Elegant Code Cast With Ward Bell</h2> <p><a href="http://neverindoubtnet.blogspot.com/" target="_blank">Ward Bell</a> is the Vice President of Product Management at <a href="http://ideablade.com" target="_blank">IdeaBlade</a>, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&nbsp; Ward was good enough to share 30 minutes or so on the mics and you'll be hearing hi interview on the Elegant Code Cast in the weeks to come.</p> <h2>Platforms for SOA and Business Process Management: Comparing .NET and Java</h2> <p><a href="http://davidchappell.com" target="_blank"><img height="145" src="http://www.davidchappell.com/EMAIL_images/the_man.jpg" width="122" align="right" border="0"></a>This session looks at the worlds of Java and .Net while paying particular attention to the problems found in the ESB space. For example, how does each stack solve for workflow, rules, messaging, etc.</p> <p><a href="http://davidchappell.com/" target="_blank">David Chappell</a> has presented this session at the Java One conference, so it is important to remember that this information as been vetted through the Java community.</p> <p>The basic message came down to this: Sun's stewardship of Java has promoted a fragmentation of technologies implemented in the Java language. This is great news for MS, who provides a unified stack of solutions in these spaces. The presenter asked the room this question, "Who believes that many solutions to workflow is good for the Java community?" About half the room went one way, the other half went another.</p> <p>This gets to the core truth of the whole 1 vs. many solution discussion. Developers obviously love choice in their tools. After all, developers like to tinker and play with new technologies. Are these people also the ones most capable of making core platforms decisions for an enterprise? Typically not, because there is a bias toward new technology adoption over uniform practices.</p> <p>As an example, the speaker told a story:</p> <blockquote> <p>A Java developer asked him at a conference, "Help me construct an argument for my management to get permission for me to use Spring."</p> <p>"Why do you want to use Spring?" asked David.</p> <p>"Because it's cool, man," answered the developer. "I want to play with it because everyone knows it is a better way to write applications."</p> <p>"You should be fired," he answered.</p></blockquote> <p>The point here is that executives and logical decision makers who choose platforms are interested in the long game, not what technology is cool. Can I depend on vendor support? Will the product continue to evolve and grow? These are the questions that yearn for an answer of a unified platform that can be depended on to carry the business forward.</p> <p>David actually cited the Garter quote that predicts the ultimate death of the J2EE platform in favor of vendor supported Java platforms by IBM and Oracle. If that actually comes to fruition, it is fascinating not just for its technical implications, but also for the comment this makes on the ultimate viability of community-based technology stewardship.</p> <p>Maybe this 3 legged race of IBM v. Oracle v. MS offers an easier soup to stir than one consisting of many open source implementations. Interesting talk. The most interesting part of that discussion is the notable absence of Sun as a player in the Java discussion. What a weird world.</p> <p>My favorite quote of the session, "Model Driven Architecture is where the rubber meets the sky." Awesome. This comment on the huge abstraction of MDA feels right on.</p> <h2>FDD With Team System</h2> <p><a href="http://weblogs.asp.net/JSemeniuk/" target="_blank">Joel Semenuik</a> provided a great overview of how his organization uses a formal Feature Driven Development process in conjunction with Scrum to deliver software. They do this using of Team System, which is no surprise since Joel is the co-author of <a href="http://www.amazon.com/Managing-Projects-Microsoft-Visual-Pro-Developer/dp/0735622167/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1212632983&amp;sr=1-1">Managing Projects with Microsoft Visual Studio Team System</a> with Martin Danner. </p> <p>I later learned from Martin, who used to be my office mate, that he and Joel are sponsoring a CodePlex project to aggregate open source process templates. What a nice idea! One stop shopping for process templates. I went hunting for it, but couldn't find it on CodePlex yet.</p> <h2>How I Became a Team Build Muscle Man</h2> <p>Steve Borg blew packing material all over me when the build failed in his demo. To be more precise, he had a build monitor application hooked to a fan that blew packing peanuts all over me when his build failed. Nice. It tok 10 minutes to get all the stic clingy bits off me.</p> <p>Anyway, Steve ran through a demo on using Team Build for CI and for deployment. It was pretty good, although I think many of us could have done without the Richard Simmons imitation. :)</p> <p><strong>Deploying to IIS</strong></p> <p>Steve used the MSBuild tasks found in the <a href="http://www.codeplex.com/sdctasks" target="_blank">SDC CodePlex project</a> to deploy his web application to IIS on a deployment and smoke test machine. </p> <p><strong>Deploying SQL Data</strong></p> <p>Even better, he used Visual Studio 2008 DB Pro to create a DB sample data loading script and deployed that to his test DB server via the SDC task DeployDatabase. This ensures that his web tests will always be run against his app with the same underlying data. This makes writing and running automated web tests as part of your build MUCH easier.</p> <p><strong>Misc</strong></p> <p>Also in 2008, we get the new BuildStep task that we can use to emote nice messages into our build log to provide some debugging information. Handy.</p> <p>Implement the ITask interface to create your own tasks BTW. This is easy, I've actually done it!</p> <p>WIX (Windows Installer for XML) is an open source tool that MS actually wrote and released to CodePlex. It is a nice little tool that helps us build MSI installers for our application. This utility is actually used by MS to create their installers like the MS Office and other binaries. This is basically a Visual Studio project that works like MAKE, but better. You can use WIX to accomplish all kinds of things like prepping your target machine's dependencies as part of the MSI. Nice.</p> <h2>Source Control Branching Strategies</h2> <p>This was a great after-hours Birds of a Feather session that deserves a post of its own and will get it. </p> <p>Here's the takeaway: <em>I had no idea source control strategy was a religious issue or that one can see an organization's dysfunction in a source control system's folder structure. </em></p> <p>Now I know.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Elegant Code &#187; Microsoft</title>
	<atom:link href="http://elegantcode.com/tag/microsoft/feed/" rel="self" type="application/rss+xml" />
	<link>http://elegantcode.com</link>
	<description></description>
	<lastBuildDate>Tue, 15 May 2012 10:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Code Cast 13 &#8211; Microsoft Patterns and Practices</title>
		<link>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=code-cast-13-microsoft-patterns-and-practices</link>
		<comments>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 04:14:00 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[CodeCast]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Code Cast]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Patterns and Practices]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/</guid>
		<description><![CDATA[Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&#38;P, what P&#38;P has to offer the community, and forthcoming products from the team. Show [...]]]></description>
			<content:encoded><![CDATA[<a href="http://microsoftpdc.com/" target="_blank"><img src="http://www.microsoftpdc.com/Images/BlogBling/Bling3.jpg" alt="" align="right" /></a> Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&amp;P, what P&amp;P has to offer the community, and forthcoming products from the team.

<strong>Show Links</strong>
<ul>
	<li><a href="http://blogs.msdn.com/agile/">Grigori Melnik’s Blog</a></li>
	<li><a href="http://blogs.msdn.com/ajoyk/">Ajoy Krishnamoorthy’s Blog</a></li>
	<li><a href="http://msdn.microsoft.com/practices">Microsoft P&amp;P Team Site</a></li>
	<li><a href="http://codeplex.com/TestingGuidance">Acceptance Test Engineering Guidance</a></li>
	<li><a href="http://channel9.msdn.com/posts/Charles/Tour-Patterns-and-Practices-Lab/">P&amp;P Team Room Video</a></li>
	<li><a href="http://msdn.microsoft.com/en-us/practices/bb232643.aspx">P&amp;P Upcoming Releases</a></li>
	<li><a href="http://www.pnpsummit.com/_practices.aspx">Patterns and Practices Summit</a>, November 3-7, 2008</li>
</ul>
<a href="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3">Download the episode MP3</a>

<a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=271207118"><img src="http://elegantcode.com/cast/files/images/itunes_button.gif" border="0" alt="View in iTunes" /></a> <a href="http://feeds.feedburner.com/elegantcodecast"><img src="http://elegantcode.com/cast/files/images/rss_podcast.jpg" border="0" alt="Any Podcatcher" /></a>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:103d8226-f879-4268-877a-01eac008542a" class="wlWriterSmartContent" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/Micrososft+P%26P">Micrososft P&amp;P</a>,<a rel="tag" href="http://technorati.com/tags/Agile">Agile</a>,<a rel="tag" href="http://technorati.com/tags/Patterns+and+Practices">Patterns and Practices</a>,<a rel="tag" href="http://technorati.com/tags/.Net">.Net</a></div>
<img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=39d5550f-2b51-4176-8f5c-cd4d82122c93" alt="" />]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3" length="31363377" type="audio/mpeg" />
		</item>
		<item>
		<title>Microsoft&#8217;s ALM Story</title>
		<link>http://elegantcode.com/2008/06/12/microsofts-alm-story/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=microsofts-alm-story</link>
		<comments>http://elegantcode.com/2008/06/12/microsofts-alm-story/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 04:31:31 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Architecture and Design]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/12/microsofts-alm-story/</guid>
		<description><![CDATA[Microsoft has embraced the idea of Application Lifecycle Management as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. ALM is the enterprise software development holy grail that IBM sought [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft has embraced the idea of <a href="http://en.wikipedia.org/wiki/Application_Lifecycle_Management" target="_blank">Application Lifecycle Management</a> as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. </p> <p>ALM is the enterprise software development holy grail that IBM sought for years and invested in with the <a href="http://www-306.ibm.com/software/rational/" target="_blank">Rational tools</a>. And although there is a tremendous value in prescriptive guidance in enterprise development models, there is a natural tension between the ALM crowd and <em>Development as a Craft</em> advocates. ALM, after all, is all about quantifying, measuring, predicting, planning, and economies of scale. Ironically, the kind of transparency and predictability called for by the minimalist Agile community is the same goal of ALM tooling offered by Big Blue and now by the new blue in Redmond.</p> <p>How are Microsoft products staged to lay across the ALM model? The story today is mixed.</p> <table cellspacing="0" cellpadding="2" width="366" border="1"> <tbody> <tr> <td valign="top" width="160"><strong>ALM Principle</strong></td> <td valign="top" width="204"><strong>MS Product Answer</strong></td></tr> <tr> <td valign="top" width="176">Project Management</td> <td valign="top" width="213">Portfolio Server, Project Server, MS Project</td></tr> <tr> <td valign="top" width="181">Project Tacking</td> <td valign="top" width="214">TFS, MS Project</td></tr> <tr> <td valign="top" width="184">Requirements Planning</td> <td valign="top" width="213">3rd Party Solutions</td></tr> <tr> <td valign="top" width="185">Design and Development</td> <td valign="top" width="212">Visio, Visual Studio</td></tr> <tr> <td valign="top" width="186">Quality Assurance</td> <td valign="top" width="211">Visual Studio</td></tr> <tr> <td valign="top" width="187">Release Management</td> <td valign="top" width="211">System Center, Team Build</td></tr> <tr> <td valign="top" width="187">Helpdesk</td> <td valign="top" width="211">SharePoint?</td></tr></tbody></table> <p>Your familiarity with these products may lead you to the same conclusion that many have already reached. The products in the stack currently fail to integrate cleanly and many provide only a starting taste of the functionality needed to realize the ALM vision. The story is obviously a little muddy today. But what's next?</p> <p>Team System Rosario promises much improvement in the areas of tracking, design, quality assurance, and development. Significant bridges are also being started toward improving the release management story.</p> <p>That won't do it all, of course. There are other pieces needed in the stack that will need to be freshened up including operational support tools. Microsoft is in hot pursuit of filling this gap with a host of products under the <a href="http://www.microsoft.com/systemcenter/en/us/products.aspx" target="_blank">System Center umbrella of products</a>. An actual helpdesk management system to displace the TechExcels and Remedys of the world is essential here.</p> <p>The point is, MS has its sights set on a complete ALM story and are focusing on the midsize market, as Microsoft is so good at doing. </p> <h2>The Good</h2> <p>A focus on ALM in the Microsoft stack will have a tremendous impact on software development and delivery as we know it. Interoperable components in the pipeline will help bridge those gaps in midsize organizations that are typically only filled in large enterprises. Transparency will be ubiquitous.</p> <p>Given the open nature of products being developed at MS these days, I have high hopes that these systems will truly be pluggable, so that if you want to bridge TFS to Remedy (for example) doing so is not rocket surgery. Web services are great, aren't they?</p> <h2>Concerns</h2> <p>There is a fine line between managing for predictability and 'command and control'. Tools like those in this stack are like guns. They can be used for good, but misuse is more common than not. </p> <p>Tooling like this gives every non-tool Agilist out there genuine pause, and with good reason. The history of stewardship in complex models like this is less than stellar. That is to say, this tooling can provide huge value, and the basis for crushing souls. Let's be careful how we wield them.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/12/microsofts-alm-story/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008 Day 2</title>
		<link>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-2</link>
		<comments>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 02:47:34 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/</guid>
		<description><![CDATA[Elegant Code Cast With Ward Bell Ward Bell is the Vice President of Product Management at IdeaBlade, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&#160; Ward was good enough to [...]]]></description>
			<content:encoded><![CDATA[<h2>Elegant Code Cast With Ward Bell</h2> <p><a href="http://neverindoubtnet.blogspot.com/" target="_blank">Ward Bell</a> is the Vice President of Product Management at <a href="http://ideablade.com" target="_blank">IdeaBlade</a>, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&nbsp; Ward was good enough to share 30 minutes or so on the mics and you'll be hearing hi interview on the Elegant Code Cast in the weeks to come.</p> <h2>Platforms for SOA and Business Process Management: Comparing .NET and Java</h2> <p><a href="http://davidchappell.com" target="_blank"><img height="145" src="http://www.davidchappell.com/EMAIL_images/the_man.jpg" width="122" align="right" border="0"></a>This session looks at the worlds of Java and .Net while paying particular attention to the problems found in the ESB space. For example, how does each stack solve for workflow, rules, messaging, etc.</p> <p><a href="http://davidchappell.com/" target="_blank">David Chappell</a> has presented this session at the Java One conference, so it is important to remember that this information as been vetted through the Java community.</p> <p>The basic message came down to this: Sun's stewardship of Java has promoted a fragmentation of technologies implemented in the Java language. This is great news for MS, who provides a unified stack of solutions in these spaces. The presenter asked the room this question, "Who believes that many solutions to workflow is good for the Java community?" About half the room went one way, the other half went another.</p> <p>This gets to the core truth of the whole 1 vs. many solution discussion. Developers obviously love choice in their tools. After all, developers like to tinker and play with new technologies. Are these people also the ones most capable of making core platforms decisions for an enterprise? Typically not, because there is a bias toward new technology adoption over uniform practices.</p> <p>As an example, the speaker told a story:</p> <blockquote> <p>A Java developer asked him at a conference, "Help me construct an argument for my management to get permission for me to use Spring."</p> <p>"Why do you want to use Spring?" asked David.</p> <p>"Because it's cool, man," answered the developer. "I want to play with it because everyone knows it is a better way to write applications."</p> <p>"You should be fired," he answered.</p></blockquote> <p>The point here is that executives and logical decision makers who choose platforms are interested in the long game, not what technology is cool. Can I depend on vendor support? Will the product continue to evolve and grow? These are the questions that yearn for an answer of a unified platform that can be depended on to carry the business forward.</p> <p>David actually cited the Garter quote that predicts the ultimate death of the J2EE platform in favor of vendor supported Java platforms by IBM and Oracle. If that actually comes to fruition, it is fascinating not just for its technical implications, but also for the comment this makes on the ultimate viability of community-based technology stewardship.</p> <p>Maybe this 3 legged race of IBM v. Oracle v. MS offers an easier soup to stir than one consisting of many open source implementations. Interesting talk. The most interesting part of that discussion is the notable absence of Sun as a player in the Java discussion. What a weird world.</p> <p>My favorite quote of the session, "Model Driven Architecture is where the rubber meets the sky." Awesome. This comment on the huge abstraction of MDA feels right on.</p> <h2>FDD With Team System</h2> <p><a href="http://weblogs.asp.net/JSemeniuk/" target="_blank">Joel Semenuik</a> provided a great overview of how his organization uses a formal Feature Driven Development process in conjunction with Scrum to deliver software. They do this using of Team System, which is no surprise since Joel is the co-author of <a href="http://www.amazon.com/Managing-Projects-Microsoft-Visual-Pro-Developer/dp/0735622167/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1212632983&amp;sr=1-1">Managing Projects with Microsoft Visual Studio Team System</a> with Martin Danner. </p> <p>I later learned from Martin, who used to be my office mate, that he and Joel are sponsoring a CodePlex project to aggregate open source process templates. What a nice idea! One stop shopping for process templates. I went hunting for it, but couldn't find it on CodePlex yet.</p> <h2>How I Became a Team Build Muscle Man</h2> <p>Steve Borg blew packing material all over me when the build failed in his demo. To be more precise, he had a build monitor application hooked to a fan that blew packing peanuts all over me when his build failed. Nice. It tok 10 minutes to get all the stic clingy bits off me.</p> <p>Anyway, Steve ran through a demo on using Team Build for CI and for deployment. It was pretty good, although I think many of us could have done without the Richard Simmons imitation. :)</p> <p><strong>Deploying to IIS</strong></p> <p>Steve used the MSBuild tasks found in the <a href="http://www.codeplex.com/sdctasks" target="_blank">SDC CodePlex project</a> to deploy his web application to IIS on a deployment and smoke test machine. </p> <p><strong>Deploying SQL Data</strong></p> <p>Even better, he used Visual Studio 2008 DB Pro to create a DB sample data loading script and deployed that to his test DB server via the SDC task DeployDatabase. This ensures that his web tests will always be run against his app with the same underlying data. This makes writing and running automated web tests as part of your build MUCH easier.</p> <p><strong>Misc</strong></p> <p>Also in 2008, we get the new BuildStep task that we can use to emote nice messages into our build log to provide some debugging information. Handy.</p> <p>Implement the ITask interface to create your own tasks BTW. This is easy, I've actually done it!</p> <p>WIX (Windows Installer for XML) is an open source tool that MS actually wrote and released to CodePlex. It is a nice little tool that helps us build MSI installers for our application. This utility is actually used by MS to create their installers like the MS Office and other binaries. This is basically a Visual Studio project that works like MAKE, but better. You can use WIX to accomplish all kinds of things like prepping your target machine's dependencies as part of the MSI. Nice.</p> <h2>Source Control Branching Strategies</h2> <p>This was a great after-hours Birds of a Feather session that deserves a post of its own and will get it. </p> <p>Here's the takeaway: <em>I had no idea source control strategy was a religious issue or that one can see an organization's dysfunction in a source control system's folder structure. </em></p> <p>Now I know.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008, Day 1</title>
		<link>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-1</link>
		<comments>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 01:03:17 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/</guid>
		<description><![CDATA[Keynote by Bill Gates and a cast of Microsoft Executives Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF. Brian Harry on TFS Now and Future This was a great session. I know we are all tired of hearing it, but Rosario really is [...]]]></description>
			<content:encoded><![CDATA[<h2>Keynote by Bill Gates and a cast of Microsoft Executives</h2> <p>Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF.</p> <h2>Brian Harry on TFS Now and Future</h2> <p>This was a great session. I know we are all tired of hearing it, but Rosario really is the release of TFS that will be the ONE. We are all struggling with Work Items and being able to manage our work the way we actually think of our work.</p> <p>The one question I posed was simply how may an organization manage one single backlog of work within TFS and parse out that work to separate teams? The answer is that for right now, there isn't a good story here. I will be blogging later in the summer about how I am solving for this in our organization.</p> <h2>Open Q&amp;A on TFS - Jeff Levinson</h2> <p>Jeff is a Team System MVP and trainer and consultant for <a href="http://www.nwcadence.com/" target="_blank">NW Cadence</a>. He talked people through a lot of the typical questions that get asked soon after you install TFS in your organization.</p> <ol> <li>What source control branching model makes sense for me?  <li>How can I customize my work items?  <li>What's in the service packs?  <li>How should I deploy for my build environments?</li></ol> <p>You get the idea. Here are some likeable nuggets I took away from this session.</p> <ul> <li>If you are installing TFS into an organization with fewer than 500 active developers, install it all on one box.<br><br>I have installed on one machine for simplicity's sake and recommend the same model , but I had no idea the scalability of that model went as high as 500. Jeff claims that this kind of load will only flutter the CPU. Bear in mind, though: This is NOT regarding the build machine. Build machines need to be separate and preferably virtual. <br> <li>Microsoft will be paying closer attention to X in Rosario. X can equal any of these things:  <ul> <li>Project server integration  <li>Portfolio server integration  <li>Query-able link control in work items  <li>Tooling for testers, and that doesn't mean test tools for developers.</li></ul></li></ul> <h2>Application Lifecycle Management Panel Discussion</h2> <p>An entire stage of Team System MVPs, discussing Application Lifecycle Management. Rich Hundhausen, Jeff Levinson, Mike Azocar, Steve Borg, Jeff Beehler,&nbsp; Mickey Gousset, and several others.</p> <p>This is about ALM which includes all phases of the lifecycle, so how are we helped by rapid delivery.</p> <p>I only asked one question of the panel. "What's the view forward for integrating the entire ownership lifecycle? Don't we really need tooling like support in TFS for System Center to get where you are all talking about?"</p> <p>Answer: It turns out that MS is solving for different phases of the overall ALM problem at different phases with different tools. TFS for developers, System Center for I.T., Project and Portfolio Server for the business folks. What ties it all together? Nothing yet. Maybe BizTalk will do the trick, eh? Right.</p> <h2>Scrum-tastic Process Template</h2> <p>Presented by, Mike Azocar, the author and project manager of the actual <a href="http://www.codeplex.com/VSTSScrum" target="_blank">CodePlex project</a> for the Light Weight Scrum Process Template for Team System (whew).</p> <p>I am particularly interested in this work because of the aforementioned focus I have on customizing the <a href="http://scrumforteamsystem.com/en/default.aspx" target="_blank">Scrum process template from Conchango</a>.</p> <p>Nuggets:</p> <ul> <li>An interactive system can never be fully specified - Wagner's Law  <li>Scrum is appealing to many organizations because it is:  <ul> <li>Simple  <li>Free  <li>Transparent  <li>Common sense</li></ul> <li>"No one runs beyond 3 or 4 sprints before changing their out-of-the-box process template." - Mike</li></ul> <h2>Lastly</h2> <p>Keep a watch on <a href="http://msdn.microsoft.com/en-us/events/teched/cc676818.aspx" target="_blank">this page</a>, which hosts videos from the Tech Ed floor. </p> <p>Oh, and I met Richard Campbell of <a href="http://dotnetrocks.com/" target="_blank">DotNetRocks</a>. I told him it was sort of like meeting Madonna. He asked me not to follow him into the bathroom.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Programmability Advisory Council</title>
		<link>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-programmability-advisory-council</link>
		<comments>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 07:41:55 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/data-programmability-advisory-council/</guid>
		<description><![CDATA[Danny Simmons posted some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out: One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">Danny Simmons posted</a> some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out:</p>
<!--more-->
 <blockquote> <p>One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable credentials in that area. </p> <p>Eric Evans - <a href="http://www.domainlanguage.com/about/ericevans.html">http://www.domainlanguage.com/about/ericevans.html</a><br>Stephen Forte - <a href="http://www.stephenforte.net/">http://www.stephenforte.net/</a><br>Martin Fowler - <a href="http://martinfowler.com/">http://martinfowler.com/</a><br>Pavel Hruby - <a href="http://www.phruby.com/">http://www.phruby.com/</a><br>Jimmy Nilsson - <a href="http://jimmynilsson.com/">http://jimmynilsson.com/</a></p></blockquote> <p>Yes... I had to take a second look myself. That's an impressive list I say!  <p>Its just words on a web page at this point, but I think this speaks loud and clear that MS is listening to all the valuable constructive criticism that has been given from the community. I commend the Data Programmability team for making such a great move, but mostly all those who have stepped up to provide their insight.  <p>Along with this announcement, Danny is also requesting that folks continue to <a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">keep providing feedback.</a>  <p>Frickin' <em>sweet!</em>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Future of .NET</title>
		<link>http://elegantcode.com/2008/06/02/the-future-of-net/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-future-of-net</link>
		<comments>http://elegantcode.com/2008/06/02/the-future-of-net/#comments</comments>
		<pubDate>Mon, 02 Jun 2008 18:17:40 +0000</pubDate>
		<dc:creator>Jan Van Ryswyck</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/02/the-future-of-net/</guid>
		<description><![CDATA[That's the title of the latest .NET Rocks episode. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out maintainability, maintainability, maintainability! Let the ASP.NET MVC framework be your first [...]]]></description>
			<content:encoded><![CDATA[<p>That's the title of <a href="http://www.dotnetrocks.com/default.aspx?showNum=346" target="_blank">the latest .NET Rocks episode</a>. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out <a href="http://vanryswyckjan.blogspot.com/2007/01/maintainable-code.html" target="_blank">maintainability</a>, <a href="http://codebetter.com/blogs/jeremy.miller/archive/2006/12/06/On-Writing-Maintainable-Code.aspx" target="_blank">maintainability</a>, <a href="http://elegantcode.com/2008/03/30/elegant-code-essay-contest-winner/" target="_blank">maintainability</a>! Let the ASP.NET MVC framework be your first big success and your guide on the path for providing us developers some tools and most important, some patterns &amp; practices for creating more maintainable software.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/02/the-future-of-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2008 Service Pack 1 &#8211; BETA</title>
		<link>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=visual-studio-2008-service-pack-1-beta</link>
		<comments>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/#comments</comments>
		<pubDate>Fri, 09 May 2008 17:25:43 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/</guid>
		<description><![CDATA["With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement [...]]]></description>
			<content:encoded><![CDATA[<p><em>"</em>With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement in the client-side script tooling including JavaScript IntelliSense. Additionally, full support for SQL Server 2008, the ADO.NET Entity Framework and performance improvements for the IDE make Service Pack 1 a great release across the board.</p> <p>The .NET Framework 3.5 Service Pack 1 delivers more controls, a streamlined setup, improved start-up performance, and powerful new graphics features for client development and rich data scaffolding, improved AJAX support, and other improvements for Web development. Additionally it introduces the ADO.NET Entity Framework and ADO.NET Data Services, which simplify data access code in applications by providing an extensible, conceptual model for data from any data source and enabling this model to closely reflect business requirements.<em>"</em>  <p><em>IF YOU HAVE INSTALLED SILVERLIGHT TOOLS make sure you remove them, and <strong>make sure you also remove KB949325</strong>. See </em><a href="http://www.hanselman.com/blog/VS2008AndNet35SP1BetaShouldYouFearThisRelease.aspx"><em>Hanselman</em></a><em>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> or </em><a href="http://blogs.msdn.com/webdevtools/archive/2008/05/12/error-installing-visual-studio-2008-sp1-beta-and-silverlight-tools-beta-1.aspx"><em>here</em></a><em>.</em> <p>Read more on <a href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx">MSDN</a>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> and <a href="http://blogs.msdn.com/somasegar/archive/2008/05/12/visual-studio-2008-and-net-fx-3-5-sp1-beta-available-now.aspx">Somasegar</a><a href="http://go.microsoft.com/fwlink/?LinkId=119125"></a></p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MS Developer Goodness in Boise on Monday</title>
		<link>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ms-developer-goodness-in-boise-on-monday</link>
		<comments>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 16:17:04 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/</guid>
		<description><![CDATA[MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got [...]]]></description>
			<content:encoded><![CDATA[<p>MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got the not-so-sexy session, but I am spending all day today (and much of the last week) learning about VSTO so that I can share it with you tomorrow.</p>  <p>There are over 350 people registered for the developer track already. Come on down. <a href="http://www.microsoft.com/heroeshappenhere/events/Boise/default.mspx">Register here</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DI hooks in the Framework?</title>
		<link>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=di-mocking-hooks-in-the-framework</link>
		<comments>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/#comments</comments>
		<pubDate>Sat, 26 Apr 2008 04:01:33 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/</guid>
		<description><![CDATA[Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the Managed Extensibility [...]]]></description>
			<content:encoded><![CDATA[<p>Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the <b></b><a href="http://blogs.msdn.com/kcwalina/archive/2008/04/25/MEF.aspx" target="_blank">Managed Extensibility Framework (MEF)</a> can provide you with the best extension points in the .Net Framework. Wow, this is exciting news.</p> <p>On a related note, I heard some rumblings that some future releases (such as v4.0 Asp.Net) will ship with all the unit tests! </p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unity 1.0 EventBroker Sample CAB Style</title>
		<link>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-1</link>
		<comments>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 01:03:17 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/</guid>
		<description><![CDATA[Keynote by Bill Gates and a cast of Microsoft Executives Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF. Brian Harry on TFS Now and Future This was a great session. I know we are all tired of hearing it, but Rosario really is [...]]]></description>
			<content:encoded><![CDATA[<h2>Keynote by Bill Gates and a cast of Microsoft Executives</h2> <p>Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF.</p> <h2>Brian Harry on TFS Now and Future</h2> <p>This was a great session. I know we are all tired of hearing it, but Rosario really is the release of TFS that will be the ONE. We are all struggling with Work Items and being able to manage our work the way we actually think of our work.</p> <p>The one question I posed was simply how may an organization manage one single backlog of work within TFS and parse out that work to separate teams? The answer is that for right now, there isn't a good story here. I will be blogging later in the summer about how I am solving for this in our organization.</p> <h2>Open Q&amp;A on TFS - Jeff Levinson</h2> <p>Jeff is a Team System MVP and trainer and consultant for <a href="http://www.nwcadence.com/" target="_blank">NW Cadence</a>. He talked people through a lot of the typical questions that get asked soon after you install TFS in your organization.</p> <ol> <li>What source control branching model makes sense for me?  <li>How can I customize my work items?  <li>What's in the service packs?  <li>How should I deploy for my build environments?</li></ol> <p>You get the idea. Here are some likeable nuggets I took away from this session.</p> <ul> <li>If you are installing TFS into an organization with fewer than 500 active developers, install it all on one box.<br><br>I have installed on one machine for simplicity's sake and recommend the same model , but I had no idea the scalability of that model went as high as 500. Jeff claims that this kind of load will only flutter the CPU. Bear in mind, though: This is NOT regarding the build machine. Build machines need to be separate and preferably virtual. <br> <li>Microsoft will be paying closer attention to X in Rosario. X can equal any of these things:  <ul> <li>Project server integration  <li>Portfolio server integration  <li>Query-able link control in work items  <li>Tooling for testers, and that doesn't mean test tools for developers.</li></ul></li></ul> <h2>Application Lifecycle Management Panel Discussion</h2> <p>An entire stage of Team System MVPs, discussing Application Lifecycle Management. Rich Hundhausen, Jeff Levinson, Mike Azocar, Steve Borg, Jeff Beehler,&nbsp; Mickey Gousset, and several others.</p> <p>This is about ALM which includes all phases of the lifecycle, so how are we helped by rapid delivery.</p> <p>I only asked one question of the panel. "What's the view forward for integrating the entire ownership lifecycle? Don't we really need tooling like support in TFS for System Center to get where you are all talking about?"</p> <p>Answer: It turns out that MS is solving for different phases of the overall ALM problem at different phases with different tools. TFS for developers, System Center for I.T., Project and Portfolio Server for the business folks. What ties it all together? Nothing yet. Maybe BizTalk will do the trick, eh? Right.</p> <h2>Scrum-tastic Process Template</h2> <p>Presented by, Mike Azocar, the author and project manager of the actual <a href="http://www.codeplex.com/VSTSScrum" target="_blank">CodePlex project</a> for the Light Weight Scrum Process Template for Team System (whew).</p> <p>I am particularly interested in this work because of the aforementioned focus I have on customizing the <a href="http://scrumforteamsystem.com/en/default.aspx" target="_blank">Scrum process template from Conchango</a>.</p> <p>Nuggets:</p> <ul> <li>An interactive system can never be fully specified - Wagner's Law  <li>Scrum is appealing to many organizations because it is:  <ul> <li>Simple  <li>Free  <li>Transparent  <li>Common sense</li></ul> <li>"No one runs beyond 3 or 4 sprints before changing their out-of-the-box process template." - Mike</li></ul> <h2>Lastly</h2> <p>Keep a watch on <a href="http://msdn.microsoft.com/en-us/events/teched/cc676818.aspx" target="_blank">this page</a>, which hosts videos from the Tech Ed floor. </p> <p>Oh, and I met Richard Campbell of <a href="http://dotnetrocks.com/" target="_blank">DotNetRocks</a>. I told him it was sort of like meeting Madonna. He asked me not to follow him into the bathroom.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Elegant Code &#187; Microsoft</title>
	<atom:link href="http://elegantcode.com/tag/microsoft/feed/" rel="self" type="application/rss+xml" />
	<link>http://elegantcode.com</link>
	<description></description>
	<lastBuildDate>Tue, 15 May 2012 10:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Code Cast 13 &#8211; Microsoft Patterns and Practices</title>
		<link>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=code-cast-13-microsoft-patterns-and-practices</link>
		<comments>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 04:14:00 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[CodeCast]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Code Cast]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Patterns and Practices]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/</guid>
		<description><![CDATA[Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&#38;P, what P&#38;P has to offer the community, and forthcoming products from the team. Show [...]]]></description>
			<content:encoded><![CDATA[<a href="http://microsoftpdc.com/" target="_blank"><img src="http://www.microsoftpdc.com/Images/BlogBling/Bling3.jpg" alt="" align="right" /></a> Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&amp;P, what P&amp;P has to offer the community, and forthcoming products from the team.

<strong>Show Links</strong>
<ul>
	<li><a href="http://blogs.msdn.com/agile/">Grigori Melnik’s Blog</a></li>
	<li><a href="http://blogs.msdn.com/ajoyk/">Ajoy Krishnamoorthy’s Blog</a></li>
	<li><a href="http://msdn.microsoft.com/practices">Microsoft P&amp;P Team Site</a></li>
	<li><a href="http://codeplex.com/TestingGuidance">Acceptance Test Engineering Guidance</a></li>
	<li><a href="http://channel9.msdn.com/posts/Charles/Tour-Patterns-and-Practices-Lab/">P&amp;P Team Room Video</a></li>
	<li><a href="http://msdn.microsoft.com/en-us/practices/bb232643.aspx">P&amp;P Upcoming Releases</a></li>
	<li><a href="http://www.pnpsummit.com/_practices.aspx">Patterns and Practices Summit</a>, November 3-7, 2008</li>
</ul>
<a href="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3">Download the episode MP3</a>

<a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=271207118"><img src="http://elegantcode.com/cast/files/images/itunes_button.gif" border="0" alt="View in iTunes" /></a> <a href="http://feeds.feedburner.com/elegantcodecast"><img src="http://elegantcode.com/cast/files/images/rss_podcast.jpg" border="0" alt="Any Podcatcher" /></a>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:103d8226-f879-4268-877a-01eac008542a" class="wlWriterSmartContent" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/Micrososft+P%26P">Micrososft P&amp;P</a>,<a rel="tag" href="http://technorati.com/tags/Agile">Agile</a>,<a rel="tag" href="http://technorati.com/tags/Patterns+and+Practices">Patterns and Practices</a>,<a rel="tag" href="http://technorati.com/tags/.Net">.Net</a></div>
<img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=39d5550f-2b51-4176-8f5c-cd4d82122c93" alt="" />]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3" length="31363377" type="audio/mpeg" />
		</item>
		<item>
		<title>Microsoft&#8217;s ALM Story</title>
		<link>http://elegantcode.com/2008/06/12/microsofts-alm-story/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=microsofts-alm-story</link>
		<comments>http://elegantcode.com/2008/06/12/microsofts-alm-story/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 04:31:31 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Architecture and Design]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/12/microsofts-alm-story/</guid>
		<description><![CDATA[Microsoft has embraced the idea of Application Lifecycle Management as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. ALM is the enterprise software development holy grail that IBM sought [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft has embraced the idea of <a href="http://en.wikipedia.org/wiki/Application_Lifecycle_Management" target="_blank">Application Lifecycle Management</a> as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. </p> <p>ALM is the enterprise software development holy grail that IBM sought for years and invested in with the <a href="http://www-306.ibm.com/software/rational/" target="_blank">Rational tools</a>. And although there is a tremendous value in prescriptive guidance in enterprise development models, there is a natural tension between the ALM crowd and <em>Development as a Craft</em> advocates. ALM, after all, is all about quantifying, measuring, predicting, planning, and economies of scale. Ironically, the kind of transparency and predictability called for by the minimalist Agile community is the same goal of ALM tooling offered by Big Blue and now by the new blue in Redmond.</p> <p>How are Microsoft products staged to lay across the ALM model? The story today is mixed.</p> <table cellspacing="0" cellpadding="2" width="366" border="1"> <tbody> <tr> <td valign="top" width="160"><strong>ALM Principle</strong></td> <td valign="top" width="204"><strong>MS Product Answer</strong></td></tr> <tr> <td valign="top" width="176">Project Management</td> <td valign="top" width="213">Portfolio Server, Project Server, MS Project</td></tr> <tr> <td valign="top" width="181">Project Tacking</td> <td valign="top" width="214">TFS, MS Project</td></tr> <tr> <td valign="top" width="184">Requirements Planning</td> <td valign="top" width="213">3rd Party Solutions</td></tr> <tr> <td valign="top" width="185">Design and Development</td> <td valign="top" width="212">Visio, Visual Studio</td></tr> <tr> <td valign="top" width="186">Quality Assurance</td> <td valign="top" width="211">Visual Studio</td></tr> <tr> <td valign="top" width="187">Release Management</td> <td valign="top" width="211">System Center, Team Build</td></tr> <tr> <td valign="top" width="187">Helpdesk</td> <td valign="top" width="211">SharePoint?</td></tr></tbody></table> <p>Your familiarity with these products may lead you to the same conclusion that many have already reached. The products in the stack currently fail to integrate cleanly and many provide only a starting taste of the functionality needed to realize the ALM vision. The story is obviously a little muddy today. But what's next?</p> <p>Team System Rosario promises much improvement in the areas of tracking, design, quality assurance, and development. Significant bridges are also being started toward improving the release management story.</p> <p>That won't do it all, of course. There are other pieces needed in the stack that will need to be freshened up including operational support tools. Microsoft is in hot pursuit of filling this gap with a host of products under the <a href="http://www.microsoft.com/systemcenter/en/us/products.aspx" target="_blank">System Center umbrella of products</a>. An actual helpdesk management system to displace the TechExcels and Remedys of the world is essential here.</p> <p>The point is, MS has its sights set on a complete ALM story and are focusing on the midsize market, as Microsoft is so good at doing. </p> <h2>The Good</h2> <p>A focus on ALM in the Microsoft stack will have a tremendous impact on software development and delivery as we know it. Interoperable components in the pipeline will help bridge those gaps in midsize organizations that are typically only filled in large enterprises. Transparency will be ubiquitous.</p> <p>Given the open nature of products being developed at MS these days, I have high hopes that these systems will truly be pluggable, so that if you want to bridge TFS to Remedy (for example) doing so is not rocket surgery. Web services are great, aren't they?</p> <h2>Concerns</h2> <p>There is a fine line between managing for predictability and 'command and control'. Tools like those in this stack are like guns. They can be used for good, but misuse is more common than not. </p> <p>Tooling like this gives every non-tool Agilist out there genuine pause, and with good reason. The history of stewardship in complex models like this is less than stellar. That is to say, this tooling can provide huge value, and the basis for crushing souls. Let's be careful how we wield them.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/12/microsofts-alm-story/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008 Day 2</title>
		<link>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-2</link>
		<comments>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 02:47:34 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/</guid>
		<description><![CDATA[Elegant Code Cast With Ward Bell Ward Bell is the Vice President of Product Management at IdeaBlade, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&#160; Ward was good enough to [...]]]></description>
			<content:encoded><![CDATA[<h2>Elegant Code Cast With Ward Bell</h2> <p><a href="http://neverindoubtnet.blogspot.com/" target="_blank">Ward Bell</a> is the Vice President of Product Management at <a href="http://ideablade.com" target="_blank">IdeaBlade</a>, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&nbsp; Ward was good enough to share 30 minutes or so on the mics and you'll be hearing hi interview on the Elegant Code Cast in the weeks to come.</p> <h2>Platforms for SOA and Business Process Management: Comparing .NET and Java</h2> <p><a href="http://davidchappell.com" target="_blank"><img height="145" src="http://www.davidchappell.com/EMAIL_images/the_man.jpg" width="122" align="right" border="0"></a>This session looks at the worlds of Java and .Net while paying particular attention to the problems found in the ESB space. For example, how does each stack solve for workflow, rules, messaging, etc.</p> <p><a href="http://davidchappell.com/" target="_blank">David Chappell</a> has presented this session at the Java One conference, so it is important to remember that this information as been vetted through the Java community.</p> <p>The basic message came down to this: Sun's stewardship of Java has promoted a fragmentation of technologies implemented in the Java language. This is great news for MS, who provides a unified stack of solutions in these spaces. The presenter asked the room this question, "Who believes that many solutions to workflow is good for the Java community?" About half the room went one way, the other half went another.</p> <p>This gets to the core truth of the whole 1 vs. many solution discussion. Developers obviously love choice in their tools. After all, developers like to tinker and play with new technologies. Are these people also the ones most capable of making core platforms decisions for an enterprise? Typically not, because there is a bias toward new technology adoption over uniform practices.</p> <p>As an example, the speaker told a story:</p> <blockquote> <p>A Java developer asked him at a conference, "Help me construct an argument for my management to get permission for me to use Spring."</p> <p>"Why do you want to use Spring?" asked David.</p> <p>"Because it's cool, man," answered the developer. "I want to play with it because everyone knows it is a better way to write applications."</p> <p>"You should be fired," he answered.</p></blockquote> <p>The point here is that executives and logical decision makers who choose platforms are interested in the long game, not what technology is cool. Can I depend on vendor support? Will the product continue to evolve and grow? These are the questions that yearn for an answer of a unified platform that can be depended on to carry the business forward.</p> <p>David actually cited the Garter quote that predicts the ultimate death of the J2EE platform in favor of vendor supported Java platforms by IBM and Oracle. If that actually comes to fruition, it is fascinating not just for its technical implications, but also for the comment this makes on the ultimate viability of community-based technology stewardship.</p> <p>Maybe this 3 legged race of IBM v. Oracle v. MS offers an easier soup to stir than one consisting of many open source implementations. Interesting talk. The most interesting part of that discussion is the notable absence of Sun as a player in the Java discussion. What a weird world.</p> <p>My favorite quote of the session, "Model Driven Architecture is where the rubber meets the sky." Awesome. This comment on the huge abstraction of MDA feels right on.</p> <h2>FDD With Team System</h2> <p><a href="http://weblogs.asp.net/JSemeniuk/" target="_blank">Joel Semenuik</a> provided a great overview of how his organization uses a formal Feature Driven Development process in conjunction with Scrum to deliver software. They do this using of Team System, which is no surprise since Joel is the co-author of <a href="http://www.amazon.com/Managing-Projects-Microsoft-Visual-Pro-Developer/dp/0735622167/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1212632983&amp;sr=1-1">Managing Projects with Microsoft Visual Studio Team System</a> with Martin Danner. </p> <p>I later learned from Martin, who used to be my office mate, that he and Joel are sponsoring a CodePlex project to aggregate open source process templates. What a nice idea! One stop shopping for process templates. I went hunting for it, but couldn't find it on CodePlex yet.</p> <h2>How I Became a Team Build Muscle Man</h2> <p>Steve Borg blew packing material all over me when the build failed in his demo. To be more precise, he had a build monitor application hooked to a fan that blew packing peanuts all over me when his build failed. Nice. It tok 10 minutes to get all the stic clingy bits off me.</p> <p>Anyway, Steve ran through a demo on using Team Build for CI and for deployment. It was pretty good, although I think many of us could have done without the Richard Simmons imitation. :)</p> <p><strong>Deploying to IIS</strong></p> <p>Steve used the MSBuild tasks found in the <a href="http://www.codeplex.com/sdctasks" target="_blank">SDC CodePlex project</a> to deploy his web application to IIS on a deployment and smoke test machine. </p> <p><strong>Deploying SQL Data</strong></p> <p>Even better, he used Visual Studio 2008 DB Pro to create a DB sample data loading script and deployed that to his test DB server via the SDC task DeployDatabase. This ensures that his web tests will always be run against his app with the same underlying data. This makes writing and running automated web tests as part of your build MUCH easier.</p> <p><strong>Misc</strong></p> <p>Also in 2008, we get the new BuildStep task that we can use to emote nice messages into our build log to provide some debugging information. Handy.</p> <p>Implement the ITask interface to create your own tasks BTW. This is easy, I've actually done it!</p> <p>WIX (Windows Installer for XML) is an open source tool that MS actually wrote and released to CodePlex. It is a nice little tool that helps us build MSI installers for our application. This utility is actually used by MS to create their installers like the MS Office and other binaries. This is basically a Visual Studio project that works like MAKE, but better. You can use WIX to accomplish all kinds of things like prepping your target machine's dependencies as part of the MSI. Nice.</p> <h2>Source Control Branching Strategies</h2> <p>This was a great after-hours Birds of a Feather session that deserves a post of its own and will get it. </p> <p>Here's the takeaway: <em>I had no idea source control strategy was a religious issue or that one can see an organization's dysfunction in a source control system's folder structure. </em></p> <p>Now I know.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008, Day 1</title>
		<link>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-1</link>
		<comments>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 01:03:17 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/</guid>
		<description><![CDATA[Keynote by Bill Gates and a cast of Microsoft Executives Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF. Brian Harry on TFS Now and Future This was a great session. I know we are all tired of hearing it, but Rosario really is [...]]]></description>
			<content:encoded><![CDATA[<h2>Keynote by Bill Gates and a cast of Microsoft Executives</h2> <p>Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF.</p> <h2>Brian Harry on TFS Now and Future</h2> <p>This was a great session. I know we are all tired of hearing it, but Rosario really is the release of TFS that will be the ONE. We are all struggling with Work Items and being able to manage our work the way we actually think of our work.</p> <p>The one question I posed was simply how may an organization manage one single backlog of work within TFS and parse out that work to separate teams? The answer is that for right now, there isn't a good story here. I will be blogging later in the summer about how I am solving for this in our organization.</p> <h2>Open Q&amp;A on TFS - Jeff Levinson</h2> <p>Jeff is a Team System MVP and trainer and consultant for <a href="http://www.nwcadence.com/" target="_blank">NW Cadence</a>. He talked people through a lot of the typical questions that get asked soon after you install TFS in your organization.</p> <ol> <li>What source control branching model makes sense for me?  <li>How can I customize my work items?  <li>What's in the service packs?  <li>How should I deploy for my build environments?</li></ol> <p>You get the idea. Here are some likeable nuggets I took away from this session.</p> <ul> <li>If you are installing TFS into an organization with fewer than 500 active developers, install it all on one box.<br><br>I have installed on one machine for simplicity's sake and recommend the same model , but I had no idea the scalability of that model went as high as 500. Jeff claims that this kind of load will only flutter the CPU. Bear in mind, though: This is NOT regarding the build machine. Build machines need to be separate and preferably virtual. <br> <li>Microsoft will be paying closer attention to X in Rosario. X can equal any of these things:  <ul> <li>Project server integration  <li>Portfolio server integration  <li>Query-able link control in work items  <li>Tooling for testers, and that doesn't mean test tools for developers.</li></ul></li></ul> <h2>Application Lifecycle Management Panel Discussion</h2> <p>An entire stage of Team System MVPs, discussing Application Lifecycle Management. Rich Hundhausen, Jeff Levinson, Mike Azocar, Steve Borg, Jeff Beehler,&nbsp; Mickey Gousset, and several others.</p> <p>This is about ALM which includes all phases of the lifecycle, so how are we helped by rapid delivery.</p> <p>I only asked one question of the panel. "What's the view forward for integrating the entire ownership lifecycle? Don't we really need tooling like support in TFS for System Center to get where you are all talking about?"</p> <p>Answer: It turns out that MS is solving for different phases of the overall ALM problem at different phases with different tools. TFS for developers, System Center for I.T., Project and Portfolio Server for the business folks. What ties it all together? Nothing yet. Maybe BizTalk will do the trick, eh? Right.</p> <h2>Scrum-tastic Process Template</h2> <p>Presented by, Mike Azocar, the author and project manager of the actual <a href="http://www.codeplex.com/VSTSScrum" target="_blank">CodePlex project</a> for the Light Weight Scrum Process Template for Team System (whew).</p> <p>I am particularly interested in this work because of the aforementioned focus I have on customizing the <a href="http://scrumforteamsystem.com/en/default.aspx" target="_blank">Scrum process template from Conchango</a>.</p> <p>Nuggets:</p> <ul> <li>An interactive system can never be fully specified - Wagner's Law  <li>Scrum is appealing to many organizations because it is:  <ul> <li>Simple  <li>Free  <li>Transparent  <li>Common sense</li></ul> <li>"No one runs beyond 3 or 4 sprints before changing their out-of-the-box process template." - Mike</li></ul> <h2>Lastly</h2> <p>Keep a watch on <a href="http://msdn.microsoft.com/en-us/events/teched/cc676818.aspx" target="_blank">this page</a>, which hosts videos from the Tech Ed floor. </p> <p>Oh, and I met Richard Campbell of <a href="http://dotnetrocks.com/" target="_blank">DotNetRocks</a>. I told him it was sort of like meeting Madonna. He asked me not to follow him into the bathroom.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Programmability Advisory Council</title>
		<link>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-programmability-advisory-council</link>
		<comments>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 07:41:55 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/data-programmability-advisory-council/</guid>
		<description><![CDATA[Danny Simmons posted some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out: One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">Danny Simmons posted</a> some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out:</p>
<!--more-->
 <blockquote> <p>One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable credentials in that area. </p> <p>Eric Evans - <a href="http://www.domainlanguage.com/about/ericevans.html">http://www.domainlanguage.com/about/ericevans.html</a><br>Stephen Forte - <a href="http://www.stephenforte.net/">http://www.stephenforte.net/</a><br>Martin Fowler - <a href="http://martinfowler.com/">http://martinfowler.com/</a><br>Pavel Hruby - <a href="http://www.phruby.com/">http://www.phruby.com/</a><br>Jimmy Nilsson - <a href="http://jimmynilsson.com/">http://jimmynilsson.com/</a></p></blockquote> <p>Yes... I had to take a second look myself. That's an impressive list I say!  <p>Its just words on a web page at this point, but I think this speaks loud and clear that MS is listening to all the valuable constructive criticism that has been given from the community. I commend the Data Programmability team for making such a great move, but mostly all those who have stepped up to provide their insight.  <p>Along with this announcement, Danny is also requesting that folks continue to <a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">keep providing feedback.</a>  <p>Frickin' <em>sweet!</em>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Future of .NET</title>
		<link>http://elegantcode.com/2008/06/02/the-future-of-net/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-future-of-net</link>
		<comments>http://elegantcode.com/2008/06/02/the-future-of-net/#comments</comments>
		<pubDate>Mon, 02 Jun 2008 18:17:40 +0000</pubDate>
		<dc:creator>Jan Van Ryswyck</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/02/the-future-of-net/</guid>
		<description><![CDATA[That's the title of the latest .NET Rocks episode. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out maintainability, maintainability, maintainability! Let the ASP.NET MVC framework be your first [...]]]></description>
			<content:encoded><![CDATA[<p>That's the title of <a href="http://www.dotnetrocks.com/default.aspx?showNum=346" target="_blank">the latest .NET Rocks episode</a>. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out <a href="http://vanryswyckjan.blogspot.com/2007/01/maintainable-code.html" target="_blank">maintainability</a>, <a href="http://codebetter.com/blogs/jeremy.miller/archive/2006/12/06/On-Writing-Maintainable-Code.aspx" target="_blank">maintainability</a>, <a href="http://elegantcode.com/2008/03/30/elegant-code-essay-contest-winner/" target="_blank">maintainability</a>! Let the ASP.NET MVC framework be your first big success and your guide on the path for providing us developers some tools and most important, some patterns &amp; practices for creating more maintainable software.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/02/the-future-of-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2008 Service Pack 1 &#8211; BETA</title>
		<link>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=visual-studio-2008-service-pack-1-beta</link>
		<comments>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/#comments</comments>
		<pubDate>Fri, 09 May 2008 17:25:43 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/</guid>
		<description><![CDATA["With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement [...]]]></description>
			<content:encoded><![CDATA[<p><em>"</em>With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement in the client-side script tooling including JavaScript IntelliSense. Additionally, full support for SQL Server 2008, the ADO.NET Entity Framework and performance improvements for the IDE make Service Pack 1 a great release across the board.</p> <p>The .NET Framework 3.5 Service Pack 1 delivers more controls, a streamlined setup, improved start-up performance, and powerful new graphics features for client development and rich data scaffolding, improved AJAX support, and other improvements for Web development. Additionally it introduces the ADO.NET Entity Framework and ADO.NET Data Services, which simplify data access code in applications by providing an extensible, conceptual model for data from any data source and enabling this model to closely reflect business requirements.<em>"</em>  <p><em>IF YOU HAVE INSTALLED SILVERLIGHT TOOLS make sure you remove them, and <strong>make sure you also remove KB949325</strong>. See </em><a href="http://www.hanselman.com/blog/VS2008AndNet35SP1BetaShouldYouFearThisRelease.aspx"><em>Hanselman</em></a><em>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> or </em><a href="http://blogs.msdn.com/webdevtools/archive/2008/05/12/error-installing-visual-studio-2008-sp1-beta-and-silverlight-tools-beta-1.aspx"><em>here</em></a><em>.</em> <p>Read more on <a href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx">MSDN</a>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> and <a href="http://blogs.msdn.com/somasegar/archive/2008/05/12/visual-studio-2008-and-net-fx-3-5-sp1-beta-available-now.aspx">Somasegar</a><a href="http://go.microsoft.com/fwlink/?LinkId=119125"></a></p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MS Developer Goodness in Boise on Monday</title>
		<link>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ms-developer-goodness-in-boise-on-monday</link>
		<comments>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 16:17:04 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/</guid>
		<description><![CDATA[MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got [...]]]></description>
			<content:encoded><![CDATA[<p>MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got the not-so-sexy session, but I am spending all day today (and much of the last week) learning about VSTO so that I can share it with you tomorrow.</p>  <p>There are over 350 people registered for the developer track already. Come on down. <a href="http://www.microsoft.com/heroeshappenhere/events/Boise/default.mspx">Register here</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DI hooks in the Framework?</title>
		<link>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=di-mocking-hooks-in-the-framework</link>
		<comments>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/#comments</comments>
		<pubDate>Sat, 26 Apr 2008 04:01:33 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/</guid>
		<description><![CDATA[Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the Managed Extensibility [...]]]></description>
			<content:encoded><![CDATA[<p>Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the <b></b><a href="http://blogs.msdn.com/kcwalina/archive/2008/04/25/MEF.aspx" target="_blank">Managed Extensibility Framework (MEF)</a> can provide you with the best extension points in the .Net Framework. Wow, this is exciting news.</p> <p>On a related note, I heard some rumblings that some future releases (such as v4.0 Asp.Net) will ship with all the unit tests! </p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unity 1.0 EventBroker Sample CAB Style</title>
		<link>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-programmability-advisory-council</link>
		<comments>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 07:41:55 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/data-programmability-advisory-council/</guid>
		<description><![CDATA[Danny Simmons posted some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out: One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">Danny Simmons posted</a> some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out:</p>
<!--more-->
 <blockquote> <p>One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable credentials in that area. </p> <p>Eric Evans - <a href="http://www.domainlanguage.com/about/ericevans.html">http://www.domainlanguage.com/about/ericevans.html</a><br>Stephen Forte - <a href="http://www.stephenforte.net/">http://www.stephenforte.net/</a><br>Martin Fowler - <a href="http://martinfowler.com/">http://martinfowler.com/</a><br>Pavel Hruby - <a href="http://www.phruby.com/">http://www.phruby.com/</a><br>Jimmy Nilsson - <a href="http://jimmynilsson.com/">http://jimmynilsson.com/</a></p></blockquote> <p>Yes... I had to take a second look myself. That's an impressive list I say!  <p>Its just words on a web page at this point, but I think this speaks loud and clear that MS is listening to all the valuable constructive criticism that has been given from the community. I commend the Data Programmability team for making such a great move, but mostly all those who have stepped up to provide their insight.  <p>Along with this announcement, Danny is also requesting that folks continue to <a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">keep providing feedback.</a>  <p>Frickin' <em>sweet!</em>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Elegant Code &#187; Microsoft</title>
	<atom:link href="http://elegantcode.com/tag/microsoft/feed/" rel="self" type="application/rss+xml" />
	<link>http://elegantcode.com</link>
	<description></description>
	<lastBuildDate>Tue, 15 May 2012 10:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Code Cast 13 &#8211; Microsoft Patterns and Practices</title>
		<link>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=code-cast-13-microsoft-patterns-and-practices</link>
		<comments>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 04:14:00 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[CodeCast]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Code Cast]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Patterns and Practices]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/</guid>
		<description><![CDATA[Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&#38;P, what P&#38;P has to offer the community, and forthcoming products from the team. Show [...]]]></description>
			<content:encoded><![CDATA[<a href="http://microsoftpdc.com/" target="_blank"><img src="http://www.microsoftpdc.com/Images/BlogBling/Bling3.jpg" alt="" align="right" /></a> Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&amp;P, what P&amp;P has to offer the community, and forthcoming products from the team.

<strong>Show Links</strong>
<ul>
	<li><a href="http://blogs.msdn.com/agile/">Grigori Melnik’s Blog</a></li>
	<li><a href="http://blogs.msdn.com/ajoyk/">Ajoy Krishnamoorthy’s Blog</a></li>
	<li><a href="http://msdn.microsoft.com/practices">Microsoft P&amp;P Team Site</a></li>
	<li><a href="http://codeplex.com/TestingGuidance">Acceptance Test Engineering Guidance</a></li>
	<li><a href="http://channel9.msdn.com/posts/Charles/Tour-Patterns-and-Practices-Lab/">P&amp;P Team Room Video</a></li>
	<li><a href="http://msdn.microsoft.com/en-us/practices/bb232643.aspx">P&amp;P Upcoming Releases</a></li>
	<li><a href="http://www.pnpsummit.com/_practices.aspx">Patterns and Practices Summit</a>, November 3-7, 2008</li>
</ul>
<a href="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3">Download the episode MP3</a>

<a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=271207118"><img src="http://elegantcode.com/cast/files/images/itunes_button.gif" border="0" alt="View in iTunes" /></a> <a href="http://feeds.feedburner.com/elegantcodecast"><img src="http://elegantcode.com/cast/files/images/rss_podcast.jpg" border="0" alt="Any Podcatcher" /></a>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:103d8226-f879-4268-877a-01eac008542a" class="wlWriterSmartContent" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/Micrososft+P%26P">Micrososft P&amp;P</a>,<a rel="tag" href="http://technorati.com/tags/Agile">Agile</a>,<a rel="tag" href="http://technorati.com/tags/Patterns+and+Practices">Patterns and Practices</a>,<a rel="tag" href="http://technorati.com/tags/.Net">.Net</a></div>
<img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=39d5550f-2b51-4176-8f5c-cd4d82122c93" alt="" />]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3" length="31363377" type="audio/mpeg" />
		</item>
		<item>
		<title>Microsoft&#8217;s ALM Story</title>
		<link>http://elegantcode.com/2008/06/12/microsofts-alm-story/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=microsofts-alm-story</link>
		<comments>http://elegantcode.com/2008/06/12/microsofts-alm-story/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 04:31:31 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Architecture and Design]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/12/microsofts-alm-story/</guid>
		<description><![CDATA[Microsoft has embraced the idea of Application Lifecycle Management as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. ALM is the enterprise software development holy grail that IBM sought [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft has embraced the idea of <a href="http://en.wikipedia.org/wiki/Application_Lifecycle_Management" target="_blank">Application Lifecycle Management</a> as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. </p> <p>ALM is the enterprise software development holy grail that IBM sought for years and invested in with the <a href="http://www-306.ibm.com/software/rational/" target="_blank">Rational tools</a>. And although there is a tremendous value in prescriptive guidance in enterprise development models, there is a natural tension between the ALM crowd and <em>Development as a Craft</em> advocates. ALM, after all, is all about quantifying, measuring, predicting, planning, and economies of scale. Ironically, the kind of transparency and predictability called for by the minimalist Agile community is the same goal of ALM tooling offered by Big Blue and now by the new blue in Redmond.</p> <p>How are Microsoft products staged to lay across the ALM model? The story today is mixed.</p> <table cellspacing="0" cellpadding="2" width="366" border="1"> <tbody> <tr> <td valign="top" width="160"><strong>ALM Principle</strong></td> <td valign="top" width="204"><strong>MS Product Answer</strong></td></tr> <tr> <td valign="top" width="176">Project Management</td> <td valign="top" width="213">Portfolio Server, Project Server, MS Project</td></tr> <tr> <td valign="top" width="181">Project Tacking</td> <td valign="top" width="214">TFS, MS Project</td></tr> <tr> <td valign="top" width="184">Requirements Planning</td> <td valign="top" width="213">3rd Party Solutions</td></tr> <tr> <td valign="top" width="185">Design and Development</td> <td valign="top" width="212">Visio, Visual Studio</td></tr> <tr> <td valign="top" width="186">Quality Assurance</td> <td valign="top" width="211">Visual Studio</td></tr> <tr> <td valign="top" width="187">Release Management</td> <td valign="top" width="211">System Center, Team Build</td></tr> <tr> <td valign="top" width="187">Helpdesk</td> <td valign="top" width="211">SharePoint?</td></tr></tbody></table> <p>Your familiarity with these products may lead you to the same conclusion that many have already reached. The products in the stack currently fail to integrate cleanly and many provide only a starting taste of the functionality needed to realize the ALM vision. The story is obviously a little muddy today. But what's next?</p> <p>Team System Rosario promises much improvement in the areas of tracking, design, quality assurance, and development. Significant bridges are also being started toward improving the release management story.</p> <p>That won't do it all, of course. There are other pieces needed in the stack that will need to be freshened up including operational support tools. Microsoft is in hot pursuit of filling this gap with a host of products under the <a href="http://www.microsoft.com/systemcenter/en/us/products.aspx" target="_blank">System Center umbrella of products</a>. An actual helpdesk management system to displace the TechExcels and Remedys of the world is essential here.</p> <p>The point is, MS has its sights set on a complete ALM story and are focusing on the midsize market, as Microsoft is so good at doing. </p> <h2>The Good</h2> <p>A focus on ALM in the Microsoft stack will have a tremendous impact on software development and delivery as we know it. Interoperable components in the pipeline will help bridge those gaps in midsize organizations that are typically only filled in large enterprises. Transparency will be ubiquitous.</p> <p>Given the open nature of products being developed at MS these days, I have high hopes that these systems will truly be pluggable, so that if you want to bridge TFS to Remedy (for example) doing so is not rocket surgery. Web services are great, aren't they?</p> <h2>Concerns</h2> <p>There is a fine line between managing for predictability and 'command and control'. Tools like those in this stack are like guns. They can be used for good, but misuse is more common than not. </p> <p>Tooling like this gives every non-tool Agilist out there genuine pause, and with good reason. The history of stewardship in complex models like this is less than stellar. That is to say, this tooling can provide huge value, and the basis for crushing souls. Let's be careful how we wield them.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/12/microsofts-alm-story/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008 Day 2</title>
		<link>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-2</link>
		<comments>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 02:47:34 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/</guid>
		<description><![CDATA[Elegant Code Cast With Ward Bell Ward Bell is the Vice President of Product Management at IdeaBlade, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&#160; Ward was good enough to [...]]]></description>
			<content:encoded><![CDATA[<h2>Elegant Code Cast With Ward Bell</h2> <p><a href="http://neverindoubtnet.blogspot.com/" target="_blank">Ward Bell</a> is the Vice President of Product Management at <a href="http://ideablade.com" target="_blank">IdeaBlade</a>, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&nbsp; Ward was good enough to share 30 minutes or so on the mics and you'll be hearing hi interview on the Elegant Code Cast in the weeks to come.</p> <h2>Platforms for SOA and Business Process Management: Comparing .NET and Java</h2> <p><a href="http://davidchappell.com" target="_blank"><img height="145" src="http://www.davidchappell.com/EMAIL_images/the_man.jpg" width="122" align="right" border="0"></a>This session looks at the worlds of Java and .Net while paying particular attention to the problems found in the ESB space. For example, how does each stack solve for workflow, rules, messaging, etc.</p> <p><a href="http://davidchappell.com/" target="_blank">David Chappell</a> has presented this session at the Java One conference, so it is important to remember that this information as been vetted through the Java community.</p> <p>The basic message came down to this: Sun's stewardship of Java has promoted a fragmentation of technologies implemented in the Java language. This is great news for MS, who provides a unified stack of solutions in these spaces. The presenter asked the room this question, "Who believes that many solutions to workflow is good for the Java community?" About half the room went one way, the other half went another.</p> <p>This gets to the core truth of the whole 1 vs. many solution discussion. Developers obviously love choice in their tools. After all, developers like to tinker and play with new technologies. Are these people also the ones most capable of making core platforms decisions for an enterprise? Typically not, because there is a bias toward new technology adoption over uniform practices.</p> <p>As an example, the speaker told a story:</p> <blockquote> <p>A Java developer asked him at a conference, "Help me construct an argument for my management to get permission for me to use Spring."</p> <p>"Why do you want to use Spring?" asked David.</p> <p>"Because it's cool, man," answered the developer. "I want to play with it because everyone knows it is a better way to write applications."</p> <p>"You should be fired," he answered.</p></blockquote> <p>The point here is that executives and logical decision makers who choose platforms are interested in the long game, not what technology is cool. Can I depend on vendor support? Will the product continue to evolve and grow? These are the questions that yearn for an answer of a unified platform that can be depended on to carry the business forward.</p> <p>David actually cited the Garter quote that predicts the ultimate death of the J2EE platform in favor of vendor supported Java platforms by IBM and Oracle. If that actually comes to fruition, it is fascinating not just for its technical implications, but also for the comment this makes on the ultimate viability of community-based technology stewardship.</p> <p>Maybe this 3 legged race of IBM v. Oracle v. MS offers an easier soup to stir than one consisting of many open source implementations. Interesting talk. The most interesting part of that discussion is the notable absence of Sun as a player in the Java discussion. What a weird world.</p> <p>My favorite quote of the session, "Model Driven Architecture is where the rubber meets the sky." Awesome. This comment on the huge abstraction of MDA feels right on.</p> <h2>FDD With Team System</h2> <p><a href="http://weblogs.asp.net/JSemeniuk/" target="_blank">Joel Semenuik</a> provided a great overview of how his organization uses a formal Feature Driven Development process in conjunction with Scrum to deliver software. They do this using of Team System, which is no surprise since Joel is the co-author of <a href="http://www.amazon.com/Managing-Projects-Microsoft-Visual-Pro-Developer/dp/0735622167/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1212632983&amp;sr=1-1">Managing Projects with Microsoft Visual Studio Team System</a> with Martin Danner. </p> <p>I later learned from Martin, who used to be my office mate, that he and Joel are sponsoring a CodePlex project to aggregate open source process templates. What a nice idea! One stop shopping for process templates. I went hunting for it, but couldn't find it on CodePlex yet.</p> <h2>How I Became a Team Build Muscle Man</h2> <p>Steve Borg blew packing material all over me when the build failed in his demo. To be more precise, he had a build monitor application hooked to a fan that blew packing peanuts all over me when his build failed. Nice. It tok 10 minutes to get all the stic clingy bits off me.</p> <p>Anyway, Steve ran through a demo on using Team Build for CI and for deployment. It was pretty good, although I think many of us could have done without the Richard Simmons imitation. :)</p> <p><strong>Deploying to IIS</strong></p> <p>Steve used the MSBuild tasks found in the <a href="http://www.codeplex.com/sdctasks" target="_blank">SDC CodePlex project</a> to deploy his web application to IIS on a deployment and smoke test machine. </p> <p><strong>Deploying SQL Data</strong></p> <p>Even better, he used Visual Studio 2008 DB Pro to create a DB sample data loading script and deployed that to his test DB server via the SDC task DeployDatabase. This ensures that his web tests will always be run against his app with the same underlying data. This makes writing and running automated web tests as part of your build MUCH easier.</p> <p><strong>Misc</strong></p> <p>Also in 2008, we get the new BuildStep task that we can use to emote nice messages into our build log to provide some debugging information. Handy.</p> <p>Implement the ITask interface to create your own tasks BTW. This is easy, I've actually done it!</p> <p>WIX (Windows Installer for XML) is an open source tool that MS actually wrote and released to CodePlex. It is a nice little tool that helps us build MSI installers for our application. This utility is actually used by MS to create their installers like the MS Office and other binaries. This is basically a Visual Studio project that works like MAKE, but better. You can use WIX to accomplish all kinds of things like prepping your target machine's dependencies as part of the MSI. Nice.</p> <h2>Source Control Branching Strategies</h2> <p>This was a great after-hours Birds of a Feather session that deserves a post of its own and will get it. </p> <p>Here's the takeaway: <em>I had no idea source control strategy was a religious issue or that one can see an organization's dysfunction in a source control system's folder structure. </em></p> <p>Now I know.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008, Day 1</title>
		<link>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-1</link>
		<comments>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 01:03:17 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/</guid>
		<description><![CDATA[Keynote by Bill Gates and a cast of Microsoft Executives Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF. Brian Harry on TFS Now and Future This was a great session. I know we are all tired of hearing it, but Rosario really is [...]]]></description>
			<content:encoded><![CDATA[<h2>Keynote by Bill Gates and a cast of Microsoft Executives</h2> <p>Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF.</p> <h2>Brian Harry on TFS Now and Future</h2> <p>This was a great session. I know we are all tired of hearing it, but Rosario really is the release of TFS that will be the ONE. We are all struggling with Work Items and being able to manage our work the way we actually think of our work.</p> <p>The one question I posed was simply how may an organization manage one single backlog of work within TFS and parse out that work to separate teams? The answer is that for right now, there isn't a good story here. I will be blogging later in the summer about how I am solving for this in our organization.</p> <h2>Open Q&amp;A on TFS - Jeff Levinson</h2> <p>Jeff is a Team System MVP and trainer and consultant for <a href="http://www.nwcadence.com/" target="_blank">NW Cadence</a>. He talked people through a lot of the typical questions that get asked soon after you install TFS in your organization.</p> <ol> <li>What source control branching model makes sense for me?  <li>How can I customize my work items?  <li>What's in the service packs?  <li>How should I deploy for my build environments?</li></ol> <p>You get the idea. Here are some likeable nuggets I took away from this session.</p> <ul> <li>If you are installing TFS into an organization with fewer than 500 active developers, install it all on one box.<br><br>I have installed on one machine for simplicity's sake and recommend the same model , but I had no idea the scalability of that model went as high as 500. Jeff claims that this kind of load will only flutter the CPU. Bear in mind, though: This is NOT regarding the build machine. Build machines need to be separate and preferably virtual. <br> <li>Microsoft will be paying closer attention to X in Rosario. X can equal any of these things:  <ul> <li>Project server integration  <li>Portfolio server integration  <li>Query-able link control in work items  <li>Tooling for testers, and that doesn't mean test tools for developers.</li></ul></li></ul> <h2>Application Lifecycle Management Panel Discussion</h2> <p>An entire stage of Team System MVPs, discussing Application Lifecycle Management. Rich Hundhausen, Jeff Levinson, Mike Azocar, Steve Borg, Jeff Beehler,&nbsp; Mickey Gousset, and several others.</p> <p>This is about ALM which includes all phases of the lifecycle, so how are we helped by rapid delivery.</p> <p>I only asked one question of the panel. "What's the view forward for integrating the entire ownership lifecycle? Don't we really need tooling like support in TFS for System Center to get where you are all talking about?"</p> <p>Answer: It turns out that MS is solving for different phases of the overall ALM problem at different phases with different tools. TFS for developers, System Center for I.T., Project and Portfolio Server for the business folks. What ties it all together? Nothing yet. Maybe BizTalk will do the trick, eh? Right.</p> <h2>Scrum-tastic Process Template</h2> <p>Presented by, Mike Azocar, the author and project manager of the actual <a href="http://www.codeplex.com/VSTSScrum" target="_blank">CodePlex project</a> for the Light Weight Scrum Process Template for Team System (whew).</p> <p>I am particularly interested in this work because of the aforementioned focus I have on customizing the <a href="http://scrumforteamsystem.com/en/default.aspx" target="_blank">Scrum process template from Conchango</a>.</p> <p>Nuggets:</p> <ul> <li>An interactive system can never be fully specified - Wagner's Law  <li>Scrum is appealing to many organizations because it is:  <ul> <li>Simple  <li>Free  <li>Transparent  <li>Common sense</li></ul> <li>"No one runs beyond 3 or 4 sprints before changing their out-of-the-box process template." - Mike</li></ul> <h2>Lastly</h2> <p>Keep a watch on <a href="http://msdn.microsoft.com/en-us/events/teched/cc676818.aspx" target="_blank">this page</a>, which hosts videos from the Tech Ed floor. </p> <p>Oh, and I met Richard Campbell of <a href="http://dotnetrocks.com/" target="_blank">DotNetRocks</a>. I told him it was sort of like meeting Madonna. He asked me not to follow him into the bathroom.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Programmability Advisory Council</title>
		<link>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-programmability-advisory-council</link>
		<comments>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 07:41:55 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/data-programmability-advisory-council/</guid>
		<description><![CDATA[Danny Simmons posted some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out: One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">Danny Simmons posted</a> some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out:</p>
<!--more-->
 <blockquote> <p>One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable credentials in that area. </p> <p>Eric Evans - <a href="http://www.domainlanguage.com/about/ericevans.html">http://www.domainlanguage.com/about/ericevans.html</a><br>Stephen Forte - <a href="http://www.stephenforte.net/">http://www.stephenforte.net/</a><br>Martin Fowler - <a href="http://martinfowler.com/">http://martinfowler.com/</a><br>Pavel Hruby - <a href="http://www.phruby.com/">http://www.phruby.com/</a><br>Jimmy Nilsson - <a href="http://jimmynilsson.com/">http://jimmynilsson.com/</a></p></blockquote> <p>Yes... I had to take a second look myself. That's an impressive list I say!  <p>Its just words on a web page at this point, but I think this speaks loud and clear that MS is listening to all the valuable constructive criticism that has been given from the community. I commend the Data Programmability team for making such a great move, but mostly all those who have stepped up to provide their insight.  <p>Along with this announcement, Danny is also requesting that folks continue to <a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">keep providing feedback.</a>  <p>Frickin' <em>sweet!</em>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Future of .NET</title>
		<link>http://elegantcode.com/2008/06/02/the-future-of-net/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-future-of-net</link>
		<comments>http://elegantcode.com/2008/06/02/the-future-of-net/#comments</comments>
		<pubDate>Mon, 02 Jun 2008 18:17:40 +0000</pubDate>
		<dc:creator>Jan Van Ryswyck</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/02/the-future-of-net/</guid>
		<description><![CDATA[That's the title of the latest .NET Rocks episode. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out maintainability, maintainability, maintainability! Let the ASP.NET MVC framework be your first [...]]]></description>
			<content:encoded><![CDATA[<p>That's the title of <a href="http://www.dotnetrocks.com/default.aspx?showNum=346" target="_blank">the latest .NET Rocks episode</a>. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out <a href="http://vanryswyckjan.blogspot.com/2007/01/maintainable-code.html" target="_blank">maintainability</a>, <a href="http://codebetter.com/blogs/jeremy.miller/archive/2006/12/06/On-Writing-Maintainable-Code.aspx" target="_blank">maintainability</a>, <a href="http://elegantcode.com/2008/03/30/elegant-code-essay-contest-winner/" target="_blank">maintainability</a>! Let the ASP.NET MVC framework be your first big success and your guide on the path for providing us developers some tools and most important, some patterns &amp; practices for creating more maintainable software.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/02/the-future-of-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2008 Service Pack 1 &#8211; BETA</title>
		<link>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=visual-studio-2008-service-pack-1-beta</link>
		<comments>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/#comments</comments>
		<pubDate>Fri, 09 May 2008 17:25:43 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/</guid>
		<description><![CDATA["With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement [...]]]></description>
			<content:encoded><![CDATA[<p><em>"</em>With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement in the client-side script tooling including JavaScript IntelliSense. Additionally, full support for SQL Server 2008, the ADO.NET Entity Framework and performance improvements for the IDE make Service Pack 1 a great release across the board.</p> <p>The .NET Framework 3.5 Service Pack 1 delivers more controls, a streamlined setup, improved start-up performance, and powerful new graphics features for client development and rich data scaffolding, improved AJAX support, and other improvements for Web development. Additionally it introduces the ADO.NET Entity Framework and ADO.NET Data Services, which simplify data access code in applications by providing an extensible, conceptual model for data from any data source and enabling this model to closely reflect business requirements.<em>"</em>  <p><em>IF YOU HAVE INSTALLED SILVERLIGHT TOOLS make sure you remove them, and <strong>make sure you also remove KB949325</strong>. See </em><a href="http://www.hanselman.com/blog/VS2008AndNet35SP1BetaShouldYouFearThisRelease.aspx"><em>Hanselman</em></a><em>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> or </em><a href="http://blogs.msdn.com/webdevtools/archive/2008/05/12/error-installing-visual-studio-2008-sp1-beta-and-silverlight-tools-beta-1.aspx"><em>here</em></a><em>.</em> <p>Read more on <a href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx">MSDN</a>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> and <a href="http://blogs.msdn.com/somasegar/archive/2008/05/12/visual-studio-2008-and-net-fx-3-5-sp1-beta-available-now.aspx">Somasegar</a><a href="http://go.microsoft.com/fwlink/?LinkId=119125"></a></p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MS Developer Goodness in Boise on Monday</title>
		<link>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ms-developer-goodness-in-boise-on-monday</link>
		<comments>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 16:17:04 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/</guid>
		<description><![CDATA[MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got [...]]]></description>
			<content:encoded><![CDATA[<p>MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got the not-so-sexy session, but I am spending all day today (and much of the last week) learning about VSTO so that I can share it with you tomorrow.</p>  <p>There are over 350 people registered for the developer track already. Come on down. <a href="http://www.microsoft.com/heroeshappenhere/events/Boise/default.mspx">Register here</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DI hooks in the Framework?</title>
		<link>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=di-mocking-hooks-in-the-framework</link>
		<comments>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/#comments</comments>
		<pubDate>Sat, 26 Apr 2008 04:01:33 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/</guid>
		<description><![CDATA[Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the Managed Extensibility [...]]]></description>
			<content:encoded><![CDATA[<p>Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the <b></b><a href="http://blogs.msdn.com/kcwalina/archive/2008/04/25/MEF.aspx" target="_blank">Managed Extensibility Framework (MEF)</a> can provide you with the best extension points in the .Net Framework. Wow, this is exciting news.</p> <p>On a related note, I heard some rumblings that some future releases (such as v4.0 Asp.Net) will ship with all the unit tests! </p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unity 1.0 EventBroker Sample CAB Style</title>
		<link>http://elegantcode.com/2008/06/02/the-future-of-net/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-future-of-net</link>
		<comments>http://elegantcode.com/2008/06/02/the-future-of-net/#comments</comments>
		<pubDate>Mon, 02 Jun 2008 18:17:40 +0000</pubDate>
		<dc:creator>Jan Van Ryswyck</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/02/the-future-of-net/</guid>
		<description><![CDATA[That's the title of the latest .NET Rocks episode. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out maintainability, maintainability, maintainability! Let the ASP.NET MVC framework be your first [...]]]></description>
			<content:encoded><![CDATA[<p>That's the title of <a href="http://www.dotnetrocks.com/default.aspx?showNum=346" target="_blank">the latest .NET Rocks episode</a>. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out <a href="http://vanryswyckjan.blogspot.com/2007/01/maintainable-code.html" target="_blank">maintainability</a>, <a href="http://codebetter.com/blogs/jeremy.miller/archive/2006/12/06/On-Writing-Maintainable-Code.aspx" target="_blank">maintainability</a>, <a href="http://elegantcode.com/2008/03/30/elegant-code-essay-contest-winner/" target="_blank">maintainability</a>! Let the ASP.NET MVC framework be your first big success and your guide on the path for providing us developers some tools and most important, some patterns &amp; practices for creating more maintainable software.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/02/the-future-of-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Elegant Code &#187; Microsoft</title>
	<atom:link href="http://elegantcode.com/tag/microsoft/feed/" rel="self" type="application/rss+xml" />
	<link>http://elegantcode.com</link>
	<description></description>
	<lastBuildDate>Tue, 15 May 2012 10:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Code Cast 13 &#8211; Microsoft Patterns and Practices</title>
		<link>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=code-cast-13-microsoft-patterns-and-practices</link>
		<comments>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 04:14:00 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[CodeCast]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Code Cast]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Patterns and Practices]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/</guid>
		<description><![CDATA[Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&#38;P, what P&#38;P has to offer the community, and forthcoming products from the team. Show [...]]]></description>
			<content:encoded><![CDATA[<a href="http://microsoftpdc.com/" target="_blank"><img src="http://www.microsoftpdc.com/Images/BlogBling/Bling3.jpg" alt="" align="right" /></a> Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&amp;P, what P&amp;P has to offer the community, and forthcoming products from the team.

<strong>Show Links</strong>
<ul>
	<li><a href="http://blogs.msdn.com/agile/">Grigori Melnik’s Blog</a></li>
	<li><a href="http://blogs.msdn.com/ajoyk/">Ajoy Krishnamoorthy’s Blog</a></li>
	<li><a href="http://msdn.microsoft.com/practices">Microsoft P&amp;P Team Site</a></li>
	<li><a href="http://codeplex.com/TestingGuidance">Acceptance Test Engineering Guidance</a></li>
	<li><a href="http://channel9.msdn.com/posts/Charles/Tour-Patterns-and-Practices-Lab/">P&amp;P Team Room Video</a></li>
	<li><a href="http://msdn.microsoft.com/en-us/practices/bb232643.aspx">P&amp;P Upcoming Releases</a></li>
	<li><a href="http://www.pnpsummit.com/_practices.aspx">Patterns and Practices Summit</a>, November 3-7, 2008</li>
</ul>
<a href="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3">Download the episode MP3</a>

<a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=271207118"><img src="http://elegantcode.com/cast/files/images/itunes_button.gif" border="0" alt="View in iTunes" /></a> <a href="http://feeds.feedburner.com/elegantcodecast"><img src="http://elegantcode.com/cast/files/images/rss_podcast.jpg" border="0" alt="Any Podcatcher" /></a>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:103d8226-f879-4268-877a-01eac008542a" class="wlWriterSmartContent" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/Micrososft+P%26P">Micrososft P&amp;P</a>,<a rel="tag" href="http://technorati.com/tags/Agile">Agile</a>,<a rel="tag" href="http://technorati.com/tags/Patterns+and+Practices">Patterns and Practices</a>,<a rel="tag" href="http://technorati.com/tags/.Net">.Net</a></div>
<img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=39d5550f-2b51-4176-8f5c-cd4d82122c93" alt="" />]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3" length="31363377" type="audio/mpeg" />
		</item>
		<item>
		<title>Microsoft&#8217;s ALM Story</title>
		<link>http://elegantcode.com/2008/06/12/microsofts-alm-story/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=microsofts-alm-story</link>
		<comments>http://elegantcode.com/2008/06/12/microsofts-alm-story/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 04:31:31 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Architecture and Design]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/12/microsofts-alm-story/</guid>
		<description><![CDATA[Microsoft has embraced the idea of Application Lifecycle Management as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. ALM is the enterprise software development holy grail that IBM sought [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft has embraced the idea of <a href="http://en.wikipedia.org/wiki/Application_Lifecycle_Management" target="_blank">Application Lifecycle Management</a> as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. </p> <p>ALM is the enterprise software development holy grail that IBM sought for years and invested in with the <a href="http://www-306.ibm.com/software/rational/" target="_blank">Rational tools</a>. And although there is a tremendous value in prescriptive guidance in enterprise development models, there is a natural tension between the ALM crowd and <em>Development as a Craft</em> advocates. ALM, after all, is all about quantifying, measuring, predicting, planning, and economies of scale. Ironically, the kind of transparency and predictability called for by the minimalist Agile community is the same goal of ALM tooling offered by Big Blue and now by the new blue in Redmond.</p> <p>How are Microsoft products staged to lay across the ALM model? The story today is mixed.</p> <table cellspacing="0" cellpadding="2" width="366" border="1"> <tbody> <tr> <td valign="top" width="160"><strong>ALM Principle</strong></td> <td valign="top" width="204"><strong>MS Product Answer</strong></td></tr> <tr> <td valign="top" width="176">Project Management</td> <td valign="top" width="213">Portfolio Server, Project Server, MS Project</td></tr> <tr> <td valign="top" width="181">Project Tacking</td> <td valign="top" width="214">TFS, MS Project</td></tr> <tr> <td valign="top" width="184">Requirements Planning</td> <td valign="top" width="213">3rd Party Solutions</td></tr> <tr> <td valign="top" width="185">Design and Development</td> <td valign="top" width="212">Visio, Visual Studio</td></tr> <tr> <td valign="top" width="186">Quality Assurance</td> <td valign="top" width="211">Visual Studio</td></tr> <tr> <td valign="top" width="187">Release Management</td> <td valign="top" width="211">System Center, Team Build</td></tr> <tr> <td valign="top" width="187">Helpdesk</td> <td valign="top" width="211">SharePoint?</td></tr></tbody></table> <p>Your familiarity with these products may lead you to the same conclusion that many have already reached. The products in the stack currently fail to integrate cleanly and many provide only a starting taste of the functionality needed to realize the ALM vision. The story is obviously a little muddy today. But what's next?</p> <p>Team System Rosario promises much improvement in the areas of tracking, design, quality assurance, and development. Significant bridges are also being started toward improving the release management story.</p> <p>That won't do it all, of course. There are other pieces needed in the stack that will need to be freshened up including operational support tools. Microsoft is in hot pursuit of filling this gap with a host of products under the <a href="http://www.microsoft.com/systemcenter/en/us/products.aspx" target="_blank">System Center umbrella of products</a>. An actual helpdesk management system to displace the TechExcels and Remedys of the world is essential here.</p> <p>The point is, MS has its sights set on a complete ALM story and are focusing on the midsize market, as Microsoft is so good at doing. </p> <h2>The Good</h2> <p>A focus on ALM in the Microsoft stack will have a tremendous impact on software development and delivery as we know it. Interoperable components in the pipeline will help bridge those gaps in midsize organizations that are typically only filled in large enterprises. Transparency will be ubiquitous.</p> <p>Given the open nature of products being developed at MS these days, I have high hopes that these systems will truly be pluggable, so that if you want to bridge TFS to Remedy (for example) doing so is not rocket surgery. Web services are great, aren't they?</p> <h2>Concerns</h2> <p>There is a fine line between managing for predictability and 'command and control'. Tools like those in this stack are like guns. They can be used for good, but misuse is more common than not. </p> <p>Tooling like this gives every non-tool Agilist out there genuine pause, and with good reason. The history of stewardship in complex models like this is less than stellar. That is to say, this tooling can provide huge value, and the basis for crushing souls. Let's be careful how we wield them.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/12/microsofts-alm-story/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008 Day 2</title>
		<link>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-2</link>
		<comments>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 02:47:34 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/</guid>
		<description><![CDATA[Elegant Code Cast With Ward Bell Ward Bell is the Vice President of Product Management at IdeaBlade, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&#160; Ward was good enough to [...]]]></description>
			<content:encoded><![CDATA[<h2>Elegant Code Cast With Ward Bell</h2> <p><a href="http://neverindoubtnet.blogspot.com/" target="_blank">Ward Bell</a> is the Vice President of Product Management at <a href="http://ideablade.com" target="_blank">IdeaBlade</a>, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&nbsp; Ward was good enough to share 30 minutes or so on the mics and you'll be hearing hi interview on the Elegant Code Cast in the weeks to come.</p> <h2>Platforms for SOA and Business Process Management: Comparing .NET and Java</h2> <p><a href="http://davidchappell.com" target="_blank"><img height="145" src="http://www.davidchappell.com/EMAIL_images/the_man.jpg" width="122" align="right" border="0"></a>This session looks at the worlds of Java and .Net while paying particular attention to the problems found in the ESB space. For example, how does each stack solve for workflow, rules, messaging, etc.</p> <p><a href="http://davidchappell.com/" target="_blank">David Chappell</a> has presented this session at the Java One conference, so it is important to remember that this information as been vetted through the Java community.</p> <p>The basic message came down to this: Sun's stewardship of Java has promoted a fragmentation of technologies implemented in the Java language. This is great news for MS, who provides a unified stack of solutions in these spaces. The presenter asked the room this question, "Who believes that many solutions to workflow is good for the Java community?" About half the room went one way, the other half went another.</p> <p>This gets to the core truth of the whole 1 vs. many solution discussion. Developers obviously love choice in their tools. After all, developers like to tinker and play with new technologies. Are these people also the ones most capable of making core platforms decisions for an enterprise? Typically not, because there is a bias toward new technology adoption over uniform practices.</p> <p>As an example, the speaker told a story:</p> <blockquote> <p>A Java developer asked him at a conference, "Help me construct an argument for my management to get permission for me to use Spring."</p> <p>"Why do you want to use Spring?" asked David.</p> <p>"Because it's cool, man," answered the developer. "I want to play with it because everyone knows it is a better way to write applications."</p> <p>"You should be fired," he answered.</p></blockquote> <p>The point here is that executives and logical decision makers who choose platforms are interested in the long game, not what technology is cool. Can I depend on vendor support? Will the product continue to evolve and grow? These are the questions that yearn for an answer of a unified platform that can be depended on to carry the business forward.</p> <p>David actually cited the Garter quote that predicts the ultimate death of the J2EE platform in favor of vendor supported Java platforms by IBM and Oracle. If that actually comes to fruition, it is fascinating not just for its technical implications, but also for the comment this makes on the ultimate viability of community-based technology stewardship.</p> <p>Maybe this 3 legged race of IBM v. Oracle v. MS offers an easier soup to stir than one consisting of many open source implementations. Interesting talk. The most interesting part of that discussion is the notable absence of Sun as a player in the Java discussion. What a weird world.</p> <p>My favorite quote of the session, "Model Driven Architecture is where the rubber meets the sky." Awesome. This comment on the huge abstraction of MDA feels right on.</p> <h2>FDD With Team System</h2> <p><a href="http://weblogs.asp.net/JSemeniuk/" target="_blank">Joel Semenuik</a> provided a great overview of how his organization uses a formal Feature Driven Development process in conjunction with Scrum to deliver software. They do this using of Team System, which is no surprise since Joel is the co-author of <a href="http://www.amazon.com/Managing-Projects-Microsoft-Visual-Pro-Developer/dp/0735622167/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1212632983&amp;sr=1-1">Managing Projects with Microsoft Visual Studio Team System</a> with Martin Danner. </p> <p>I later learned from Martin, who used to be my office mate, that he and Joel are sponsoring a CodePlex project to aggregate open source process templates. What a nice idea! One stop shopping for process templates. I went hunting for it, but couldn't find it on CodePlex yet.</p> <h2>How I Became a Team Build Muscle Man</h2> <p>Steve Borg blew packing material all over me when the build failed in his demo. To be more precise, he had a build monitor application hooked to a fan that blew packing peanuts all over me when his build failed. Nice. It tok 10 minutes to get all the stic clingy bits off me.</p> <p>Anyway, Steve ran through a demo on using Team Build for CI and for deployment. It was pretty good, although I think many of us could have done without the Richard Simmons imitation. :)</p> <p><strong>Deploying to IIS</strong></p> <p>Steve used the MSBuild tasks found in the <a href="http://www.codeplex.com/sdctasks" target="_blank">SDC CodePlex project</a> to deploy his web application to IIS on a deployment and smoke test machine. </p> <p><strong>Deploying SQL Data</strong></p> <p>Even better, he used Visual Studio 2008 DB Pro to create a DB sample data loading script and deployed that to his test DB server via the SDC task DeployDatabase. This ensures that his web tests will always be run against his app with the same underlying data. This makes writing and running automated web tests as part of your build MUCH easier.</p> <p><strong>Misc</strong></p> <p>Also in 2008, we get the new BuildStep task that we can use to emote nice messages into our build log to provide some debugging information. Handy.</p> <p>Implement the ITask interface to create your own tasks BTW. This is easy, I've actually done it!</p> <p>WIX (Windows Installer for XML) is an open source tool that MS actually wrote and released to CodePlex. It is a nice little tool that helps us build MSI installers for our application. This utility is actually used by MS to create their installers like the MS Office and other binaries. This is basically a Visual Studio project that works like MAKE, but better. You can use WIX to accomplish all kinds of things like prepping your target machine's dependencies as part of the MSI. Nice.</p> <h2>Source Control Branching Strategies</h2> <p>This was a great after-hours Birds of a Feather session that deserves a post of its own and will get it. </p> <p>Here's the takeaway: <em>I had no idea source control strategy was a religious issue or that one can see an organization's dysfunction in a source control system's folder structure. </em></p> <p>Now I know.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008, Day 1</title>
		<link>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-1</link>
		<comments>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 01:03:17 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/</guid>
		<description><![CDATA[Keynote by Bill Gates and a cast of Microsoft Executives Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF. Brian Harry on TFS Now and Future This was a great session. I know we are all tired of hearing it, but Rosario really is [...]]]></description>
			<content:encoded><![CDATA[<h2>Keynote by Bill Gates and a cast of Microsoft Executives</h2> <p>Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF.</p> <h2>Brian Harry on TFS Now and Future</h2> <p>This was a great session. I know we are all tired of hearing it, but Rosario really is the release of TFS that will be the ONE. We are all struggling with Work Items and being able to manage our work the way we actually think of our work.</p> <p>The one question I posed was simply how may an organization manage one single backlog of work within TFS and parse out that work to separate teams? The answer is that for right now, there isn't a good story here. I will be blogging later in the summer about how I am solving for this in our organization.</p> <h2>Open Q&amp;A on TFS - Jeff Levinson</h2> <p>Jeff is a Team System MVP and trainer and consultant for <a href="http://www.nwcadence.com/" target="_blank">NW Cadence</a>. He talked people through a lot of the typical questions that get asked soon after you install TFS in your organization.</p> <ol> <li>What source control branching model makes sense for me?  <li>How can I customize my work items?  <li>What's in the service packs?  <li>How should I deploy for my build environments?</li></ol> <p>You get the idea. Here are some likeable nuggets I took away from this session.</p> <ul> <li>If you are installing TFS into an organization with fewer than 500 active developers, install it all on one box.<br><br>I have installed on one machine for simplicity's sake and recommend the same model , but I had no idea the scalability of that model went as high as 500. Jeff claims that this kind of load will only flutter the CPU. Bear in mind, though: This is NOT regarding the build machine. Build machines need to be separate and preferably virtual. <br> <li>Microsoft will be paying closer attention to X in Rosario. X can equal any of these things:  <ul> <li>Project server integration  <li>Portfolio server integration  <li>Query-able link control in work items  <li>Tooling for testers, and that doesn't mean test tools for developers.</li></ul></li></ul> <h2>Application Lifecycle Management Panel Discussion</h2> <p>An entire stage of Team System MVPs, discussing Application Lifecycle Management. Rich Hundhausen, Jeff Levinson, Mike Azocar, Steve Borg, Jeff Beehler,&nbsp; Mickey Gousset, and several others.</p> <p>This is about ALM which includes all phases of the lifecycle, so how are we helped by rapid delivery.</p> <p>I only asked one question of the panel. "What's the view forward for integrating the entire ownership lifecycle? Don't we really need tooling like support in TFS for System Center to get where you are all talking about?"</p> <p>Answer: It turns out that MS is solving for different phases of the overall ALM problem at different phases with different tools. TFS for developers, System Center for I.T., Project and Portfolio Server for the business folks. What ties it all together? Nothing yet. Maybe BizTalk will do the trick, eh? Right.</p> <h2>Scrum-tastic Process Template</h2> <p>Presented by, Mike Azocar, the author and project manager of the actual <a href="http://www.codeplex.com/VSTSScrum" target="_blank">CodePlex project</a> for the Light Weight Scrum Process Template for Team System (whew).</p> <p>I am particularly interested in this work because of the aforementioned focus I have on customizing the <a href="http://scrumforteamsystem.com/en/default.aspx" target="_blank">Scrum process template from Conchango</a>.</p> <p>Nuggets:</p> <ul> <li>An interactive system can never be fully specified - Wagner's Law  <li>Scrum is appealing to many organizations because it is:  <ul> <li>Simple  <li>Free  <li>Transparent  <li>Common sense</li></ul> <li>"No one runs beyond 3 or 4 sprints before changing their out-of-the-box process template." - Mike</li></ul> <h2>Lastly</h2> <p>Keep a watch on <a href="http://msdn.microsoft.com/en-us/events/teched/cc676818.aspx" target="_blank">this page</a>, which hosts videos from the Tech Ed floor. </p> <p>Oh, and I met Richard Campbell of <a href="http://dotnetrocks.com/" target="_blank">DotNetRocks</a>. I told him it was sort of like meeting Madonna. He asked me not to follow him into the bathroom.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Programmability Advisory Council</title>
		<link>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-programmability-advisory-council</link>
		<comments>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 07:41:55 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/data-programmability-advisory-council/</guid>
		<description><![CDATA[Danny Simmons posted some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out: One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">Danny Simmons posted</a> some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out:</p>
<!--more-->
 <blockquote> <p>One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable credentials in that area. </p> <p>Eric Evans - <a href="http://www.domainlanguage.com/about/ericevans.html">http://www.domainlanguage.com/about/ericevans.html</a><br>Stephen Forte - <a href="http://www.stephenforte.net/">http://www.stephenforte.net/</a><br>Martin Fowler - <a href="http://martinfowler.com/">http://martinfowler.com/</a><br>Pavel Hruby - <a href="http://www.phruby.com/">http://www.phruby.com/</a><br>Jimmy Nilsson - <a href="http://jimmynilsson.com/">http://jimmynilsson.com/</a></p></blockquote> <p>Yes... I had to take a second look myself. That's an impressive list I say!  <p>Its just words on a web page at this point, but I think this speaks loud and clear that MS is listening to all the valuable constructive criticism that has been given from the community. I commend the Data Programmability team for making such a great move, but mostly all those who have stepped up to provide their insight.  <p>Along with this announcement, Danny is also requesting that folks continue to <a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">keep providing feedback.</a>  <p>Frickin' <em>sweet!</em>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Future of .NET</title>
		<link>http://elegantcode.com/2008/06/02/the-future-of-net/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-future-of-net</link>
		<comments>http://elegantcode.com/2008/06/02/the-future-of-net/#comments</comments>
		<pubDate>Mon, 02 Jun 2008 18:17:40 +0000</pubDate>
		<dc:creator>Jan Van Ryswyck</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/02/the-future-of-net/</guid>
		<description><![CDATA[That's the title of the latest .NET Rocks episode. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out maintainability, maintainability, maintainability! Let the ASP.NET MVC framework be your first [...]]]></description>
			<content:encoded><![CDATA[<p>That's the title of <a href="http://www.dotnetrocks.com/default.aspx?showNum=346" target="_blank">the latest .NET Rocks episode</a>. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out <a href="http://vanryswyckjan.blogspot.com/2007/01/maintainable-code.html" target="_blank">maintainability</a>, <a href="http://codebetter.com/blogs/jeremy.miller/archive/2006/12/06/On-Writing-Maintainable-Code.aspx" target="_blank">maintainability</a>, <a href="http://elegantcode.com/2008/03/30/elegant-code-essay-contest-winner/" target="_blank">maintainability</a>! Let the ASP.NET MVC framework be your first big success and your guide on the path for providing us developers some tools and most important, some patterns &amp; practices for creating more maintainable software.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/02/the-future-of-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2008 Service Pack 1 &#8211; BETA</title>
		<link>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=visual-studio-2008-service-pack-1-beta</link>
		<comments>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/#comments</comments>
		<pubDate>Fri, 09 May 2008 17:25:43 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/</guid>
		<description><![CDATA["With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement [...]]]></description>
			<content:encoded><![CDATA[<p><em>"</em>With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement in the client-side script tooling including JavaScript IntelliSense. Additionally, full support for SQL Server 2008, the ADO.NET Entity Framework and performance improvements for the IDE make Service Pack 1 a great release across the board.</p> <p>The .NET Framework 3.5 Service Pack 1 delivers more controls, a streamlined setup, improved start-up performance, and powerful new graphics features for client development and rich data scaffolding, improved AJAX support, and other improvements for Web development. Additionally it introduces the ADO.NET Entity Framework and ADO.NET Data Services, which simplify data access code in applications by providing an extensible, conceptual model for data from any data source and enabling this model to closely reflect business requirements.<em>"</em>  <p><em>IF YOU HAVE INSTALLED SILVERLIGHT TOOLS make sure you remove them, and <strong>make sure you also remove KB949325</strong>. See </em><a href="http://www.hanselman.com/blog/VS2008AndNet35SP1BetaShouldYouFearThisRelease.aspx"><em>Hanselman</em></a><em>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> or </em><a href="http://blogs.msdn.com/webdevtools/archive/2008/05/12/error-installing-visual-studio-2008-sp1-beta-and-silverlight-tools-beta-1.aspx"><em>here</em></a><em>.</em> <p>Read more on <a href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx">MSDN</a>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> and <a href="http://blogs.msdn.com/somasegar/archive/2008/05/12/visual-studio-2008-and-net-fx-3-5-sp1-beta-available-now.aspx">Somasegar</a><a href="http://go.microsoft.com/fwlink/?LinkId=119125"></a></p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MS Developer Goodness in Boise on Monday</title>
		<link>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ms-developer-goodness-in-boise-on-monday</link>
		<comments>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 16:17:04 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/</guid>
		<description><![CDATA[MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got [...]]]></description>
			<content:encoded><![CDATA[<p>MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got the not-so-sexy session, but I am spending all day today (and much of the last week) learning about VSTO so that I can share it with you tomorrow.</p>  <p>There are over 350 people registered for the developer track already. Come on down. <a href="http://www.microsoft.com/heroeshappenhere/events/Boise/default.mspx">Register here</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DI hooks in the Framework?</title>
		<link>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=di-mocking-hooks-in-the-framework</link>
		<comments>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/#comments</comments>
		<pubDate>Sat, 26 Apr 2008 04:01:33 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/</guid>
		<description><![CDATA[Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the Managed Extensibility [...]]]></description>
			<content:encoded><![CDATA[<p>Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the <b></b><a href="http://blogs.msdn.com/kcwalina/archive/2008/04/25/MEF.aspx" target="_blank">Managed Extensibility Framework (MEF)</a> can provide you with the best extension points in the .Net Framework. Wow, this is exciting news.</p> <p>On a related note, I heard some rumblings that some future releases (such as v4.0 Asp.Net) will ship with all the unit tests! </p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unity 1.0 EventBroker Sample CAB Style</title>
		<link>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=visual-studio-2008-service-pack-1-beta</link>
		<comments>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/#comments</comments>
		<pubDate>Fri, 09 May 2008 17:25:43 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/</guid>
		<description><![CDATA["With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement [...]]]></description>
			<content:encoded><![CDATA[<p><em>"</em>With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement in the client-side script tooling including JavaScript IntelliSense. Additionally, full support for SQL Server 2008, the ADO.NET Entity Framework and performance improvements for the IDE make Service Pack 1 a great release across the board.</p> <p>The .NET Framework 3.5 Service Pack 1 delivers more controls, a streamlined setup, improved start-up performance, and powerful new graphics features for client development and rich data scaffolding, improved AJAX support, and other improvements for Web development. Additionally it introduces the ADO.NET Entity Framework and ADO.NET Data Services, which simplify data access code in applications by providing an extensible, conceptual model for data from any data source and enabling this model to closely reflect business requirements.<em>"</em>  <p><em>IF YOU HAVE INSTALLED SILVERLIGHT TOOLS make sure you remove them, and <strong>make sure you also remove KB949325</strong>. See </em><a href="http://www.hanselman.com/blog/VS2008AndNet35SP1BetaShouldYouFearThisRelease.aspx"><em>Hanselman</em></a><em>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> or </em><a href="http://blogs.msdn.com/webdevtools/archive/2008/05/12/error-installing-visual-studio-2008-sp1-beta-and-silverlight-tools-beta-1.aspx"><em>here</em></a><em>.</em> <p>Read more on <a href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx">MSDN</a>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> and <a href="http://blogs.msdn.com/somasegar/archive/2008/05/12/visual-studio-2008-and-net-fx-3-5-sp1-beta-available-now.aspx">Somasegar</a><a href="http://go.microsoft.com/fwlink/?LinkId=119125"></a></p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Elegant Code &#187; Microsoft</title>
	<atom:link href="http://elegantcode.com/tag/microsoft/feed/" rel="self" type="application/rss+xml" />
	<link>http://elegantcode.com</link>
	<description></description>
	<lastBuildDate>Tue, 15 May 2012 10:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Code Cast 13 &#8211; Microsoft Patterns and Practices</title>
		<link>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=code-cast-13-microsoft-patterns-and-practices</link>
		<comments>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 04:14:00 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[CodeCast]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Code Cast]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Patterns and Practices]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/</guid>
		<description><![CDATA[Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&#38;P, what P&#38;P has to offer the community, and forthcoming products from the team. Show [...]]]></description>
			<content:encoded><![CDATA[<a href="http://microsoftpdc.com/" target="_blank"><img src="http://www.microsoftpdc.com/Images/BlogBling/Bling3.jpg" alt="" align="right" /></a> Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&amp;P, what P&amp;P has to offer the community, and forthcoming products from the team.

<strong>Show Links</strong>
<ul>
	<li><a href="http://blogs.msdn.com/agile/">Grigori Melnik’s Blog</a></li>
	<li><a href="http://blogs.msdn.com/ajoyk/">Ajoy Krishnamoorthy’s Blog</a></li>
	<li><a href="http://msdn.microsoft.com/practices">Microsoft P&amp;P Team Site</a></li>
	<li><a href="http://codeplex.com/TestingGuidance">Acceptance Test Engineering Guidance</a></li>
	<li><a href="http://channel9.msdn.com/posts/Charles/Tour-Patterns-and-Practices-Lab/">P&amp;P Team Room Video</a></li>
	<li><a href="http://msdn.microsoft.com/en-us/practices/bb232643.aspx">P&amp;P Upcoming Releases</a></li>
	<li><a href="http://www.pnpsummit.com/_practices.aspx">Patterns and Practices Summit</a>, November 3-7, 2008</li>
</ul>
<a href="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3">Download the episode MP3</a>

<a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=271207118"><img src="http://elegantcode.com/cast/files/images/itunes_button.gif" border="0" alt="View in iTunes" /></a> <a href="http://feeds.feedburner.com/elegantcodecast"><img src="http://elegantcode.com/cast/files/images/rss_podcast.jpg" border="0" alt="Any Podcatcher" /></a>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:103d8226-f879-4268-877a-01eac008542a" class="wlWriterSmartContent" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/Micrososft+P%26P">Micrososft P&amp;P</a>,<a rel="tag" href="http://technorati.com/tags/Agile">Agile</a>,<a rel="tag" href="http://technorati.com/tags/Patterns+and+Practices">Patterns and Practices</a>,<a rel="tag" href="http://technorati.com/tags/.Net">.Net</a></div>
<img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=39d5550f-2b51-4176-8f5c-cd4d82122c93" alt="" />]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3" length="31363377" type="audio/mpeg" />
		</item>
		<item>
		<title>Microsoft&#8217;s ALM Story</title>
		<link>http://elegantcode.com/2008/06/12/microsofts-alm-story/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=microsofts-alm-story</link>
		<comments>http://elegantcode.com/2008/06/12/microsofts-alm-story/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 04:31:31 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Architecture and Design]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/12/microsofts-alm-story/</guid>
		<description><![CDATA[Microsoft has embraced the idea of Application Lifecycle Management as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. ALM is the enterprise software development holy grail that IBM sought [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft has embraced the idea of <a href="http://en.wikipedia.org/wiki/Application_Lifecycle_Management" target="_blank">Application Lifecycle Management</a> as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. </p> <p>ALM is the enterprise software development holy grail that IBM sought for years and invested in with the <a href="http://www-306.ibm.com/software/rational/" target="_blank">Rational tools</a>. And although there is a tremendous value in prescriptive guidance in enterprise development models, there is a natural tension between the ALM crowd and <em>Development as a Craft</em> advocates. ALM, after all, is all about quantifying, measuring, predicting, planning, and economies of scale. Ironically, the kind of transparency and predictability called for by the minimalist Agile community is the same goal of ALM tooling offered by Big Blue and now by the new blue in Redmond.</p> <p>How are Microsoft products staged to lay across the ALM model? The story today is mixed.</p> <table cellspacing="0" cellpadding="2" width="366" border="1"> <tbody> <tr> <td valign="top" width="160"><strong>ALM Principle</strong></td> <td valign="top" width="204"><strong>MS Product Answer</strong></td></tr> <tr> <td valign="top" width="176">Project Management</td> <td valign="top" width="213">Portfolio Server, Project Server, MS Project</td></tr> <tr> <td valign="top" width="181">Project Tacking</td> <td valign="top" width="214">TFS, MS Project</td></tr> <tr> <td valign="top" width="184">Requirements Planning</td> <td valign="top" width="213">3rd Party Solutions</td></tr> <tr> <td valign="top" width="185">Design and Development</td> <td valign="top" width="212">Visio, Visual Studio</td></tr> <tr> <td valign="top" width="186">Quality Assurance</td> <td valign="top" width="211">Visual Studio</td></tr> <tr> <td valign="top" width="187">Release Management</td> <td valign="top" width="211">System Center, Team Build</td></tr> <tr> <td valign="top" width="187">Helpdesk</td> <td valign="top" width="211">SharePoint?</td></tr></tbody></table> <p>Your familiarity with these products may lead you to the same conclusion that many have already reached. The products in the stack currently fail to integrate cleanly and many provide only a starting taste of the functionality needed to realize the ALM vision. The story is obviously a little muddy today. But what's next?</p> <p>Team System Rosario promises much improvement in the areas of tracking, design, quality assurance, and development. Significant bridges are also being started toward improving the release management story.</p> <p>That won't do it all, of course. There are other pieces needed in the stack that will need to be freshened up including operational support tools. Microsoft is in hot pursuit of filling this gap with a host of products under the <a href="http://www.microsoft.com/systemcenter/en/us/products.aspx" target="_blank">System Center umbrella of products</a>. An actual helpdesk management system to displace the TechExcels and Remedys of the world is essential here.</p> <p>The point is, MS has its sights set on a complete ALM story and are focusing on the midsize market, as Microsoft is so good at doing. </p> <h2>The Good</h2> <p>A focus on ALM in the Microsoft stack will have a tremendous impact on software development and delivery as we know it. Interoperable components in the pipeline will help bridge those gaps in midsize organizations that are typically only filled in large enterprises. Transparency will be ubiquitous.</p> <p>Given the open nature of products being developed at MS these days, I have high hopes that these systems will truly be pluggable, so that if you want to bridge TFS to Remedy (for example) doing so is not rocket surgery. Web services are great, aren't they?</p> <h2>Concerns</h2> <p>There is a fine line between managing for predictability and 'command and control'. Tools like those in this stack are like guns. They can be used for good, but misuse is more common than not. </p> <p>Tooling like this gives every non-tool Agilist out there genuine pause, and with good reason. The history of stewardship in complex models like this is less than stellar. That is to say, this tooling can provide huge value, and the basis for crushing souls. Let's be careful how we wield them.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/12/microsofts-alm-story/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008 Day 2</title>
		<link>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-2</link>
		<comments>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 02:47:34 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/</guid>
		<description><![CDATA[Elegant Code Cast With Ward Bell Ward Bell is the Vice President of Product Management at IdeaBlade, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&#160; Ward was good enough to [...]]]></description>
			<content:encoded><![CDATA[<h2>Elegant Code Cast With Ward Bell</h2> <p><a href="http://neverindoubtnet.blogspot.com/" target="_blank">Ward Bell</a> is the Vice President of Product Management at <a href="http://ideablade.com" target="_blank">IdeaBlade</a>, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&nbsp; Ward was good enough to share 30 minutes or so on the mics and you'll be hearing hi interview on the Elegant Code Cast in the weeks to come.</p> <h2>Platforms for SOA and Business Process Management: Comparing .NET and Java</h2> <p><a href="http://davidchappell.com" target="_blank"><img height="145" src="http://www.davidchappell.com/EMAIL_images/the_man.jpg" width="122" align="right" border="0"></a>This session looks at the worlds of Java and .Net while paying particular attention to the problems found in the ESB space. For example, how does each stack solve for workflow, rules, messaging, etc.</p> <p><a href="http://davidchappell.com/" target="_blank">David Chappell</a> has presented this session at the Java One conference, so it is important to remember that this information as been vetted through the Java community.</p> <p>The basic message came down to this: Sun's stewardship of Java has promoted a fragmentation of technologies implemented in the Java language. This is great news for MS, who provides a unified stack of solutions in these spaces. The presenter asked the room this question, "Who believes that many solutions to workflow is good for the Java community?" About half the room went one way, the other half went another.</p> <p>This gets to the core truth of the whole 1 vs. many solution discussion. Developers obviously love choice in their tools. After all, developers like to tinker and play with new technologies. Are these people also the ones most capable of making core platforms decisions for an enterprise? Typically not, because there is a bias toward new technology adoption over uniform practices.</p> <p>As an example, the speaker told a story:</p> <blockquote> <p>A Java developer asked him at a conference, "Help me construct an argument for my management to get permission for me to use Spring."</p> <p>"Why do you want to use Spring?" asked David.</p> <p>"Because it's cool, man," answered the developer. "I want to play with it because everyone knows it is a better way to write applications."</p> <p>"You should be fired," he answered.</p></blockquote> <p>The point here is that executives and logical decision makers who choose platforms are interested in the long game, not what technology is cool. Can I depend on vendor support? Will the product continue to evolve and grow? These are the questions that yearn for an answer of a unified platform that can be depended on to carry the business forward.</p> <p>David actually cited the Garter quote that predicts the ultimate death of the J2EE platform in favor of vendor supported Java platforms by IBM and Oracle. If that actually comes to fruition, it is fascinating not just for its technical implications, but also for the comment this makes on the ultimate viability of community-based technology stewardship.</p> <p>Maybe this 3 legged race of IBM v. Oracle v. MS offers an easier soup to stir than one consisting of many open source implementations. Interesting talk. The most interesting part of that discussion is the notable absence of Sun as a player in the Java discussion. What a weird world.</p> <p>My favorite quote of the session, "Model Driven Architecture is where the rubber meets the sky." Awesome. This comment on the huge abstraction of MDA feels right on.</p> <h2>FDD With Team System</h2> <p><a href="http://weblogs.asp.net/JSemeniuk/" target="_blank">Joel Semenuik</a> provided a great overview of how his organization uses a formal Feature Driven Development process in conjunction with Scrum to deliver software. They do this using of Team System, which is no surprise since Joel is the co-author of <a href="http://www.amazon.com/Managing-Projects-Microsoft-Visual-Pro-Developer/dp/0735622167/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1212632983&amp;sr=1-1">Managing Projects with Microsoft Visual Studio Team System</a> with Martin Danner. </p> <p>I later learned from Martin, who used to be my office mate, that he and Joel are sponsoring a CodePlex project to aggregate open source process templates. What a nice idea! One stop shopping for process templates. I went hunting for it, but couldn't find it on CodePlex yet.</p> <h2>How I Became a Team Build Muscle Man</h2> <p>Steve Borg blew packing material all over me when the build failed in his demo. To be more precise, he had a build monitor application hooked to a fan that blew packing peanuts all over me when his build failed. Nice. It tok 10 minutes to get all the stic clingy bits off me.</p> <p>Anyway, Steve ran through a demo on using Team Build for CI and for deployment. It was pretty good, although I think many of us could have done without the Richard Simmons imitation. :)</p> <p><strong>Deploying to IIS</strong></p> <p>Steve used the MSBuild tasks found in the <a href="http://www.codeplex.com/sdctasks" target="_blank">SDC CodePlex project</a> to deploy his web application to IIS on a deployment and smoke test machine. </p> <p><strong>Deploying SQL Data</strong></p> <p>Even better, he used Visual Studio 2008 DB Pro to create a DB sample data loading script and deployed that to his test DB server via the SDC task DeployDatabase. This ensures that his web tests will always be run against his app with the same underlying data. This makes writing and running automated web tests as part of your build MUCH easier.</p> <p><strong>Misc</strong></p> <p>Also in 2008, we get the new BuildStep task that we can use to emote nice messages into our build log to provide some debugging information. Handy.</p> <p>Implement the ITask interface to create your own tasks BTW. This is easy, I've actually done it!</p> <p>WIX (Windows Installer for XML) is an open source tool that MS actually wrote and released to CodePlex. It is a nice little tool that helps us build MSI installers for our application. This utility is actually used by MS to create their installers like the MS Office and other binaries. This is basically a Visual Studio project that works like MAKE, but better. You can use WIX to accomplish all kinds of things like prepping your target machine's dependencies as part of the MSI. Nice.</p> <h2>Source Control Branching Strategies</h2> <p>This was a great after-hours Birds of a Feather session that deserves a post of its own and will get it. </p> <p>Here's the takeaway: <em>I had no idea source control strategy was a religious issue or that one can see an organization's dysfunction in a source control system's folder structure. </em></p> <p>Now I know.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008, Day 1</title>
		<link>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-1</link>
		<comments>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 01:03:17 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/</guid>
		<description><![CDATA[Keynote by Bill Gates and a cast of Microsoft Executives Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF. Brian Harry on TFS Now and Future This was a great session. I know we are all tired of hearing it, but Rosario really is [...]]]></description>
			<content:encoded><![CDATA[<h2>Keynote by Bill Gates and a cast of Microsoft Executives</h2> <p>Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF.</p> <h2>Brian Harry on TFS Now and Future</h2> <p>This was a great session. I know we are all tired of hearing it, but Rosario really is the release of TFS that will be the ONE. We are all struggling with Work Items and being able to manage our work the way we actually think of our work.</p> <p>The one question I posed was simply how may an organization manage one single backlog of work within TFS and parse out that work to separate teams? The answer is that for right now, there isn't a good story here. I will be blogging later in the summer about how I am solving for this in our organization.</p> <h2>Open Q&amp;A on TFS - Jeff Levinson</h2> <p>Jeff is a Team System MVP and trainer and consultant for <a href="http://www.nwcadence.com/" target="_blank">NW Cadence</a>. He talked people through a lot of the typical questions that get asked soon after you install TFS in your organization.</p> <ol> <li>What source control branching model makes sense for me?  <li>How can I customize my work items?  <li>What's in the service packs?  <li>How should I deploy for my build environments?</li></ol> <p>You get the idea. Here are some likeable nuggets I took away from this session.</p> <ul> <li>If you are installing TFS into an organization with fewer than 500 active developers, install it all on one box.<br><br>I have installed on one machine for simplicity's sake and recommend the same model , but I had no idea the scalability of that model went as high as 500. Jeff claims that this kind of load will only flutter the CPU. Bear in mind, though: This is NOT regarding the build machine. Build machines need to be separate and preferably virtual. <br> <li>Microsoft will be paying closer attention to X in Rosario. X can equal any of these things:  <ul> <li>Project server integration  <li>Portfolio server integration  <li>Query-able link control in work items  <li>Tooling for testers, and that doesn't mean test tools for developers.</li></ul></li></ul> <h2>Application Lifecycle Management Panel Discussion</h2> <p>An entire stage of Team System MVPs, discussing Application Lifecycle Management. Rich Hundhausen, Jeff Levinson, Mike Azocar, Steve Borg, Jeff Beehler,&nbsp; Mickey Gousset, and several others.</p> <p>This is about ALM which includes all phases of the lifecycle, so how are we helped by rapid delivery.</p> <p>I only asked one question of the panel. "What's the view forward for integrating the entire ownership lifecycle? Don't we really need tooling like support in TFS for System Center to get where you are all talking about?"</p> <p>Answer: It turns out that MS is solving for different phases of the overall ALM problem at different phases with different tools. TFS for developers, System Center for I.T., Project and Portfolio Server for the business folks. What ties it all together? Nothing yet. Maybe BizTalk will do the trick, eh? Right.</p> <h2>Scrum-tastic Process Template</h2> <p>Presented by, Mike Azocar, the author and project manager of the actual <a href="http://www.codeplex.com/VSTSScrum" target="_blank">CodePlex project</a> for the Light Weight Scrum Process Template for Team System (whew).</p> <p>I am particularly interested in this work because of the aforementioned focus I have on customizing the <a href="http://scrumforteamsystem.com/en/default.aspx" target="_blank">Scrum process template from Conchango</a>.</p> <p>Nuggets:</p> <ul> <li>An interactive system can never be fully specified - Wagner's Law  <li>Scrum is appealing to many organizations because it is:  <ul> <li>Simple  <li>Free  <li>Transparent  <li>Common sense</li></ul> <li>"No one runs beyond 3 or 4 sprints before changing their out-of-the-box process template." - Mike</li></ul> <h2>Lastly</h2> <p>Keep a watch on <a href="http://msdn.microsoft.com/en-us/events/teched/cc676818.aspx" target="_blank">this page</a>, which hosts videos from the Tech Ed floor. </p> <p>Oh, and I met Richard Campbell of <a href="http://dotnetrocks.com/" target="_blank">DotNetRocks</a>. I told him it was sort of like meeting Madonna. He asked me not to follow him into the bathroom.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Programmability Advisory Council</title>
		<link>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-programmability-advisory-council</link>
		<comments>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 07:41:55 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/data-programmability-advisory-council/</guid>
		<description><![CDATA[Danny Simmons posted some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out: One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">Danny Simmons posted</a> some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out:</p>
<!--more-->
 <blockquote> <p>One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable credentials in that area. </p> <p>Eric Evans - <a href="http://www.domainlanguage.com/about/ericevans.html">http://www.domainlanguage.com/about/ericevans.html</a><br>Stephen Forte - <a href="http://www.stephenforte.net/">http://www.stephenforte.net/</a><br>Martin Fowler - <a href="http://martinfowler.com/">http://martinfowler.com/</a><br>Pavel Hruby - <a href="http://www.phruby.com/">http://www.phruby.com/</a><br>Jimmy Nilsson - <a href="http://jimmynilsson.com/">http://jimmynilsson.com/</a></p></blockquote> <p>Yes... I had to take a second look myself. That's an impressive list I say!  <p>Its just words on a web page at this point, but I think this speaks loud and clear that MS is listening to all the valuable constructive criticism that has been given from the community. I commend the Data Programmability team for making such a great move, but mostly all those who have stepped up to provide their insight.  <p>Along with this announcement, Danny is also requesting that folks continue to <a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">keep providing feedback.</a>  <p>Frickin' <em>sweet!</em>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Future of .NET</title>
		<link>http://elegantcode.com/2008/06/02/the-future-of-net/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-future-of-net</link>
		<comments>http://elegantcode.com/2008/06/02/the-future-of-net/#comments</comments>
		<pubDate>Mon, 02 Jun 2008 18:17:40 +0000</pubDate>
		<dc:creator>Jan Van Ryswyck</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/02/the-future-of-net/</guid>
		<description><![CDATA[That's the title of the latest .NET Rocks episode. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out maintainability, maintainability, maintainability! Let the ASP.NET MVC framework be your first [...]]]></description>
			<content:encoded><![CDATA[<p>That's the title of <a href="http://www.dotnetrocks.com/default.aspx?showNum=346" target="_blank">the latest .NET Rocks episode</a>. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out <a href="http://vanryswyckjan.blogspot.com/2007/01/maintainable-code.html" target="_blank">maintainability</a>, <a href="http://codebetter.com/blogs/jeremy.miller/archive/2006/12/06/On-Writing-Maintainable-Code.aspx" target="_blank">maintainability</a>, <a href="http://elegantcode.com/2008/03/30/elegant-code-essay-contest-winner/" target="_blank">maintainability</a>! Let the ASP.NET MVC framework be your first big success and your guide on the path for providing us developers some tools and most important, some patterns &amp; practices for creating more maintainable software.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/02/the-future-of-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2008 Service Pack 1 &#8211; BETA</title>
		<link>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=visual-studio-2008-service-pack-1-beta</link>
		<comments>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/#comments</comments>
		<pubDate>Fri, 09 May 2008 17:25:43 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/</guid>
		<description><![CDATA["With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement [...]]]></description>
			<content:encoded><![CDATA[<p><em>"</em>With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement in the client-side script tooling including JavaScript IntelliSense. Additionally, full support for SQL Server 2008, the ADO.NET Entity Framework and performance improvements for the IDE make Service Pack 1 a great release across the board.</p> <p>The .NET Framework 3.5 Service Pack 1 delivers more controls, a streamlined setup, improved start-up performance, and powerful new graphics features for client development and rich data scaffolding, improved AJAX support, and other improvements for Web development. Additionally it introduces the ADO.NET Entity Framework and ADO.NET Data Services, which simplify data access code in applications by providing an extensible, conceptual model for data from any data source and enabling this model to closely reflect business requirements.<em>"</em>  <p><em>IF YOU HAVE INSTALLED SILVERLIGHT TOOLS make sure you remove them, and <strong>make sure you also remove KB949325</strong>. See </em><a href="http://www.hanselman.com/blog/VS2008AndNet35SP1BetaShouldYouFearThisRelease.aspx"><em>Hanselman</em></a><em>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> or </em><a href="http://blogs.msdn.com/webdevtools/archive/2008/05/12/error-installing-visual-studio-2008-sp1-beta-and-silverlight-tools-beta-1.aspx"><em>here</em></a><em>.</em> <p>Read more on <a href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx">MSDN</a>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> and <a href="http://blogs.msdn.com/somasegar/archive/2008/05/12/visual-studio-2008-and-net-fx-3-5-sp1-beta-available-now.aspx">Somasegar</a><a href="http://go.microsoft.com/fwlink/?LinkId=119125"></a></p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MS Developer Goodness in Boise on Monday</title>
		<link>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ms-developer-goodness-in-boise-on-monday</link>
		<comments>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 16:17:04 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/</guid>
		<description><![CDATA[MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got [...]]]></description>
			<content:encoded><![CDATA[<p>MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got the not-so-sexy session, but I am spending all day today (and much of the last week) learning about VSTO so that I can share it with you tomorrow.</p>  <p>There are over 350 people registered for the developer track already. Come on down. <a href="http://www.microsoft.com/heroeshappenhere/events/Boise/default.mspx">Register here</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DI hooks in the Framework?</title>
		<link>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=di-mocking-hooks-in-the-framework</link>
		<comments>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/#comments</comments>
		<pubDate>Sat, 26 Apr 2008 04:01:33 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/</guid>
		<description><![CDATA[Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the Managed Extensibility [...]]]></description>
			<content:encoded><![CDATA[<p>Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the <b></b><a href="http://blogs.msdn.com/kcwalina/archive/2008/04/25/MEF.aspx" target="_blank">Managed Extensibility Framework (MEF)</a> can provide you with the best extension points in the .Net Framework. Wow, this is exciting news.</p> <p>On a related note, I heard some rumblings that some future releases (such as v4.0 Asp.Net) will ship with all the unit tests! </p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unity 1.0 EventBroker Sample CAB Style</title>
		<link>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ms-developer-goodness-in-boise-on-monday</link>
		<comments>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 16:17:04 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/</guid>
		<description><![CDATA[MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got [...]]]></description>
			<content:encoded><![CDATA[<p>MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got the not-so-sexy session, but I am spending all day today (and much of the last week) learning about VSTO so that I can share it with you tomorrow.</p>  <p>There are over 350 people registered for the developer track already. Come on down. <a href="http://www.microsoft.com/heroeshappenhere/events/Boise/default.mspx">Register here</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Elegant Code &#187; Microsoft</title>
	<atom:link href="http://elegantcode.com/tag/microsoft/feed/" rel="self" type="application/rss+xml" />
	<link>http://elegantcode.com</link>
	<description></description>
	<lastBuildDate>Tue, 15 May 2012 10:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Code Cast 13 &#8211; Microsoft Patterns and Practices</title>
		<link>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=code-cast-13-microsoft-patterns-and-practices</link>
		<comments>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 04:14:00 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[CodeCast]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Code Cast]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Patterns and Practices]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/</guid>
		<description><![CDATA[Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&#38;P, what P&#38;P has to offer the community, and forthcoming products from the team. Show [...]]]></description>
			<content:encoded><![CDATA[<a href="http://microsoftpdc.com/" target="_blank"><img src="http://www.microsoftpdc.com/Images/BlogBling/Bling3.jpg" alt="" align="right" /></a> Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&amp;P, what P&amp;P has to offer the community, and forthcoming products from the team.

<strong>Show Links</strong>
<ul>
	<li><a href="http://blogs.msdn.com/agile/">Grigori Melnik’s Blog</a></li>
	<li><a href="http://blogs.msdn.com/ajoyk/">Ajoy Krishnamoorthy’s Blog</a></li>
	<li><a href="http://msdn.microsoft.com/practices">Microsoft P&amp;P Team Site</a></li>
	<li><a href="http://codeplex.com/TestingGuidance">Acceptance Test Engineering Guidance</a></li>
	<li><a href="http://channel9.msdn.com/posts/Charles/Tour-Patterns-and-Practices-Lab/">P&amp;P Team Room Video</a></li>
	<li><a href="http://msdn.microsoft.com/en-us/practices/bb232643.aspx">P&amp;P Upcoming Releases</a></li>
	<li><a href="http://www.pnpsummit.com/_practices.aspx">Patterns and Practices Summit</a>, November 3-7, 2008</li>
</ul>
<a href="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3">Download the episode MP3</a>

<a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=271207118"><img src="http://elegantcode.com/cast/files/images/itunes_button.gif" border="0" alt="View in iTunes" /></a> <a href="http://feeds.feedburner.com/elegantcodecast"><img src="http://elegantcode.com/cast/files/images/rss_podcast.jpg" border="0" alt="Any Podcatcher" /></a>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:103d8226-f879-4268-877a-01eac008542a" class="wlWriterSmartContent" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/Micrososft+P%26P">Micrososft P&amp;P</a>,<a rel="tag" href="http://technorati.com/tags/Agile">Agile</a>,<a rel="tag" href="http://technorati.com/tags/Patterns+and+Practices">Patterns and Practices</a>,<a rel="tag" href="http://technorati.com/tags/.Net">.Net</a></div>
<img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=39d5550f-2b51-4176-8f5c-cd4d82122c93" alt="" />]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3" length="31363377" type="audio/mpeg" />
		</item>
		<item>
		<title>Microsoft&#8217;s ALM Story</title>
		<link>http://elegantcode.com/2008/06/12/microsofts-alm-story/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=microsofts-alm-story</link>
		<comments>http://elegantcode.com/2008/06/12/microsofts-alm-story/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 04:31:31 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Architecture and Design]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/12/microsofts-alm-story/</guid>
		<description><![CDATA[Microsoft has embraced the idea of Application Lifecycle Management as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. ALM is the enterprise software development holy grail that IBM sought [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft has embraced the idea of <a href="http://en.wikipedia.org/wiki/Application_Lifecycle_Management" target="_blank">Application Lifecycle Management</a> as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. </p> <p>ALM is the enterprise software development holy grail that IBM sought for years and invested in with the <a href="http://www-306.ibm.com/software/rational/" target="_blank">Rational tools</a>. And although there is a tremendous value in prescriptive guidance in enterprise development models, there is a natural tension between the ALM crowd and <em>Development as a Craft</em> advocates. ALM, after all, is all about quantifying, measuring, predicting, planning, and economies of scale. Ironically, the kind of transparency and predictability called for by the minimalist Agile community is the same goal of ALM tooling offered by Big Blue and now by the new blue in Redmond.</p> <p>How are Microsoft products staged to lay across the ALM model? The story today is mixed.</p> <table cellspacing="0" cellpadding="2" width="366" border="1"> <tbody> <tr> <td valign="top" width="160"><strong>ALM Principle</strong></td> <td valign="top" width="204"><strong>MS Product Answer</strong></td></tr> <tr> <td valign="top" width="176">Project Management</td> <td valign="top" width="213">Portfolio Server, Project Server, MS Project</td></tr> <tr> <td valign="top" width="181">Project Tacking</td> <td valign="top" width="214">TFS, MS Project</td></tr> <tr> <td valign="top" width="184">Requirements Planning</td> <td valign="top" width="213">3rd Party Solutions</td></tr> <tr> <td valign="top" width="185">Design and Development</td> <td valign="top" width="212">Visio, Visual Studio</td></tr> <tr> <td valign="top" width="186">Quality Assurance</td> <td valign="top" width="211">Visual Studio</td></tr> <tr> <td valign="top" width="187">Release Management</td> <td valign="top" width="211">System Center, Team Build</td></tr> <tr> <td valign="top" width="187">Helpdesk</td> <td valign="top" width="211">SharePoint?</td></tr></tbody></table> <p>Your familiarity with these products may lead you to the same conclusion that many have already reached. The products in the stack currently fail to integrate cleanly and many provide only a starting taste of the functionality needed to realize the ALM vision. The story is obviously a little muddy today. But what's next?</p> <p>Team System Rosario promises much improvement in the areas of tracking, design, quality assurance, and development. Significant bridges are also being started toward improving the release management story.</p> <p>That won't do it all, of course. There are other pieces needed in the stack that will need to be freshened up including operational support tools. Microsoft is in hot pursuit of filling this gap with a host of products under the <a href="http://www.microsoft.com/systemcenter/en/us/products.aspx" target="_blank">System Center umbrella of products</a>. An actual helpdesk management system to displace the TechExcels and Remedys of the world is essential here.</p> <p>The point is, MS has its sights set on a complete ALM story and are focusing on the midsize market, as Microsoft is so good at doing. </p> <h2>The Good</h2> <p>A focus on ALM in the Microsoft stack will have a tremendous impact on software development and delivery as we know it. Interoperable components in the pipeline will help bridge those gaps in midsize organizations that are typically only filled in large enterprises. Transparency will be ubiquitous.</p> <p>Given the open nature of products being developed at MS these days, I have high hopes that these systems will truly be pluggable, so that if you want to bridge TFS to Remedy (for example) doing so is not rocket surgery. Web services are great, aren't they?</p> <h2>Concerns</h2> <p>There is a fine line between managing for predictability and 'command and control'. Tools like those in this stack are like guns. They can be used for good, but misuse is more common than not. </p> <p>Tooling like this gives every non-tool Agilist out there genuine pause, and with good reason. The history of stewardship in complex models like this is less than stellar. That is to say, this tooling can provide huge value, and the basis for crushing souls. Let's be careful how we wield them.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/12/microsofts-alm-story/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008 Day 2</title>
		<link>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-2</link>
		<comments>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 02:47:34 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/</guid>
		<description><![CDATA[Elegant Code Cast With Ward Bell Ward Bell is the Vice President of Product Management at IdeaBlade, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&#160; Ward was good enough to [...]]]></description>
			<content:encoded><![CDATA[<h2>Elegant Code Cast With Ward Bell</h2> <p><a href="http://neverindoubtnet.blogspot.com/" target="_blank">Ward Bell</a> is the Vice President of Product Management at <a href="http://ideablade.com" target="_blank">IdeaBlade</a>, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&nbsp; Ward was good enough to share 30 minutes or so on the mics and you'll be hearing hi interview on the Elegant Code Cast in the weeks to come.</p> <h2>Platforms for SOA and Business Process Management: Comparing .NET and Java</h2> <p><a href="http://davidchappell.com" target="_blank"><img height="145" src="http://www.davidchappell.com/EMAIL_images/the_man.jpg" width="122" align="right" border="0"></a>This session looks at the worlds of Java and .Net while paying particular attention to the problems found in the ESB space. For example, how does each stack solve for workflow, rules, messaging, etc.</p> <p><a href="http://davidchappell.com/" target="_blank">David Chappell</a> has presented this session at the Java One conference, so it is important to remember that this information as been vetted through the Java community.</p> <p>The basic message came down to this: Sun's stewardship of Java has promoted a fragmentation of technologies implemented in the Java language. This is great news for MS, who provides a unified stack of solutions in these spaces. The presenter asked the room this question, "Who believes that many solutions to workflow is good for the Java community?" About half the room went one way, the other half went another.</p> <p>This gets to the core truth of the whole 1 vs. many solution discussion. Developers obviously love choice in their tools. After all, developers like to tinker and play with new technologies. Are these people also the ones most capable of making core platforms decisions for an enterprise? Typically not, because there is a bias toward new technology adoption over uniform practices.</p> <p>As an example, the speaker told a story:</p> <blockquote> <p>A Java developer asked him at a conference, "Help me construct an argument for my management to get permission for me to use Spring."</p> <p>"Why do you want to use Spring?" asked David.</p> <p>"Because it's cool, man," answered the developer. "I want to play with it because everyone knows it is a better way to write applications."</p> <p>"You should be fired," he answered.</p></blockquote> <p>The point here is that executives and logical decision makers who choose platforms are interested in the long game, not what technology is cool. Can I depend on vendor support? Will the product continue to evolve and grow? These are the questions that yearn for an answer of a unified platform that can be depended on to carry the business forward.</p> <p>David actually cited the Garter quote that predicts the ultimate death of the J2EE platform in favor of vendor supported Java platforms by IBM and Oracle. If that actually comes to fruition, it is fascinating not just for its technical implications, but also for the comment this makes on the ultimate viability of community-based technology stewardship.</p> <p>Maybe this 3 legged race of IBM v. Oracle v. MS offers an easier soup to stir than one consisting of many open source implementations. Interesting talk. The most interesting part of that discussion is the notable absence of Sun as a player in the Java discussion. What a weird world.</p> <p>My favorite quote of the session, "Model Driven Architecture is where the rubber meets the sky." Awesome. This comment on the huge abstraction of MDA feels right on.</p> <h2>FDD With Team System</h2> <p><a href="http://weblogs.asp.net/JSemeniuk/" target="_blank">Joel Semenuik</a> provided a great overview of how his organization uses a formal Feature Driven Development process in conjunction with Scrum to deliver software. They do this using of Team System, which is no surprise since Joel is the co-author of <a href="http://www.amazon.com/Managing-Projects-Microsoft-Visual-Pro-Developer/dp/0735622167/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1212632983&amp;sr=1-1">Managing Projects with Microsoft Visual Studio Team System</a> with Martin Danner. </p> <p>I later learned from Martin, who used to be my office mate, that he and Joel are sponsoring a CodePlex project to aggregate open source process templates. What a nice idea! One stop shopping for process templates. I went hunting for it, but couldn't find it on CodePlex yet.</p> <h2>How I Became a Team Build Muscle Man</h2> <p>Steve Borg blew packing material all over me when the build failed in his demo. To be more precise, he had a build monitor application hooked to a fan that blew packing peanuts all over me when his build failed. Nice. It tok 10 minutes to get all the stic clingy bits off me.</p> <p>Anyway, Steve ran through a demo on using Team Build for CI and for deployment. It was pretty good, although I think many of us could have done without the Richard Simmons imitation. :)</p> <p><strong>Deploying to IIS</strong></p> <p>Steve used the MSBuild tasks found in the <a href="http://www.codeplex.com/sdctasks" target="_blank">SDC CodePlex project</a> to deploy his web application to IIS on a deployment and smoke test machine. </p> <p><strong>Deploying SQL Data</strong></p> <p>Even better, he used Visual Studio 2008 DB Pro to create a DB sample data loading script and deployed that to his test DB server via the SDC task DeployDatabase. This ensures that his web tests will always be run against his app with the same underlying data. This makes writing and running automated web tests as part of your build MUCH easier.</p> <p><strong>Misc</strong></p> <p>Also in 2008, we get the new BuildStep task that we can use to emote nice messages into our build log to provide some debugging information. Handy.</p> <p>Implement the ITask interface to create your own tasks BTW. This is easy, I've actually done it!</p> <p>WIX (Windows Installer for XML) is an open source tool that MS actually wrote and released to CodePlex. It is a nice little tool that helps us build MSI installers for our application. This utility is actually used by MS to create their installers like the MS Office and other binaries. This is basically a Visual Studio project that works like MAKE, but better. You can use WIX to accomplish all kinds of things like prepping your target machine's dependencies as part of the MSI. Nice.</p> <h2>Source Control Branching Strategies</h2> <p>This was a great after-hours Birds of a Feather session that deserves a post of its own and will get it. </p> <p>Here's the takeaway: <em>I had no idea source control strategy was a religious issue or that one can see an organization's dysfunction in a source control system's folder structure. </em></p> <p>Now I know.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008, Day 1</title>
		<link>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-1</link>
		<comments>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 01:03:17 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/</guid>
		<description><![CDATA[Keynote by Bill Gates and a cast of Microsoft Executives Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF. Brian Harry on TFS Now and Future This was a great session. I know we are all tired of hearing it, but Rosario really is [...]]]></description>
			<content:encoded><![CDATA[<h2>Keynote by Bill Gates and a cast of Microsoft Executives</h2> <p>Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF.</p> <h2>Brian Harry on TFS Now and Future</h2> <p>This was a great session. I know we are all tired of hearing it, but Rosario really is the release of TFS that will be the ONE. We are all struggling with Work Items and being able to manage our work the way we actually think of our work.</p> <p>The one question I posed was simply how may an organization manage one single backlog of work within TFS and parse out that work to separate teams? The answer is that for right now, there isn't a good story here. I will be blogging later in the summer about how I am solving for this in our organization.</p> <h2>Open Q&amp;A on TFS - Jeff Levinson</h2> <p>Jeff is a Team System MVP and trainer and consultant for <a href="http://www.nwcadence.com/" target="_blank">NW Cadence</a>. He talked people through a lot of the typical questions that get asked soon after you install TFS in your organization.</p> <ol> <li>What source control branching model makes sense for me?  <li>How can I customize my work items?  <li>What's in the service packs?  <li>How should I deploy for my build environments?</li></ol> <p>You get the idea. Here are some likeable nuggets I took away from this session.</p> <ul> <li>If you are installing TFS into an organization with fewer than 500 active developers, install it all on one box.<br><br>I have installed on one machine for simplicity's sake and recommend the same model , but I had no idea the scalability of that model went as high as 500. Jeff claims that this kind of load will only flutter the CPU. Bear in mind, though: This is NOT regarding the build machine. Build machines need to be separate and preferably virtual. <br> <li>Microsoft will be paying closer attention to X in Rosario. X can equal any of these things:  <ul> <li>Project server integration  <li>Portfolio server integration  <li>Query-able link control in work items  <li>Tooling for testers, and that doesn't mean test tools for developers.</li></ul></li></ul> <h2>Application Lifecycle Management Panel Discussion</h2> <p>An entire stage of Team System MVPs, discussing Application Lifecycle Management. Rich Hundhausen, Jeff Levinson, Mike Azocar, Steve Borg, Jeff Beehler,&nbsp; Mickey Gousset, and several others.</p> <p>This is about ALM which includes all phases of the lifecycle, so how are we helped by rapid delivery.</p> <p>I only asked one question of the panel. "What's the view forward for integrating the entire ownership lifecycle? Don't we really need tooling like support in TFS for System Center to get where you are all talking about?"</p> <p>Answer: It turns out that MS is solving for different phases of the overall ALM problem at different phases with different tools. TFS for developers, System Center for I.T., Project and Portfolio Server for the business folks. What ties it all together? Nothing yet. Maybe BizTalk will do the trick, eh? Right.</p> <h2>Scrum-tastic Process Template</h2> <p>Presented by, Mike Azocar, the author and project manager of the actual <a href="http://www.codeplex.com/VSTSScrum" target="_blank">CodePlex project</a> for the Light Weight Scrum Process Template for Team System (whew).</p> <p>I am particularly interested in this work because of the aforementioned focus I have on customizing the <a href="http://scrumforteamsystem.com/en/default.aspx" target="_blank">Scrum process template from Conchango</a>.</p> <p>Nuggets:</p> <ul> <li>An interactive system can never be fully specified - Wagner's Law  <li>Scrum is appealing to many organizations because it is:  <ul> <li>Simple  <li>Free  <li>Transparent  <li>Common sense</li></ul> <li>"No one runs beyond 3 or 4 sprints before changing their out-of-the-box process template." - Mike</li></ul> <h2>Lastly</h2> <p>Keep a watch on <a href="http://msdn.microsoft.com/en-us/events/teched/cc676818.aspx" target="_blank">this page</a>, which hosts videos from the Tech Ed floor. </p> <p>Oh, and I met Richard Campbell of <a href="http://dotnetrocks.com/" target="_blank">DotNetRocks</a>. I told him it was sort of like meeting Madonna. He asked me not to follow him into the bathroom.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Programmability Advisory Council</title>
		<link>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-programmability-advisory-council</link>
		<comments>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 07:41:55 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/data-programmability-advisory-council/</guid>
		<description><![CDATA[Danny Simmons posted some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out: One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">Danny Simmons posted</a> some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out:</p>
<!--more-->
 <blockquote> <p>One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable credentials in that area. </p> <p>Eric Evans - <a href="http://www.domainlanguage.com/about/ericevans.html">http://www.domainlanguage.com/about/ericevans.html</a><br>Stephen Forte - <a href="http://www.stephenforte.net/">http://www.stephenforte.net/</a><br>Martin Fowler - <a href="http://martinfowler.com/">http://martinfowler.com/</a><br>Pavel Hruby - <a href="http://www.phruby.com/">http://www.phruby.com/</a><br>Jimmy Nilsson - <a href="http://jimmynilsson.com/">http://jimmynilsson.com/</a></p></blockquote> <p>Yes... I had to take a second look myself. That's an impressive list I say!  <p>Its just words on a web page at this point, but I think this speaks loud and clear that MS is listening to all the valuable constructive criticism that has been given from the community. I commend the Data Programmability team for making such a great move, but mostly all those who have stepped up to provide their insight.  <p>Along with this announcement, Danny is also requesting that folks continue to <a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">keep providing feedback.</a>  <p>Frickin' <em>sweet!</em>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Future of .NET</title>
		<link>http://elegantcode.com/2008/06/02/the-future-of-net/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-future-of-net</link>
		<comments>http://elegantcode.com/2008/06/02/the-future-of-net/#comments</comments>
		<pubDate>Mon, 02 Jun 2008 18:17:40 +0000</pubDate>
		<dc:creator>Jan Van Ryswyck</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/02/the-future-of-net/</guid>
		<description><![CDATA[That's the title of the latest .NET Rocks episode. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out maintainability, maintainability, maintainability! Let the ASP.NET MVC framework be your first [...]]]></description>
			<content:encoded><![CDATA[<p>That's the title of <a href="http://www.dotnetrocks.com/default.aspx?showNum=346" target="_blank">the latest .NET Rocks episode</a>. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out <a href="http://vanryswyckjan.blogspot.com/2007/01/maintainable-code.html" target="_blank">maintainability</a>, <a href="http://codebetter.com/blogs/jeremy.miller/archive/2006/12/06/On-Writing-Maintainable-Code.aspx" target="_blank">maintainability</a>, <a href="http://elegantcode.com/2008/03/30/elegant-code-essay-contest-winner/" target="_blank">maintainability</a>! Let the ASP.NET MVC framework be your first big success and your guide on the path for providing us developers some tools and most important, some patterns &amp; practices for creating more maintainable software.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/02/the-future-of-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2008 Service Pack 1 &#8211; BETA</title>
		<link>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=visual-studio-2008-service-pack-1-beta</link>
		<comments>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/#comments</comments>
		<pubDate>Fri, 09 May 2008 17:25:43 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/</guid>
		<description><![CDATA["With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement [...]]]></description>
			<content:encoded><![CDATA[<p><em>"</em>With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement in the client-side script tooling including JavaScript IntelliSense. Additionally, full support for SQL Server 2008, the ADO.NET Entity Framework and performance improvements for the IDE make Service Pack 1 a great release across the board.</p> <p>The .NET Framework 3.5 Service Pack 1 delivers more controls, a streamlined setup, improved start-up performance, and powerful new graphics features for client development and rich data scaffolding, improved AJAX support, and other improvements for Web development. Additionally it introduces the ADO.NET Entity Framework and ADO.NET Data Services, which simplify data access code in applications by providing an extensible, conceptual model for data from any data source and enabling this model to closely reflect business requirements.<em>"</em>  <p><em>IF YOU HAVE INSTALLED SILVERLIGHT TOOLS make sure you remove them, and <strong>make sure you also remove KB949325</strong>. See </em><a href="http://www.hanselman.com/blog/VS2008AndNet35SP1BetaShouldYouFearThisRelease.aspx"><em>Hanselman</em></a><em>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> or </em><a href="http://blogs.msdn.com/webdevtools/archive/2008/05/12/error-installing-visual-studio-2008-sp1-beta-and-silverlight-tools-beta-1.aspx"><em>here</em></a><em>.</em> <p>Read more on <a href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx">MSDN</a>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> and <a href="http://blogs.msdn.com/somasegar/archive/2008/05/12/visual-studio-2008-and-net-fx-3-5-sp1-beta-available-now.aspx">Somasegar</a><a href="http://go.microsoft.com/fwlink/?LinkId=119125"></a></p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MS Developer Goodness in Boise on Monday</title>
		<link>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ms-developer-goodness-in-boise-on-monday</link>
		<comments>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 16:17:04 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/</guid>
		<description><![CDATA[MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got [...]]]></description>
			<content:encoded><![CDATA[<p>MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got the not-so-sexy session, but I am spending all day today (and much of the last week) learning about VSTO so that I can share it with you tomorrow.</p>  <p>There are over 350 people registered for the developer track already. Come on down. <a href="http://www.microsoft.com/heroeshappenhere/events/Boise/default.mspx">Register here</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DI hooks in the Framework?</title>
		<link>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=di-mocking-hooks-in-the-framework</link>
		<comments>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/#comments</comments>
		<pubDate>Sat, 26 Apr 2008 04:01:33 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/</guid>
		<description><![CDATA[Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the Managed Extensibility [...]]]></description>
			<content:encoded><![CDATA[<p>Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the <b></b><a href="http://blogs.msdn.com/kcwalina/archive/2008/04/25/MEF.aspx" target="_blank">Managed Extensibility Framework (MEF)</a> can provide you with the best extension points in the .Net Framework. Wow, this is exciting news.</p> <p>On a related note, I heard some rumblings that some future releases (such as v4.0 Asp.Net) will ship with all the unit tests! </p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unity 1.0 EventBroker Sample CAB Style</title>
		<link>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=di-mocking-hooks-in-the-framework</link>
		<comments>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/#comments</comments>
		<pubDate>Sat, 26 Apr 2008 04:01:33 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/</guid>
		<description><![CDATA[Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the Managed Extensibility [...]]]></description>
			<content:encoded><![CDATA[<p>Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the <b></b><a href="http://blogs.msdn.com/kcwalina/archive/2008/04/25/MEF.aspx" target="_blank">Managed Extensibility Framework (MEF)</a> can provide you with the best extension points in the .Net Framework. Wow, this is exciting news.</p> <p>On a related note, I heard some rumblings that some future releases (such as v4.0 Asp.Net) will ship with all the unit tests! </p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Elegant Code &#187; Microsoft</title>
	<atom:link href="http://elegantcode.com/tag/microsoft/feed/" rel="self" type="application/rss+xml" />
	<link>http://elegantcode.com</link>
	<description></description>
	<lastBuildDate>Tue, 15 May 2012 10:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Code Cast 13 &#8211; Microsoft Patterns and Practices</title>
		<link>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=code-cast-13-microsoft-patterns-and-practices</link>
		<comments>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 04:14:00 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[CodeCast]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Code Cast]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Patterns and Practices]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/</guid>
		<description><![CDATA[Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&#38;P, what P&#38;P has to offer the community, and forthcoming products from the team. Show [...]]]></description>
			<content:encoded><![CDATA[<a href="http://microsoftpdc.com/" target="_blank"><img src="http://www.microsoftpdc.com/Images/BlogBling/Bling3.jpg" alt="" align="right" /></a> Chris and David were lucky enough to sit down (okay, it was a conference call) with Grigori Melnik and Ajoy Krishnamoorthy from Microsoft’s Patterns and Practices. Grigori and Ajoy covered a wide range of topics including Agile development practices within P&amp;P, what P&amp;P has to offer the community, and forthcoming products from the team.

<strong>Show Links</strong>
<ul>
	<li><a href="http://blogs.msdn.com/agile/">Grigori Melnik’s Blog</a></li>
	<li><a href="http://blogs.msdn.com/ajoyk/">Ajoy Krishnamoorthy’s Blog</a></li>
	<li><a href="http://msdn.microsoft.com/practices">Microsoft P&amp;P Team Site</a></li>
	<li><a href="http://codeplex.com/TestingGuidance">Acceptance Test Engineering Guidance</a></li>
	<li><a href="http://channel9.msdn.com/posts/Charles/Tour-Patterns-and-Practices-Lab/">P&amp;P Team Room Video</a></li>
	<li><a href="http://msdn.microsoft.com/en-us/practices/bb232643.aspx">P&amp;P Upcoming Releases</a></li>
	<li><a href="http://www.pnpsummit.com/_practices.aspx">Patterns and Practices Summit</a>, November 3-7, 2008</li>
</ul>
<a href="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3">Download the episode MP3</a>

<a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=271207118"><img src="http://elegantcode.com/cast/files/images/itunes_button.gif" border="0" alt="View in iTunes" /></a> <a href="http://feeds.feedburner.com/elegantcodecast"><img src="http://elegantcode.com/cast/files/images/rss_podcast.jpg" border="0" alt="Any Podcatcher" /></a>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:103d8226-f879-4268-877a-01eac008542a" class="wlWriterSmartContent" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/Micrososft+P%26P">Micrososft P&amp;P</a>,<a rel="tag" href="http://technorati.com/tags/Agile">Agile</a>,<a rel="tag" href="http://technorati.com/tags/Patterns+and+Practices">Patterns and Practices</a>,<a rel="tag" href="http://technorati.com/tags/.Net">.Net</a></div>
<img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=39d5550f-2b51-4176-8f5c-cd4d82122c93" alt="" />]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/09/02/code-cast-13-microsoft-patterns-and-practices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://pluralsight-free.s3.amazonaws.com/david-starr/ecc/ECC_13_MS_PatternsAndPractices.mp3" length="31363377" type="audio/mpeg" />
		</item>
		<item>
		<title>Microsoft&#8217;s ALM Story</title>
		<link>http://elegantcode.com/2008/06/12/microsofts-alm-story/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=microsofts-alm-story</link>
		<comments>http://elegantcode.com/2008/06/12/microsofts-alm-story/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 04:31:31 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Architecture and Design]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/12/microsofts-alm-story/</guid>
		<description><![CDATA[Microsoft has embraced the idea of Application Lifecycle Management as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. ALM is the enterprise software development holy grail that IBM sought [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft has embraced the idea of <a href="http://en.wikipedia.org/wiki/Application_Lifecycle_Management" target="_blank">Application Lifecycle Management</a> as a framework upon their software development tools can be positioned. This is a great notion, and one that will take several years of investment even from a company with as many resources as Microsoft. </p> <p>ALM is the enterprise software development holy grail that IBM sought for years and invested in with the <a href="http://www-306.ibm.com/software/rational/" target="_blank">Rational tools</a>. And although there is a tremendous value in prescriptive guidance in enterprise development models, there is a natural tension between the ALM crowd and <em>Development as a Craft</em> advocates. ALM, after all, is all about quantifying, measuring, predicting, planning, and economies of scale. Ironically, the kind of transparency and predictability called for by the minimalist Agile community is the same goal of ALM tooling offered by Big Blue and now by the new blue in Redmond.</p> <p>How are Microsoft products staged to lay across the ALM model? The story today is mixed.</p> <table cellspacing="0" cellpadding="2" width="366" border="1"> <tbody> <tr> <td valign="top" width="160"><strong>ALM Principle</strong></td> <td valign="top" width="204"><strong>MS Product Answer</strong></td></tr> <tr> <td valign="top" width="176">Project Management</td> <td valign="top" width="213">Portfolio Server, Project Server, MS Project</td></tr> <tr> <td valign="top" width="181">Project Tacking</td> <td valign="top" width="214">TFS, MS Project</td></tr> <tr> <td valign="top" width="184">Requirements Planning</td> <td valign="top" width="213">3rd Party Solutions</td></tr> <tr> <td valign="top" width="185">Design and Development</td> <td valign="top" width="212">Visio, Visual Studio</td></tr> <tr> <td valign="top" width="186">Quality Assurance</td> <td valign="top" width="211">Visual Studio</td></tr> <tr> <td valign="top" width="187">Release Management</td> <td valign="top" width="211">System Center, Team Build</td></tr> <tr> <td valign="top" width="187">Helpdesk</td> <td valign="top" width="211">SharePoint?</td></tr></tbody></table> <p>Your familiarity with these products may lead you to the same conclusion that many have already reached. The products in the stack currently fail to integrate cleanly and many provide only a starting taste of the functionality needed to realize the ALM vision. The story is obviously a little muddy today. But what's next?</p> <p>Team System Rosario promises much improvement in the areas of tracking, design, quality assurance, and development. Significant bridges are also being started toward improving the release management story.</p> <p>That won't do it all, of course. There are other pieces needed in the stack that will need to be freshened up including operational support tools. Microsoft is in hot pursuit of filling this gap with a host of products under the <a href="http://www.microsoft.com/systemcenter/en/us/products.aspx" target="_blank">System Center umbrella of products</a>. An actual helpdesk management system to displace the TechExcels and Remedys of the world is essential here.</p> <p>The point is, MS has its sights set on a complete ALM story and are focusing on the midsize market, as Microsoft is so good at doing. </p> <h2>The Good</h2> <p>A focus on ALM in the Microsoft stack will have a tremendous impact on software development and delivery as we know it. Interoperable components in the pipeline will help bridge those gaps in midsize organizations that are typically only filled in large enterprises. Transparency will be ubiquitous.</p> <p>Given the open nature of products being developed at MS these days, I have high hopes that these systems will truly be pluggable, so that if you want to bridge TFS to Remedy (for example) doing so is not rocket surgery. Web services are great, aren't they?</p> <h2>Concerns</h2> <p>There is a fine line between managing for predictability and 'command and control'. Tools like those in this stack are like guns. They can be used for good, but misuse is more common than not. </p> <p>Tooling like this gives every non-tool Agilist out there genuine pause, and with good reason. The history of stewardship in complex models like this is less than stellar. That is to say, this tooling can provide huge value, and the basis for crushing souls. Let's be careful how we wield them.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/12/microsofts-alm-story/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008 Day 2</title>
		<link>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-2</link>
		<comments>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 02:47:34 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/</guid>
		<description><![CDATA[Elegant Code Cast With Ward Bell Ward Bell is the Vice President of Product Management at IdeaBlade, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&#160; Ward was good enough to [...]]]></description>
			<content:encoded><![CDATA[<h2>Elegant Code Cast With Ward Bell</h2> <p><a href="http://neverindoubtnet.blogspot.com/" target="_blank">Ward Bell</a> is the Vice President of Product Management at <a href="http://ideablade.com" target="_blank">IdeaBlade</a>, which makes a .Net ORM product called DevForce. I met Ward and had a great discussion about ORM solutions and the evolving world of ORM and business tier technologies from MS and others.&nbsp; Ward was good enough to share 30 minutes or so on the mics and you'll be hearing hi interview on the Elegant Code Cast in the weeks to come.</p> <h2>Platforms for SOA and Business Process Management: Comparing .NET and Java</h2> <p><a href="http://davidchappell.com" target="_blank"><img height="145" src="http://www.davidchappell.com/EMAIL_images/the_man.jpg" width="122" align="right" border="0"></a>This session looks at the worlds of Java and .Net while paying particular attention to the problems found in the ESB space. For example, how does each stack solve for workflow, rules, messaging, etc.</p> <p><a href="http://davidchappell.com/" target="_blank">David Chappell</a> has presented this session at the Java One conference, so it is important to remember that this information as been vetted through the Java community.</p> <p>The basic message came down to this: Sun's stewardship of Java has promoted a fragmentation of technologies implemented in the Java language. This is great news for MS, who provides a unified stack of solutions in these spaces. The presenter asked the room this question, "Who believes that many solutions to workflow is good for the Java community?" About half the room went one way, the other half went another.</p> <p>This gets to the core truth of the whole 1 vs. many solution discussion. Developers obviously love choice in their tools. After all, developers like to tinker and play with new technologies. Are these people also the ones most capable of making core platforms decisions for an enterprise? Typically not, because there is a bias toward new technology adoption over uniform practices.</p> <p>As an example, the speaker told a story:</p> <blockquote> <p>A Java developer asked him at a conference, "Help me construct an argument for my management to get permission for me to use Spring."</p> <p>"Why do you want to use Spring?" asked David.</p> <p>"Because it's cool, man," answered the developer. "I want to play with it because everyone knows it is a better way to write applications."</p> <p>"You should be fired," he answered.</p></blockquote> <p>The point here is that executives and logical decision makers who choose platforms are interested in the long game, not what technology is cool. Can I depend on vendor support? Will the product continue to evolve and grow? These are the questions that yearn for an answer of a unified platform that can be depended on to carry the business forward.</p> <p>David actually cited the Garter quote that predicts the ultimate death of the J2EE platform in favor of vendor supported Java platforms by IBM and Oracle. If that actually comes to fruition, it is fascinating not just for its technical implications, but also for the comment this makes on the ultimate viability of community-based technology stewardship.</p> <p>Maybe this 3 legged race of IBM v. Oracle v. MS offers an easier soup to stir than one consisting of many open source implementations. Interesting talk. The most interesting part of that discussion is the notable absence of Sun as a player in the Java discussion. What a weird world.</p> <p>My favorite quote of the session, "Model Driven Architecture is where the rubber meets the sky." Awesome. This comment on the huge abstraction of MDA feels right on.</p> <h2>FDD With Team System</h2> <p><a href="http://weblogs.asp.net/JSemeniuk/" target="_blank">Joel Semenuik</a> provided a great overview of how his organization uses a formal Feature Driven Development process in conjunction with Scrum to deliver software. They do this using of Team System, which is no surprise since Joel is the co-author of <a href="http://www.amazon.com/Managing-Projects-Microsoft-Visual-Pro-Developer/dp/0735622167/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1212632983&amp;sr=1-1">Managing Projects with Microsoft Visual Studio Team System</a> with Martin Danner. </p> <p>I later learned from Martin, who used to be my office mate, that he and Joel are sponsoring a CodePlex project to aggregate open source process templates. What a nice idea! One stop shopping for process templates. I went hunting for it, but couldn't find it on CodePlex yet.</p> <h2>How I Became a Team Build Muscle Man</h2> <p>Steve Borg blew packing material all over me when the build failed in his demo. To be more precise, he had a build monitor application hooked to a fan that blew packing peanuts all over me when his build failed. Nice. It tok 10 minutes to get all the stic clingy bits off me.</p> <p>Anyway, Steve ran through a demo on using Team Build for CI and for deployment. It was pretty good, although I think many of us could have done without the Richard Simmons imitation. :)</p> <p><strong>Deploying to IIS</strong></p> <p>Steve used the MSBuild tasks found in the <a href="http://www.codeplex.com/sdctasks" target="_blank">SDC CodePlex project</a> to deploy his web application to IIS on a deployment and smoke test machine. </p> <p><strong>Deploying SQL Data</strong></p> <p>Even better, he used Visual Studio 2008 DB Pro to create a DB sample data loading script and deployed that to his test DB server via the SDC task DeployDatabase. This ensures that his web tests will always be run against his app with the same underlying data. This makes writing and running automated web tests as part of your build MUCH easier.</p> <p><strong>Misc</strong></p> <p>Also in 2008, we get the new BuildStep task that we can use to emote nice messages into our build log to provide some debugging information. Handy.</p> <p>Implement the ITask interface to create your own tasks BTW. This is easy, I've actually done it!</p> <p>WIX (Windows Installer for XML) is an open source tool that MS actually wrote and released to CodePlex. It is a nice little tool that helps us build MSI installers for our application. This utility is actually used by MS to create their installers like the MS Office and other binaries. This is basically a Visual Studio project that works like MAKE, but better. You can use WIX to accomplish all kinds of things like prepping your target machine's dependencies as part of the MSI. Nice.</p> <h2>Source Control Branching Strategies</h2> <p>This was a great after-hours Birds of a Feather session that deserves a post of its own and will get it. </p> <p>Here's the takeaway: <em>I had no idea source control strategy was a religious issue or that one can see an organization's dysfunction in a source control system's folder structure. </em></p> <p>Now I know.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/04/tech-ed-developer-2008-day-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Tech Ed Developer 2008, Day 1</title>
		<link>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tech-ed-developer-2008-day-1</link>
		<comments>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 01:03:17 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[Team System]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/</guid>
		<description><![CDATA[Keynote by Bill Gates and a cast of Microsoft Executives Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF. Brian Harry on TFS Now and Future This was a great session. I know we are all tired of hearing it, but Rosario really is [...]]]></description>
			<content:encoded><![CDATA[<h2>Keynote by Bill Gates and a cast of Microsoft Executives</h2> <p>Guess what? SilverLight, Visual Studio, Unified Communications, surface computing, and robots are going to save the earth. So will WCF.</p> <h2>Brian Harry on TFS Now and Future</h2> <p>This was a great session. I know we are all tired of hearing it, but Rosario really is the release of TFS that will be the ONE. We are all struggling with Work Items and being able to manage our work the way we actually think of our work.</p> <p>The one question I posed was simply how may an organization manage one single backlog of work within TFS and parse out that work to separate teams? The answer is that for right now, there isn't a good story here. I will be blogging later in the summer about how I am solving for this in our organization.</p> <h2>Open Q&amp;A on TFS - Jeff Levinson</h2> <p>Jeff is a Team System MVP and trainer and consultant for <a href="http://www.nwcadence.com/" target="_blank">NW Cadence</a>. He talked people through a lot of the typical questions that get asked soon after you install TFS in your organization.</p> <ol> <li>What source control branching model makes sense for me?  <li>How can I customize my work items?  <li>What's in the service packs?  <li>How should I deploy for my build environments?</li></ol> <p>You get the idea. Here are some likeable nuggets I took away from this session.</p> <ul> <li>If you are installing TFS into an organization with fewer than 500 active developers, install it all on one box.<br><br>I have installed on one machine for simplicity's sake and recommend the same model , but I had no idea the scalability of that model went as high as 500. Jeff claims that this kind of load will only flutter the CPU. Bear in mind, though: This is NOT regarding the build machine. Build machines need to be separate and preferably virtual. <br> <li>Microsoft will be paying closer attention to X in Rosario. X can equal any of these things:  <ul> <li>Project server integration  <li>Portfolio server integration  <li>Query-able link control in work items  <li>Tooling for testers, and that doesn't mean test tools for developers.</li></ul></li></ul> <h2>Application Lifecycle Management Panel Discussion</h2> <p>An entire stage of Team System MVPs, discussing Application Lifecycle Management. Rich Hundhausen, Jeff Levinson, Mike Azocar, Steve Borg, Jeff Beehler,&nbsp; Mickey Gousset, and several others.</p> <p>This is about ALM which includes all phases of the lifecycle, so how are we helped by rapid delivery.</p> <p>I only asked one question of the panel. "What's the view forward for integrating the entire ownership lifecycle? Don't we really need tooling like support in TFS for System Center to get where you are all talking about?"</p> <p>Answer: It turns out that MS is solving for different phases of the overall ALM problem at different phases with different tools. TFS for developers, System Center for I.T., Project and Portfolio Server for the business folks. What ties it all together? Nothing yet. Maybe BizTalk will do the trick, eh? Right.</p> <h2>Scrum-tastic Process Template</h2> <p>Presented by, Mike Azocar, the author and project manager of the actual <a href="http://www.codeplex.com/VSTSScrum" target="_blank">CodePlex project</a> for the Light Weight Scrum Process Template for Team System (whew).</p> <p>I am particularly interested in this work because of the aforementioned focus I have on customizing the <a href="http://scrumforteamsystem.com/en/default.aspx" target="_blank">Scrum process template from Conchango</a>.</p> <p>Nuggets:</p> <ul> <li>An interactive system can never be fully specified - Wagner's Law  <li>Scrum is appealing to many organizations because it is:  <ul> <li>Simple  <li>Free  <li>Transparent  <li>Common sense</li></ul> <li>"No one runs beyond 3 or 4 sprints before changing their out-of-the-box process template." - Mike</li></ul> <h2>Lastly</h2> <p>Keep a watch on <a href="http://msdn.microsoft.com/en-us/events/teched/cc676818.aspx" target="_blank">this page</a>, which hosts videos from the Tech Ed floor. </p> <p>Oh, and I met Richard Campbell of <a href="http://dotnetrocks.com/" target="_blank">DotNetRocks</a>. I told him it was sort of like meeting Madonna. He asked me not to follow him into the bathroom.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/tech-ed-developer-2008-day-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Programmability Advisory Council</title>
		<link>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-programmability-advisory-council</link>
		<comments>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 07:41:55 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/03/data-programmability-advisory-council/</guid>
		<description><![CDATA[Danny Simmons posted some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out: One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">Danny Simmons posted</a> some exciting news about the advisory council for future DP releases (Entity Framework, LINQ to SQL, ADO.Net Data Services, etc). Check this out:</p>
<!--more-->
 <blockquote> <p>One recurring theme in that feedback has been around domain driven design, so among our other criteria we’ve put together an advisory council which includes some members with notable credentials in that area. </p> <p>Eric Evans - <a href="http://www.domainlanguage.com/about/ericevans.html">http://www.domainlanguage.com/about/ericevans.html</a><br>Stephen Forte - <a href="http://www.stephenforte.net/">http://www.stephenforte.net/</a><br>Martin Fowler - <a href="http://martinfowler.com/">http://martinfowler.com/</a><br>Pavel Hruby - <a href="http://www.phruby.com/">http://www.phruby.com/</a><br>Jimmy Nilsson - <a href="http://jimmynilsson.com/">http://jimmynilsson.com/</a></p></blockquote> <p>Yes... I had to take a second look myself. That's an impressive list I say!  <p>Its just words on a web page at this point, but I think this speaks loud and clear that MS is listening to all the valuable constructive criticism that has been given from the community. I commend the Data Programmability team for making such a great move, but mostly all those who have stepped up to provide their insight.  <p>Along with this announcement, Danny is also requesting that folks continue to <a href="http://blogs.msdn.com/dsimmons/archive/2008/06/03/dp-advisory-council.aspx">keep providing feedback.</a>  <p>Frickin' <em>sweet!</em>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/03/data-programmability-advisory-council/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Future of .NET</title>
		<link>http://elegantcode.com/2008/06/02/the-future-of-net/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-future-of-net</link>
		<comments>http://elegantcode.com/2008/06/02/the-future-of-net/#comments</comments>
		<pubDate>Mon, 02 Jun 2008 18:17:40 +0000</pubDate>
		<dc:creator>Jan Van Ryswyck</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/06/02/the-future-of-net/</guid>
		<description><![CDATA[That's the title of the latest .NET Rocks episode. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out maintainability, maintainability, maintainability! Let the ASP.NET MVC framework be your first [...]]]></description>
			<content:encoded><![CDATA[<p>That's the title of <a href="http://www.dotnetrocks.com/default.aspx?showNum=346" target="_blank">the latest .NET Rocks episode</a>. No big deal, just one of the better podcast episodes out there. Microsoft, are you listening? Maybe you should put your chairman on a stage on one of your next big developer conferences, screaming out <a href="http://vanryswyckjan.blogspot.com/2007/01/maintainable-code.html" target="_blank">maintainability</a>, <a href="http://codebetter.com/blogs/jeremy.miller/archive/2006/12/06/On-Writing-Maintainable-Code.aspx" target="_blank">maintainability</a>, <a href="http://elegantcode.com/2008/03/30/elegant-code-essay-contest-winner/" target="_blank">maintainability</a>! Let the ASP.NET MVC framework be your first big success and your guide on the path for providing us developers some tools and most important, some patterns &amp; practices for creating more maintainable software.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/06/02/the-future-of-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2008 Service Pack 1 &#8211; BETA</title>
		<link>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=visual-studio-2008-service-pack-1-beta</link>
		<comments>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/#comments</comments>
		<pubDate>Fri, 09 May 2008 17:25:43 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/</guid>
		<description><![CDATA["With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement [...]]]></description>
			<content:encoded><![CDATA[<p><em>"</em>With Service Pack 1, Visual Studio 2008 introduces a large assortment of new features for targeting Windows, Office, and the Web. Developers building .NET-based applications will enjoy improved performance in the WPF designer, new components for Visual Basic and Visual C++, as well as an MFC-based Office 2007 Ribbon. Web developers will see continued improvement in the client-side script tooling including JavaScript IntelliSense. Additionally, full support for SQL Server 2008, the ADO.NET Entity Framework and performance improvements for the IDE make Service Pack 1 a great release across the board.</p> <p>The .NET Framework 3.5 Service Pack 1 delivers more controls, a streamlined setup, improved start-up performance, and powerful new graphics features for client development and rich data scaffolding, improved AJAX support, and other improvements for Web development. Additionally it introduces the ADO.NET Entity Framework and ADO.NET Data Services, which simplify data access code in applications by providing an extensible, conceptual model for data from any data source and enabling this model to closely reflect business requirements.<em>"</em>  <p><em>IF YOU HAVE INSTALLED SILVERLIGHT TOOLS make sure you remove them, and <strong>make sure you also remove KB949325</strong>. See </em><a href="http://www.hanselman.com/blog/VS2008AndNet35SP1BetaShouldYouFearThisRelease.aspx"><em>Hanselman</em></a><em>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> or </em><a href="http://blogs.msdn.com/webdevtools/archive/2008/05/12/error-installing-visual-studio-2008-sp1-beta-and-silverlight-tools-beta-1.aspx"><em>here</em></a><em>.</em> <p>Read more on <a href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx">MSDN</a>, <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx">ScottGu</a> and <a href="http://blogs.msdn.com/somasegar/archive/2008/05/12/visual-studio-2008-and-net-fx-3-5-sp1-beta-available-now.aspx">Somasegar</a><a href="http://go.microsoft.com/fwlink/?LinkId=119125"></a></p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/05/09/visual-studio-2008-service-pack-1-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MS Developer Goodness in Boise on Monday</title>
		<link>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ms-developer-goodness-in-boise-on-monday</link>
		<comments>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 16:17:04 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/</guid>
		<description><![CDATA[MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got [...]]]></description>
			<content:encoded><![CDATA[<p>MS is hosting a full day of 2008 product launch activities tomorrow down at the Grove in Boise. Along with many others, Rich Hundhausen and myself, are presenting some sessions on new features and tools available in Visual Studio 2008. Being the new kid on the block for doing these MSDN launches, I kinda got the not-so-sexy session, but I am spending all day today (and much of the last week) learning about VSTO so that I can share it with you tomorrow.</p>  <p>There are over 350 people registered for the developer track already. Come on down. <a href="http://www.microsoft.com/heroeshappenhere/events/Boise/default.mspx">Register here</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/27/ms-developer-goodness-in-boise-on-monday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DI hooks in the Framework?</title>
		<link>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=di-mocking-hooks-in-the-framework</link>
		<comments>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/#comments</comments>
		<pubDate>Sat, 26 Apr 2008 04:01:33 +0000</pubDate>
		<dc:creator>Jarod Ferguson</dc:creator>
				<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/</guid>
		<description><![CDATA[Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the Managed Extensibility [...]]]></description>
			<content:encoded><![CDATA[<p>Recently we have seen a new side of Microsoft with the community involvement and openness during development of MVC.Net, as well as releasing the source code for 'viewing' the BCL. It seems as though it just gets better and better. The Application Framework Core team is looking for your feedback on how the <b></b><a href="http://blogs.msdn.com/kcwalina/archive/2008/04/25/MEF.aspx" target="_blank">Managed Extensibility Framework (MEF)</a> can provide you with the best extension points in the .Net Framework. Wow, this is exciting news.</p> <p>On a related note, I heard some rumblings that some future releases (such as v4.0 Asp.Net) will ship with all the unit tests! </p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/25/di-mocking-hooks-in-the-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unity 1.0 EventBroker Sample CAB Style</title>
		<link>http://elegantcode.com/2008/04/09/unity-10-eventbroker-sample-cab-style/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=unity-10-eventbroker-sample-cab-style</link>
		<comments>http://elegantcode.com/2008/04/09/unity-10-eventbroker-sample-cab-style/#comments</comments>
		<pubDate>Wed, 09 Apr 2008 06:55:52 +0000</pubDate>
		<dc:creator>Scott Nichols</dc:creator>
				<category><![CDATA[Esoterica]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Open Source Software]]></category>
		<category><![CDATA[Patterns and Practices]]></category>
		<category><![CDATA[Tools and Utilities]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/04/09/unity-10-eventbroker-sample-cab-style/</guid>
		<description><![CDATA[Ok so Unity 1.0 has shipped, or should I say the “Unity Application Block” as Microsoft is terming it now. However, in this post I am not going to talk about the Unity IoC contain but a pretty cool peace of code that comes bundled with Unity’s QuickStart samples, the Event Broker Extension. The Event [...]]]></description>
			<content:encoded><![CDATA[Ok so <a href="http://www.codeplex.com/unity">Unity 1.0</a> has shipped, or should I say the “Unity Application Block” as Microsoft is terming it now. However, in this post I am not going to talk about the Unity <a href="http://en.wikipedia.org/wiki/Inversion_of_Control">IoC</a> contain but a pretty cool peace of code that comes bundled with Unity’s QuickStart samples, the Event Broker Extension.

The Event Broker Extension QuickStart demonstrates how you can extend the Unity container by adding a custom extension. The QuickStart implements an Event Broker for the container as a container extension and demonstrates the new extension using the StopLight QuickStart application sample.

The Event Broker Extension QuickStart contains three projects:
<ul>
	<li><strong>EventBroker</strong>. This project implements a simple publish and subscribe mechanism that supports multiple event publishers and multiple subscribers.</li>
	<li><strong>EventBrokerExtension</strong>. This project implements the custom container extension that allows applications to publish and subscribe to events using attributes or explicitly using code.</li>
	<li><strong>StopLight</strong>. This project is basically the same as that described in the Unity StopLight QuickStart, but it uses the custom container extension to manage the publishing of, and subscription to, two events within the application.</li>
</ul>
Now, why is this Unity EventBroker interesting? Well, if you have ever worked with <a href="http://www.cabpedia.com/index.php?title=Composite_UI_Application_Block">CAB</a> (Composite UI Application Block) or <a href="http://www.cabpedia.com/index.php?title=Smart_Client_Software_Factory">SCSF</a> (Smart Client Software Factory) then you know one of its main pillars was the implementation of a nice Pub/Sub event subscription framework which Microsoft called Event Broker. This was one of the best things about CAB. Unfortunately with CAB it is an all or nothing deal. You really cannot use the CAB Event Broker without using the rest of the CAB underpinnings.

The Unity implementation of the Event Broker is similar to CABs so you should feel right at home if you have any experience with CAB or SCSF. The one huge benefit is that the Unity Event Broker can easily be integrated into any existing WinForm or WPF application where you would like an easy to manage Event bus to handle all your event traffic.

It really is easy to implement, lets take a look at what you need to do in order to integrate the Unity based Event Broker into your application.

1) Download <a href="http://www.codeplex.com/unity">Unity 1.0</a> install it and unzip the “Unity QuickStart” package found in the Unity start menu installation path.

2) Compile the EventBrokerExtention and SimpleEventBroker projects.  Then grab the following DLLs found in the EventBrokerExtention bin folder and reference them in your application.
  EventBrokerExtension.dll
  SimpleEventBroker.dll
  Microsoft.Practices.ObjectBuilder2.dll
  Microsoft.Practices.Unity.dll

3) Now open your WinForm application and modify your entry point usually the Program.cs file which in my demo calls the FormMain.cs using a Unity Container like so.
<pre class="csharpcode"><span class="kwrd">using</span> System; 
<span class="kwrd">using</span> System.Collections.Generic; 
<span class="kwrd">using</span> System.Linq; 
<span class="kwrd">using</span> System.Windows.Forms; 
<span class="kwrd">using</span> EventBrokerExtension; 
<span class="kwrd">using</span> Microsoft.Practices.Unity; 

<span class="kwrd">namespace</span> SampleWinApp 
{ 
    <span class="kwrd">static</span> <span class="kwrd">class</span> Program 
    { 
        <span class="rem">/// &lt;summary&gt;</span> 
        <span class="rem">/// The main entry point for the application.</span> 
        <span class="rem">/// &lt;/summary&gt;</span> 
        [STAThread] 
        <span class="kwrd">static</span> <span class="kwrd">void</span> Main() 
        { 
            Application.EnableVisualStyles(); 
            Application.SetCompatibleTextRenderingDefault(<span class="kwrd">false</span>); 

            <span class="rem">// Create parent container</span> 
            IUnityContainer mainContainer = <span class="kwrd">new</span> UnityContainer() 
                  .AddNewExtension&lt;EventBrokerBusExtension&gt;(); 

            Application.Run(mainContainer.Resolve&lt;FormMain&gt;()); 
        } 
    } 
}</pre>
The important thing to notice is that I have wired up the EventBrokerExtention class through the Unity AddNewExtention method.  This will cause all the Events that are properly decorated with the correct attributes to be automatically registered in the EventBroker or SimpleEventBroker class.

You will also want to go and modified all the areas in your code where you are opening other forms to use a Unity container as well.  Here is an example opening a Form called FromA.cs 
<pre class="csharpcode"><span class="rem">//Create container</span> 
IUnityContainer myContainer = <span class="kwrd">new</span> UnityContainer() 
           .AddNewExtension&lt;EventBrokerBusExtension&gt;(); 
<span class="rem">//Open Form</span> 
FormA newForm = myContainer.Resolve&lt;FormA&gt;(); 
newForm.Show();</pre>
<style type="text/css">    .csharpcode, .csharpcode pre  {  	font-size: small;  	color: black;  	font-family: consolas, "Courier New", courier, monospace;  	background-color: #ffffff;  	/*white-space: pre;*/  }  .csharpcode pre { margin: 0em; }  .csharpcode .rem { color: #008000; }  .csharpcode .kwrd { color: #0000ff; }  .csharpcode .str { color: #006080; }  .csharpcode .op { color: #0000c0; }  .csharpcode .preproc { color: #cc6633; }  .csharpcode .asp { background-color: #ffff00; }  .csharpcode .html { color: #800000; }  .csharpcode .attr { color: #ff0000; }  .csharpcode .alt   {  	background-color: #f4f4f4;  	width: 100%;  	margin: 0em;  }  .csharpcode .lnum { color: #606060; }</style>Oh, make sure you import the proper libraries on all your forms.
<pre class="csharpcode"><span class="kwrd">using</span> Microsoft.Practices.Unity; 
<span class="kwrd">using</span> EventBrokerExtension; 
<span class="kwrd">using</span> SimpleEventBroker;</pre>
Now you need to setup all the Event publications and triggers. Let’s start simple, say we have a button on our FormMain that is used to force a data refresh in your application. You would need to add a publish event to your page like so.
<pre class="csharpcode"><span class="rem">//Using an attribute register an event in the EventBroker</span> 
[Publishes(<span class="str">"RefreshData"</span>)] 
<span class="kwrd">public</span> <span class="kwrd">event</span> EventHandler RefreshData ; 
<span class="rem">//Method you will call to trigger the event in the EventBroker </span> 
<span class="kwrd">public</span> <span class="kwrd">virtual</span> <span class="kwrd">void</span> OnRefreshDataChange(<span class="kwrd">object</span> sender, EventArgs ea) 
{ 
    EventHandler handlers = RefreshData ; 
    <span class="kwrd">if</span> (handlers != <span class="kwrd">null</span>) 
    { 
        handlers(<span class="kwrd">this</span>, EventArgs.Empty); 
    } 
}</pre>
On your button click trigger the event like so.
<pre class="csharpcode"><span class="kwrd">private</span> <span class="kwrd">void</span> buttonRefresh_Click(<span class="kwrd">object</span> sender, EventArgs e) 
{ 
    <span class="rem">//Trigger your event </span> 
    OnRefreshDataChange(<span class="kwrd">this</span>, e); 
}</pre>
Now you need to setup all your Event subscriptions, this is supper easy.  You will need to create a method on all the forms in your application that will handle your refresh command i.e. implements the functionality you wish for each form or control in your application.  So far in this contrived example I have two forms FormMain and FormA.  You would add a method like so to each page.    
<pre class="csharpcode">[SubscribesTo(<span class="str">"RefreshData"</span>)] 
<span class="kwrd">public</span> <span class="kwrd">void</span> OnRefreshDataFired(<span class="kwrd">object</span> sender, EventArgs e) 
{ 
         <span class="rem">//Do something, we need to do a data refresh</span> 
}</pre>
<style type="text/css">    .csharpcode, .csharpcode pre  {  	font-size: small;  	color: black;  	font-family: consolas, "Courier New", courier, monospace;  	background-color: #ffffff;  	/*white-space: pre;*/  }  .csharpcode pre { margin: 0em; }  .csharpcode .rem { color: #008000; }  .csharpcode .kwrd { color: #0000ff; }  .csharpcode .str { color: #006080; }  .csharpcode .op { color: #0000c0; }  .csharpcode .preproc { color: #cc6633; }  .csharpcode .asp { background-color: #ffff00; }  .csharpcode .html { color: #800000; }  .csharpcode .attr { color: #ff0000; }  .csharpcode .alt   {  	background-color: #f4f4f4;  	width: 100%;  	margin: 0em;  }  .csharpcode .lnum { color: #606060; }</style>Now anytime the RefreshData button is pushed the event is fired and all objects subscribed to that event in the EventBroker will be triggered. 

One important step you will want to do is unregister your subscribed events every time a modal form is closed.  Remember we are using the Unity IoC container to open a form which automatically registers all publisher and subscriber event handles on form_load (opened). 
<pre class="csharpcode"><span class="rem">// Unregister your subscription to help prevent runtime errors</span> 
<span class="kwrd">private</span> <span class="kwrd">void</span> FormA_FormClosing(<span class="kwrd">object</span> sender, FormClosingEventArgs e) 
{ 
     EventBroker myEB = <span class="kwrd">new</span> EventBroker(); 
     myEB.UnregisterSubscriber(<span class="str">"RefreshData"</span>, OnRefreshDataFired); 
}</pre>
That is about it, I used this to clean up an old legacy application that had Window events thrown everywhere.  The SimpleEventBroker class has several methods you can use to monitor what is going on inside the EventBroker such as GetPublisher, GetSubscribers, etc.

Oh, in my implementation I modified the Dictionary in the SimpleEventBroker class which holds the registered published events to be static, makes it easier if you have lots of modal forms, just make sure the Keys (string values) are unique.
<pre class="csharpcode">

<span class="kwrd">public</span> <span class="kwrd">class</span> EventBroker 
    { 
        <span class="kwrd">private</span> <span class="kwrd">static</span> Dictionary&lt;<span class="kwrd">string</span>, PublishedEvent&gt; eventPublishers  

        = <span class="kwrd">new</span> Dictionary&lt;<span class="kwrd">string</span>, PublishedEvent&gt;();</pre>
<style type="text/css">    .csharpcode, .csharpcode pre  {  	font-size: small;  	color: black;  	font-family: consolas, "Courier New", courier, monospace;  	background-color: #ffffff;  	/*white-space: pre;*/  }  .csharpcode pre { margin: 0em; }  .csharpcode .rem { color: #008000; }  .csharpcode .kwrd { color: #0000ff; }  .csharpcode .str { color: #006080; }  .csharpcode .op { color: #0000c0; }  .csharpcode .preproc { color: #cc6633; }  .csharpcode .asp { background-color: #ffff00; }  .csharpcode .html { color: #800000; }  .csharpcode .attr { color: #ff0000; }  .csharpcode .alt   {  	background-color: #f4f4f4;  	width: 100%;  	margin: 0em;  }  .csharpcode .lnum { color: #606060; }</style>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/04/09/unity-10-eventbroker-sample-cab-style/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

