<?xml version="1.0" encoding="iso-8859-1"?>
<rss version="2.0">
  <channel>
    <title>DotNetKicks.com : Stories kicked by Klaus</title>
    <description>Stories kicked by Klaus</description>
    <link>http://www.dotnetkicks.com/</link>
    <language>en-us</language>
    <copyright>Atweb Publishing Ltd.</copyright>
    <docs>http://backend.userland.com/rss</docs>
    <generator>DotNetKicks.com - .NET links, community driven</generator>
    <ttl>30</ttl>
    <item>
      <title>Introducing Darth Enumerator, PowerShell TIE Fighter |e| Operator</title>
      <description>Starting this project, I assumed that the distinction between an array and a Hashtable in PowerShell is the implementation of the IEnumerable interface. Now I know that there are two kinds of IEnumerables: There is one kind that PowerShell converts into Arrays before processing it in a pipeline for example an ArrayList. And another kind like a SortedList or a HashTable that get passed to the pipeline as scalar objects. My assumption was wrong and now there is some room for speculations. I wonder whether adding an extension method like ToArray() to the .NET Hashtable class, would let me pipe a Hashtable in PowerShell as Array of Dictionary Objects. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2009%2f04%2fIntroducing-Darth-Enumerator-PowerShell-TIE-Fighter-Operator.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2009%2f04%2fIntroducing-Darth-Enumerator-PowerShell-TIE-Fighter-Operator.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/tipsandtricks/Introducing_Darth_Enumerator_PowerShell_TIE_Fighter_e_Operator</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/tipsandtricks/Introducing_Darth_Enumerator_PowerShell_TIE_Fighter_e_Operator</guid>
      <pubDate>Tue, 14 Apr 2009 01:50:35 GMT</pubDate>
    </item>
    <item>
      <title>Tuning Click-Once deployment performance with VRTA and PowerShell</title>
      <description>Some of our client applications get distributed using the Click-Once paradigm. One day we noticed that the time between the initial click on the download link in the browser and the complete initialization of the Click-Once desktop client application took much longer than a user would tolerate. We decided to debug the deployment of the application and fix the problem. We chose the Microsoft Netmon 3.2 and the VRTA (Visual Round Trip Analyzer) for the initial analysis.  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2009%2f03%2fTuning-Click-Once-deployment-performance-with-VRTA-and-PowerShell.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2009%2f03%2fTuning-Click-Once-deployment-performance-with-VRTA-and-PowerShell.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/tipsandtricks/Tuning_Click_Once_deployment_performance_with_VRTA_and_PowerShell</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/tipsandtricks/Tuning_Click_Once_deployment_performance_with_VRTA_and_PowerShell</guid>
      <pubDate>Thu, 09 Apr 2009 06:07:25 GMT</pubDate>
    </item>
    <item>
      <title>Advanced file searches using PowerShell</title>
      <description>As far as I can remember, PowerShell v1.0's FileInfo object didn't have a VersionInfo property. It has been added during the PowerShell 2.0 release. This property makes it much easier to search for files that belong to a specific Product or to a specific Vendor for example. This blog post demonstrates some file system searches based on the file version information. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2009%2f03%2fAdvanced-file-searches-using-the-VersionInfo-property-of-the-PowerShell-FileInfo-object.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2009%2f03%2fAdvanced-file-searches-using-the-VersionInfo-property-of-the-PowerShell-FileInfo-object.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/tipsandtricks/Advanced_file_searches_using_PowerShell</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/tipsandtricks/Advanced_file_searches_using_PowerShell</guid>
      <pubDate>Tue, 24 Mar 2009 03:01:24 GMT</pubDate>
    </item>
    <item>
      <title>Essential LINQ Published</title>
      <description>There was a knock on my door this morning. By the time I could make it to the front of the house, the delivery man was gone, but he had left behind a box full red and white books, each with the title Essential LINQ. On the cover was my name, and the name of my good friend Dinesh Kulkarni. This was, of course, a box full of the first copies of my most recent book. They had a arrived at my house on a most propitious date: the first day of spring. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fblogs.msdn.com%2fcharlie%2farchive%2f2009%2f03%2f21%2fessential-linq-published.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fblogs.msdn.com%2fcharlie%2farchive%2f2009%2f03%2f21%2fessential-linq-published.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/linq/Essential_LINQ_Published</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/linq/Essential_LINQ_Published</guid>
      <pubDate>Tue, 24 Mar 2009 02:01:02 GMT</pubDate>
    </item>
    <item>
      <title>What ASP.NET MVC Can Learn From Ruby on Rails</title>
      <description>What I think ASP.NET MVC can learn from Ruby on Rails. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.kevinwilliampang.com%2fpost%2fWhat-ASPNET-MVC-Can-Learn-From-Ruby-on-Rails.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.kevinwilliampang.com%2fpost%2fWhat-ASPNET-MVC-Can-Learn-From-Ruby-on-Rails.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/aspnet/What_ASP_NET_MVC_Can_Learn_From_Ruby_on_Rails</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/aspnet/What_ASP_NET_MVC_Can_Learn_From_Ruby_on_Rails</guid>
      <pubDate>Sun, 22 Mar 2009 06:31:14 GMT</pubDate>
    </item>
    <item>
      <title>Git/Github survival guide</title>
      <description>Now that all the cool guys are moving to Git/GitHub, Ivan posts a survival guide, with all the most useful commands of git and how to get started with github/git &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fflanders.co.nz%2f2009%2f03%2f21%2fgitgithub-survival-guide%2f"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fflanders.co.nz%2f2009%2f03%2f21%2fgitgithub-survival-guide%2f" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/opensource/Git_Github_survival_guide</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/opensource/Git_Github_survival_guide</guid>
      <pubDate>Sun, 22 Mar 2009 16:16:10 GMT</pubDate>
    </item>
    <item>
      <title>Silverlight 3: AVAILABLE!</title>
      <description>Looks like Silverlight 3 is rolled-out: Runtime, SDK and documentation are already available for download. See the Client / Server libs? &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.nextbestgeek.com%2f2009%2f03%2f18%2fsilverlight-3-its-here%2f"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.nextbestgeek.com%2f2009%2f03%2f18%2fsilverlight-3-its-here%2f" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/silverlight/Silverlight_3_AVAILABLE</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/silverlight/Silverlight_3_AVAILABLE</guid>
      <pubDate>Fri, 20 Mar 2009 02:46:03 GMT</pubDate>
    </item>
    <item>
      <title>Generating NUnit tests with PowerShell</title>
      <description>The other day I needed to write NUnit unit tests to for a large number of method overloads. There were almost 100 methods that needed to be tested. The method signatures followed a well defined pattern. This didn't look like much fun at first, but then I looked in my toolbox and I saw the smiling face of the PowerShell ISE shouting "Pick me! Pick me!". About two hours later I had created a script that would parse the method signatures and generate NUnit test methods for each of the functions. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2009%2f03%2fGenerating-NUnit-tests-with-PowerShell.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2009%2f03%2fGenerating-NUnit-tests-with-PowerShell.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/unittesting/Generating_NUnit_tests_with_PowerShell</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/unittesting/Generating_NUnit_tests_with_PowerShell</guid>
      <pubDate>Wed, 04 Mar 2009 13:53:11 GMT</pubDate>
    </item>
    <item>
      <title>Getting Started: Scripting Incuity EMI models with PowerShell</title>
      <description>The Incuity EMI (Enterprise Manufacturing Intelligence) software lets you connect to various plant historians, real time plant data servers and conventional relational database servers and access the underlying information through an unified entity model. The heart of the model is a powerful and elegant meta-repository. The setup of the data sources and the creation of the entity model can be automated by using an easy to use client .NET API. This article describes how to get started with this API and demonstrates the creation of a connector to the plant historian server from Wonderware using PowerShell.
 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2009%2f02%2fGetting-Started-Scripting-Incuity-EMI-models-with-PowerShell.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2009%2f02%2fGetting-Started-Scripting-Incuity-EMI-models-with-PowerShell.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/architecture/Getting_Started_Scripting_Incuity_EMI_models_with_PowerShell</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/architecture/Getting_Started_Scripting_Incuity_EMI_models_with_PowerShell</guid>
      <pubDate>Thu, 26 Feb 2009 13:24:28 GMT</pubDate>
    </item>
    <item>
      <title>When PowerShell hash table magic backfires</title>
      <description>We just made it through the holidays and I finally found time to write about the most annoying thing in PowerShell: Hash table semi-automatic, which can easily result in some subtle bugs. And all of that, just because the hash tables don't behave as I would expect. I assumed hash tables to be implicitly sorted by the keys using the Sort-Object cmdlet and to always stay hash tables and not get converted into arrays of Dictionary Entries or even a single Dictionary entry when piped into a Where-Object cmdlet. To workaround these strange defects you need to apply some unnatural constructs and roll your own select statements. It just doesn't feel fair to make your children call GetEnumerator() before they try to find today's window on their Advents Calendar. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2009%2f01%2fWhen-PowerShell-hash-table-magic-backfires.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2009%2f01%2fWhen-PowerShell-hash-table-magic-backfires.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/tipsandtricks/When_PowerShell_hash_table_magic_backfires</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/tipsandtricks/When_PowerShell_hash_table_magic_backfires</guid>
      <pubDate>Mon, 05 Jan 2009 13:37:57 GMT</pubDate>
    </item>
    <item>
      <title>Dear PowerShell Santa...</title>
      <description>PowerShell has a great potential, but it needs professional tool support in order for it to mature. The current solutions are far too amateur. Here is my list of PowerShell improvements for Santa Claus &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f12%2fDear-PowerShell-Santa.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f12%2fDear-PowerShell-Santa.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/other/Dear_PowerShell_Santa</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/other/Dear_PowerShell_Santa</guid>
      <pubDate>Wed, 17 Dec 2008 13:13:43 GMT</pubDate>
    </item>
    <item>
      <title>One PowerShell Script to download PDC2008 Videos, Code and PowerPoints</title>
      <description>Yes I did it. I downloaded all 65,563,667,714 bytes and saved them as 407 files on my nice new WD Passport hard drive that I brought home from the PDC2008. And, yes I did it the old fashioned manual way: Right-Click on link and Save-As. But you don't have to do it. In this blog post I provide the metadata of all the files I downloaded and a PowerShell script that will help you automating the download process. Besides the PDC content you also get to a treasure trove of PowerShell scripting techniques ranging from dynamically generating Regular Expressions to loading meta-data form XML and CSV files.

 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f12%2fOne-PowerShell-Script-to-download-them-all.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f12%2fOne-PowerShell-Script-to-download-them-all.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/regex/One_PowerShell_Script_to_download_PDC2008_Videos_Code_and_PowerPoints</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/regex/One_PowerShell_Script_to_download_PDC2008_Videos_Code_and_PowerPoints</guid>
      <pubDate>Thu, 11 Dec 2008 00:46:08 GMT</pubDate>
    </item>
    <item>
      <title>Meta-Programming with PowerShell and Regular Expressions</title>
      <description>I am almost done with my biggest PowerShell scripting project so far. The last feature that I implemented was a flexible pattern matching facility. I wrote a procedure that would try to filter out a set of file names based on the first letters and the extensions of the file. The possible name prefixes and extensions would be provided by string arrays that could contain zero or more elements. The challenge as always with PowerShell is to understand its type conversion magic. One approach to this is to use baby steps while morphing the static regex string to a dynamically built regex string. This progression and the result is captured in this blog post. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f11%2fMeta-Programming-with-PowerShell-and-Regular-Expressions.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f11%2fMeta-Programming-with-PowerShell-and-Regular-Expressions.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/regex/Meta_Programming_with_PowerShell_and_Regular_Expressions</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/regex/Meta_Programming_with_PowerShell_and_Regular_Expressions</guid>
      <pubDate>Wed, 26 Nov 2008 22:29:37 GMT</pubDate>
    </item>
    <item>
      <title>Set-Content -Encoding parameter matters, if the content says so...</title>
      <description>I use a simple PowerShell script to replace some of the URLs in my blog post's html source before I publish them to www.tellingmachine.com. In my case the posts are stored as XML files. Usually I use Windows Live Writer to write my posts. I publish the documents for test purposes frequently during the authoring to the VisualStudio 2008 development web server that runs locally on my machine. Once the post is ready to put online, I take the XML file, run the PowerShell script against it and then copy it to my production server. Occasionally the XML files refuse to open in Internet Explorer after I ran the script. It took me few minutes to figure out why. Here is the story!

 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f11%2fPowerShellEncoding.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f11%2fPowerShellEncoding.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/tipsandtricks/Set_Content_Encoding_parameter_matters_if_the_content_says_so</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/tipsandtricks/Set_Content_Encoding_parameter_matters_if_the_content_says_so</guid>
      <pubDate>Mon, 10 Nov 2008 22:08:31 GMT</pubDate>
    </item>
    <item>
      <title>What is the coolest thing on the planet? - PowerShell</title>
      <description>Walter and I gave a presentation at the WonderWorld 2008 conference in Las Vegas last week. To get many people exited about our talk, we asked customers what they think the coolest thing on the planet is. They thought first that this is a trick question, but we didn't keep them in the dark for too long. The coolest thing on the planet is: PowerShell &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f10%2fWhat-is-the-coolest-thing-on-the-planet.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f10%2fWhat-is-the-coolest-thing-on-the-planet.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/csharp/What_is_the_coolest_thing_on_the_planet_PowerShell</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/csharp/What_is_the_coolest_thing_on_the_planet_PowerShell</guid>
      <pubDate>Tue, 14 Oct 2008 12:19:47 GMT</pubDate>
    </item>
    <item>
      <title>Converting a Generic List of Custom Objects &amp;amp; Property to a Formatted </title>
      <description>Today I had the need to take a list of names from a returned list of Custom Objects, and convert one of its properties it to a string that included some HTML.  This is nothing fancy, and pretty standard/simple but I thought I'd post about it anyway.  Since I did not need a custom ToString() method here to convert all properties of my object, I just created a simple method to iterate through the list of objects and add one of the properties to the StringBuilder object which is ultimately being returned to give me the nice string with HTML. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.codezest.com%2farchive%2f2008%2f10%2f13%2fconverting-genericlist_customobject_property-formatted-string-list.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.codezest.com%2farchive%2f2008%2f10%2f13%2fconverting-genericlist_customobject_property-formatted-string-list.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/csharp/Converting_a_Generic_List_of_Custom_Objects_Property_to_a_Formatted</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/csharp/Converting_a_Generic_List_of_Custom_Objects_Property_to_a_Formatted</guid>
      <pubDate>Mon, 13 Oct 2008 11:18:58 GMT</pubDate>
    </item>
    <item>
      <title>Patching File System Trees with PowerShell</title>
      <description>While working on a elaborate PowerShell script I needed to find a solution for the following problem: I wanted to do a string replace operation on a file system path name and have the resulting new string be reflected by the file system. For example the path name &amp;quot;C:\dogs\dog food\my favorites\hot dogs\Who let the dogs out.mp3&amp;quot; should be renamed by replacing &amp;quot;dog&amp;quot; with &amp;quot;cat&amp;quot;. The resulting path name would be &amp;quot;C:\cats\cat food\my favorites\hot cats\Who let the cats out.mp3&amp;quot;. Sounds easy, but how do I move the folders and files that are referred to in the path to their new locations? And even better, how can I do this recursively? This short blog post demonstrates two possible approaches. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f08%2fPatching-File-System-Trees-with-PowerShell.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f08%2fPatching-File-System-Trees-with-PowerShell.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/tipsandtricks/Patching_File_System_Trees_with_PowerShell</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/tipsandtricks/Patching_File_System_Trees_with_PowerShell</guid>
      <pubDate>Fri, 29 Aug 2008 21:04:34 GMT</pubDate>
    </item>
    <item>
      <title>Customization of PowerShell hash table merges</title>
      <description>PowerShell provides the += operator to add one hash table to another hash table. By default this operation will result in an error, if both hash tables have at least one key that is common in both collections. In some cases you may want to have a more granular control. For example, you don't want to get an error, if not only the key, but also the value is common in both collections. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f08%2fCustomization-of-PowerShell-hash-table-mergers.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f08%2fCustomization-of-PowerShell-hash-table-mergers.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/tipsandtricks/Customization_of_PowerShell_hash_table_merges</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/tipsandtricks/Customization_of_PowerShell_hash_table_merges</guid>
      <pubDate>Thu, 14 Aug 2008 00:17:35 GMT</pubDate>
    </item>
    <item>
      <title>Finding missing and duplicate lines in text files using PowerShell</title>
      <description>Every now and then I need to investigate bugs that get exposed because countable &amp;quot;things&amp;quot; are less or more than expected. In my special case I was dealing with an application that manages subscription handles to memory registers of programmable logic controllers (PLC). These programs are called Data Access Servers. Occasionally we get calls form customers reporting that the number of handles is less, or sometimes more than expected. The first step to debug this situation is to find out, which handles are missing or which ones are duplicates. This blog post describes how PowerShell's Compare-Object cmdlet makes this task, which used to be a pain in the &amp;quot;peep&amp;quot; now a piece of cake. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f07%2fFinding-missing-and-duplicate-lines-in-text-files-using-PowerShell.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f07%2fFinding-missing-and-duplicate-lines-in-text-files-using-PowerShell.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/tipsandtricks/Finding_missing_and_duplicate_lines_in_text_files_using_PowerShell</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/tipsandtricks/Finding_missing_and_duplicate_lines_in_text_files_using_PowerShell</guid>
      <pubDate>Fri, 25 Jul 2008 22:38:14 GMT</pubDate>
    </item>
    <item>
      <title>Extracting errors and warnings from a log file using PowerShell</title>
      <description>This blog post shows a simple Powershell command that searches a log file for errors and warnings and adds the matched lines to either to the errors.txt file or to the warnings.txt files. It takes advantage of the most powerful operator in Powershell, which is the switch operator. In my example here I exported the log file from the Wonderware SMC logger. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f07%2fExtracting-errors-and-warnings-from-a-log-file-using-PowerShell.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f07%2fExtracting-errors-and-warnings-from-a-log-file-using-PowerShell.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/tipsandtricks/Extracting_errors_and_warnings_from_a_log_file_using_PowerShell</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/tipsandtricks/Extracting_errors_and_warnings_from_a_log_file_using_PowerShell</guid>
      <pubDate>Wed, 23 Jul 2008 00:01:53 GMT</pubDate>
    </item>
    <item>
      <title>Renaming a series of indexed files with Powershell</title>
      <description>I love Powershell. I am only halfway through Bruce's book, but I am getting already a glimpse of its potential. I like especially the dynamic aspect of it. Creating and extending types on the fly is something that is quite exciting. Next I am looking to find a solution for my open issues with sorting hash tables. I think building a custom PSObject type with an integer NoteProperty and a NoteProperty that holds a FileInfo object might get me a few steps closer to solving the sorting challenge. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f07%2fRenaming-a-series-of-indexed-files-with-Powershell.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f07%2fRenaming-a-series-of-indexed-files-with-Powershell.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/tipsandtricks/Renaming_a_series_of_indexed_files_with_Powershell</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/tipsandtricks/Renaming_a_series_of_indexed_files_with_Powershell</guid>
      <pubDate>Fri, 18 Jul 2008 04:42:45 GMT</pubDate>
    </item>
    <item>
      <title>ASP.NET MVC preview release 4 - part 1</title>
      <description>The ASP.NET MVC team is in the final stages of finishing up a new &amp;quot;Preview 4&amp;quot; release that they hope to ship later this week.  The Preview 3 release focused on finishing up a lot of the underlying core APIs and extensibility points in ASP.NET MVC.  Starting with Preview 4 this week you'll start to see more and more higher level features begin to appear that build on top of the core foundation and add nice productivity.

There are a bunch of new features and capabilities in this new build - so much in fact that I decided I needed two posts to cover them all.  This first post will cover the new Caching, Error Handling and Security features in Preview 4, as well as some testing improvements it brings.  My next post will cover the new AJAX features being added with this release as well.
 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fweblogs.asp.net%2fscottgu%2farchive%2f2008%2f07%2f14%2fasp-net-mvc-preview-4-release-part-1.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fweblogs.asp.net%2fscottgu%2farchive%2f2008%2f07%2f14%2fasp-net-mvc-preview-4-release-part-1.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/aspnet/ASP_NET_MVC_preview_release_4_part_1</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/aspnet/ASP_NET_MVC_preview_release_4_part_1</guid>
      <pubDate>Mon, 14 Jul 2008 17:01:09 GMT</pubDate>
    </item>
    <item>
      <title>Debugging 101 - Measure, do your homework and think out of the box</title>
      <description>Being confronted with an occasional bug in a complex system can be quite overwhelming. There are three disciplines that help you to stay strong:
1) Read and learn about your platform and how to debug it. 
2) Use tools to quickly get the low hanging fruit. This might be enough in most of the cases to identify the bug. 
3) Think out of the box and try to be creative. Build a model, play with it, break it and fix it. In the worst case, you won't have found the cause of the bug, but you learned at least something new about your software. 
 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f07%2fMeasure2c-do-your-homework-and-think-out-of-the-box.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.tellingmachine.com%2fpost%2f2008%2f07%2fMeasure2c-do-your-homework-and-think-out-of-the-box.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/tipsandtricks/Debugging_101_Measure_do_your_homework_and_think_out_of_the_box</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/tipsandtricks/Debugging_101_Measure_do_your_homework_and_think_out_of_the_box</guid>
      <pubDate>Thu, 03 Jul 2008 04:10:45 GMT</pubDate>
    </item>
    <item>
      <title>Blog Engine.NET1.4 Released</title>
      <description>Blog Engine.net 1.4 has been released. more... &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.codeplex.com%2fblogengine%2fRelease%2fProjectReleases.aspx%3fReleaseId%3d9451"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.codeplex.com%2fblogengine%2fRelease%2fProjectReleases.aspx%3fReleaseId%3d9451" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/community/Blog_Engine_NET1_4_Released</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/community/Blog_Engine_NET1_4_Released</guid>
      <pubDate>Tue, 01 Jul 2008 23:01:03 GMT</pubDate>
    </item>
    <item>
      <title>Introduction to Mocking with Rhino Mocks</title>
      <description>A short screencast introduction to Mocking with Rhino Mocks &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.dimecasts.net%2fCasts%2fCastDetails%2f12"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.dimecasts.net%2fCasts%2fCastDetails%2f12" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/unittesting/Introduction_to_Mocking_with_Rhino_Mocks</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/unittesting/Introduction_to_Mocking_with_Rhino_Mocks</guid>
      <pubDate>Tue, 17 Jun 2008 20:01:09 GMT</pubDate>
    </item>
  </channel>
</rss>
