<?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>The Pursuit Of A Life &#187; Software</title>
	<atom:link href="http://thepursuitofalife.com/category/software/feed/" rel="self" type="application/rss+xml" />
	<link>http://thepursuitofalife.com</link>
	<description>Wouldn&#039;t you rather be writing code?</description>
	<lastBuildDate>Sat, 28 Aug 2010 02:26:00 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.3</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Test Driven Development After The Fact</title>
		<link>http://thepursuitofalife.com/test-driven-development-after-the-fact/</link>
		<comments>http://thepursuitofalife.com/test-driven-development-after-the-fact/#comments</comments>
		<pubDate>Sun, 22 Aug 2010 23:24:52 +0000</pubDate>
		<dc:creator>anthonyrstevens</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Code Coverage]]></category>
		<category><![CDATA[TDD]]></category>
		<category><![CDATA[Test-Driven Development]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Unit Testing]]></category>

		<guid isPermaLink="false">http://thepursuitofalife.com/test-driven-development-after-the-fact/</guid>
		<description><![CDATA[Let’s say (hypothetically, of course, since this thing never happens in practice) that you wrote some code in a non-TDD way.  Let’s say it was a straightforward line extension of some working code, but with a new mode that caused the line to go from this:
A –&#62; B –&#62; C –&#62; D
to include this:
A –&#62; [...]]]></description>
			<content:encoded><![CDATA[<p>Let’s say (hypothetically, of course, since this thing never happens in practice) that you wrote some code in a non-TDD way.  Let’s say it was a straightforward line extension of some working code, but with a new mode that caused the line to go from this:</p>
<p><code>A –&gt; B –&gt; C –&gt; D</code></p>
<p>to include this:</p>
<p><code>A –&gt; <strong>B’</strong> –&gt; <strong>C’</strong> –&gt; <strong>D’</strong></code></p>
<p>so, in your hypothetical pre-coffee poor-decision-making state, you just pounded out B’, C’, and D’ without first writing tests.</p>
<p>Now, having written a few hundred lines of code, you feel that nagging twinge that tells you that you really would love to see test harnesses around this new code.  Do you:</p>
<p>a) use a coverage tool to tell you what is untested, and dutifully go back and write unit tests until you get to your desired coverage threshold?  (Mine is 85%, by the way).</p>
<p>b) Actually run the new code, and find out what breaks and start writing tests at the breaking points, because that’s empirical evidence of either faulty assumptions or poor execution</p>
<p>What would you do?  I (again, hypothetically), <del>will</del> would start with b), because empirical evidence is always superior, and I might get pulled AFK by the sound of an ice cream truck or something, and I’d hate to have written tests for the easy stuff but left the hard stuff out because I didn’t have time.</p>
]]></content:encoded>
			<wfw:commentRss>http://thepursuitofalife.com/test-driven-development-after-the-fact/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SVN error: &#8220;This client is too old&#8221;</title>
		<link>http://thepursuitofalife.com/svn-error-this-client-is-too-old/</link>
		<comments>http://thepursuitofalife.com/svn-error-this-client-is-too-old/#comments</comments>
		<pubDate>Wed, 18 Aug 2010 01:48:25 +0000</pubDate>
		<dc:creator>anthonyrstevens</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Subversion]]></category>

		<guid isPermaLink="false">http://thepursuitofalife.com/svn-error-this-client-is-too-old/</guid>
		<description><![CDATA[I was diagnosing a problem with some SVN scripts today and came across an error: the batch file that called svn up was failing silently, and so the build that depended on the local files was not working properly either. 

I figured it might be a problem running SVN in a batch file – perhaps [...]]]></description>
			<content:encoded><![CDATA[<p>I was diagnosing a problem with some SVN scripts today and came across an error: the batch file that called <b>svn up</b> was failing silently, and so the build that depended on the local files was not working properly either. </p>
</p>
<p>I figured it might be a problem running SVN in a batch file – perhaps interactive mode was on?&#160; No, that wasn’t it.&#160; I tried <strong>svn up</strong> from the /trunk/ and it worked as expected. Hmmm.</p>
<p>Turns out I should have tried <b>svn up</b> from the branch that was failing silently: when I did, I got this error: </p>
<blockquote><pre>svn: This client is too old to work with working copy
'/path/to/your/working/copy'; please get a newer Subversion client</pre>
</blockquote>
<p>This is all explained in the <a href="http://subversion.apache.org/faq.html#broken-subclipse">SVN FAQ.</a>&#160; You just have to update your SVN client and you’ll be OK.</p>
<p>However, my script should not have failed silently.&#160; Always check your exit codes!&#160; Actually, I’m not sure if checking the exit code would have worked in this case, but I’m assuming the Subversion developers are returning a nonzero result if there are problems like the one above.</p>
]]></content:encoded>
			<wfw:commentRss>http://thepursuitofalife.com/svn-error-this-client-is-too-old/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dark Launches</title>
		<link>http://thepursuitofalife.com/dark-launches/</link>
		<comments>http://thepursuitofalife.com/dark-launches/#comments</comments>
		<pubDate>Mon, 21 Jun 2010 14:00:15 +0000</pubDate>
		<dc:creator>anthonyrstevens</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Continuous Deployment]]></category>
		<category><![CDATA[Dark Launches]]></category>
		<category><![CDATA[Facebook]]></category>

		<guid isPermaLink="false">http://thepursuitofalife.com/dark-launches/</guid>
		<description><![CDATA[In this listing of all the various tool and technologies that Facebook uses to serve up one gazillion requests per second, I found the following paragraph very interesting:
Gatekeeper also lets Facebook do something called “dark launches”, which is to activate elements of a certain feature behind the scenes before it goes live (without users noticing [...]]]></description>
			<content:encoded><![CDATA[<p>In <a href="http://royal.pingdom.com/2010/06/18/the-software-behind-facebook/">this listing of all the various tool and technologies that Facebook uses</a> to serve up one gazillion requests per second, I found the following paragraph very interesting:</p>
<blockquote><p>Gatekeeper also lets Facebook do something called “dark launches”, which is to activate elements of a certain feature behind the scenes before it goes live (without users noticing since there will be no corresponding UI elements). This acts as a real-world stress test and helps expose bottlenecks and other problem areas before a feature is officially launched. Dark launches are usually done two weeks before the actual launch.</p>
</blockquote>
<p>This is a great idea.&#160; Launch functionality behind the scenes, but don’t launch the corresponding UI elements.</p>
<p>Why is this great?</p>
<ol>
<li>Forces your team to get good at a deploying</li>
<li>Forces your team to think about separating UI and business processing during architecture meetings</li>
<li>Allows you to start exercising the functionality in the real world (perhaps through hidden URLs or something) before users get to it</li>
<li>Exposes naughty integration failures</li>
</ol>
<p>I like it.</p>
]]></content:encoded>
			<wfw:commentRss>http://thepursuitofalife.com/dark-launches/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Distributed Work Meetup Monday May 10th @ WhitePages</title>
		<link>http://thepursuitofalife.com/distributed-work-meetup-monday-may-10th-whitepages/</link>
		<comments>http://thepursuitofalife.com/distributed-work-meetup-monday-may-10th-whitepages/#comments</comments>
		<pubDate>Thu, 06 May 2010 04:14:35 +0000</pubDate>
		<dc:creator>anthonyrstevens</dc:creator>
				<category><![CDATA[Networking]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Distributed Work]]></category>
		<category><![CDATA[Joe Heitzeberg]]></category>
		<category><![CDATA[Mechanical Turk]]></category>
		<category><![CDATA[Meetup]]></category>
		<category><![CDATA[White Pages]]></category>

		<guid isPermaLink="false">http://thepursuitofalife.com/distributed-work-meetup-monday-may-10th-whitepages/</guid>
		<description><![CDATA[I got this note from Joe Heitzeberg at WhitePages and thought I’d pass it along.&#160; The idea of “distributed work” as a business strategy (or is it a tactic? Does it matter?) is really interesting to me.&#160; I’ve often wondered if Crowdify could benefit from the use of Mechanical Turk or something similar, perhaps as [...]]]></description>
			<content:encoded><![CDATA[<p>I got this note from <a href="http://twitter.com/jheitzeb">Joe Heitzeberg</a> at <a href="http://whitepages.com">WhitePages</a> and thought I’d pass it along.&#160; The idea of “distributed work” as a business strategy (or is it a tactic? Does it matter?) is really interesting to me.&#160; I’ve often wondered if <a href="http://crowdify.com">Crowdify</a> could benefit from the use of Mechanical Turk or something similar, perhaps as a way to baseline a non-segmented opinion about a given brand.</p>
<blockquote><p>WhitePages is hosting a Distributed Work Meetup at our offices on Monday, May 10th at 5pm.&#160; If you&#8217;re interested in learning more about leveraging crowdsourcing plaforms like mTurk in your ventures, then please join us.&#160;&#160; This time there will be 4 cities connected over streaming video to bring together some great speakers, including Seattle&#8217;s own Brent Frei.</p>
<p>Here&#8217;s the link with details like our address:&#160; <a href="http://bit.ly/dpaLHq">http://bit.ly/dpaLHq</a></p>
</blockquote>
<p>Maybe see you there?</p>
]]></content:encoded>
			<wfw:commentRss>http://thepursuitofalife.com/distributed-work-meetup-monday-may-10th-whitepages/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PowerShell&#8217;s NOT IN operator</title>
		<link>http://thepursuitofalife.com/powershells-not-in-operator/</link>
		<comments>http://thepursuitofalife.com/powershells-not-in-operator/#comments</comments>
		<pubDate>Wed, 21 Apr 2010 14:00:27 +0000</pubDate>
		<dc:creator>anthonyrstevens</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[powershell]]></category>

		<guid isPermaLink="false">http://thepursuitofalife.com/powershells-not-in-operator/</guid>
		<description><![CDATA[Were I to write some SQL to see if an element was not present in a set, I’d write something like:
SELECT T.*
FROM [table] T
WHERE T.[name] NOT IN (“foo”, “bar”, “bat”)
How to do the same type of thing in PowerShell 2.0?  Well, you can’t – not the same way.  But flip it on its head, and [...]]]></description>
			<content:encoded><![CDATA[<p>Were I to write some SQL to see if an element was not present in a set, I’d write something like:</p>
<p><code>SELECT T.*<br />
FROM [table] T<br />
WHERE T.[name] NOT IN (“foo”, “bar”, “bat”)</code></p>
<p>How to do the same type of thing in PowerShell 2.0?  Well, you can’t – not the same way.  But flip it on its head, and you get exactly the same thing:</p>
<p><code>$myvalue = “something” #this is the T.[name] from the SQL example<br />
$arr = “foo”, “bar”, “bat”<br />
($arr –contains $myvalue) -eq $false</code></p>
<p>You have an additional tweak available to you: a case-sensitive comparison.  To do this, use –ccontains (note the extra “c”) instead of –contains:</p>
<p><code>$arr –ccontains $myvalue</code></p>
<p>To find out more about comparison operators in PowerShell 2.0, type:</p>
<p><code>get-help about_comparison_operators</code></p>
<p>in the IDE.</p>
<p>Finally, a neat trick: if you know that there’s an “about_” topic, but are not sure what it is?  get-help accepts partial matches:</p>
<p><code>get-help about_</code></p>
<p>… will return all the help topics that start with the string “about_”.  Pretty neat.</p>
]]></content:encoded>
			<wfw:commentRss>http://thepursuitofalife.com/powershells-not-in-operator/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>PowerShell: Remove the Expect 100-Continue Header</title>
		<link>http://thepursuitofalife.com/powershell-remove-the-expect-100-continue-header/</link>
		<comments>http://thepursuitofalife.com/powershell-remove-the-expect-100-continue-header/#comments</comments>
		<pubDate>Sat, 17 Apr 2010 13:58:25 +0000</pubDate>
		<dc:creator>anthonyrstevens</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[HTTP]]></category>
		<category><![CDATA[HttpWebRequest]]></category>
		<category><![CDATA[powershell]]></category>
		<category><![CDATA[ServicePointManager]]></category>

		<guid isPermaLink="false">http://thepursuitofalife.com/powershell-remove-the-expect-100-continue-header/</guid>
		<description><![CDATA[I’m running some scripts against the YouMail API to post audio.  I’m seeing HTTP 417 Expectation Failed messages, which The Google has led me to believe are due to the Expect: 100-Continue header present in the post.
Fiddler tells me that yes indeedy, I’m passing the Expect: 100-Continue header:

So, back in PowerShell, I add the following [...]]]></description>
			<content:encoded><![CDATA[<p>I’m running some scripts against the YouMail API to post audio.  I’m seeing <a href="http://www.checkupdown.com/status/E417.html">HTTP 417 Expectation Failed</a> messages, which The Google has led me to believe are due to the Expect: 100-Continue header present in the post.</p>
<p>Fiddler tells me that yes indeedy, I’m passing the Expect: 100-Continue header:</p>
<p><a href="http://thepursuitofalife.com/wp-content/uploads/2010/04/image1.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" src="http://thepursuitofalife.com/wp-content/uploads/2010/04/image_thumb1.png" border="0" alt="image" width="215" height="221" /></a></p>
<p>So, back in PowerShell, I add the following line of code:</p>
<p><code>[System.Net.ServicePointManager]::Expect100Continue = $false</code></p>
<p>… but I see the same problem.</p>
<p>Checking the ServicePointManager and the HttpWebRequest object for their properties gives me two different results:</p>
<p><code>§ anthonys-m1330 {C:\s\C\Test-YouMail} [System.Net.ServicePointManager]::Expect100Continue<br />
False<br />
______________________________________________________________________________________________<br />
§ anthonys-m1330 {C:\s\C\Test-YouMail} $req.Expect<br />
100-continue</code></p>
<p>So what’s the deal?  Turns out that you have to set the Expect header property on the HttpWebRequest object directly:</p>
<p><code>$req.Expect = ""</code></p>
<p>…which clears out the Expect: 100-Continue header.</p>
<p>This begs the question, what does the System.Net.ServicePointManager have to do with anything?  Dunno.</p>
]]></content:encoded>
			<wfw:commentRss>http://thepursuitofalife.com/powershell-remove-the-expect-100-continue-header/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interesting PowerShell XML Encoding Bug</title>
		<link>http://thepursuitofalife.com/interesting-powershell-xml-encoding-bug/</link>
		<comments>http://thepursuitofalife.com/interesting-powershell-xml-encoding-bug/#comments</comments>
		<pubDate>Fri, 16 Apr 2010 14:15:09 +0000</pubDate>
		<dc:creator>anthonyrstevens</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[powershell]]></category>
		<category><![CDATA[System.Xml]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://thepursuitofalife.com/interesting-powershell-xml-encoding-bug/</guid>
		<description><![CDATA[I was dinking around with the System.Xml namespace in PowerShell this morning and came across an interesting encoding bug.  Here’s the PowerShell function to read XML data from a file and return a System.Xml.XmlDocument object:
function Get-XmlDocumentFromFile() {
param([string]$file)
Write-Host("Reading the file {0} for XML content..." -f $file)
if ((Test-Path $file) -eq $false) {
throw(("ERROR: File not found! '{0}'" -f [...]]]></description>
			<content:encoded><![CDATA[<p>I was dinking around with the System.Xml namespace in PowerShell this morning and came across an interesting encoding bug.  Here’s the PowerShell function to read XML data from a file and return a System.Xml.XmlDocument object:</p>
<p><code>function Get-XmlDocumentFromFile() {<br />
param([string]$file)<br />
Write-Host("Reading the file {0} for XML content..." -f $file)<br />
if ((Test-Path $file) -eq $false) {<br />
throw(("ERROR: File not found! '{0}'" -f $file))<br />
}<br />
[xml]$xml = new-object System.Xml.XmlDocument<br />
try<br />
{<br />
$xml.Load($file)<br />
$xml<br />
}<br />
catch [System.Exception]<br />
{<br />
$_ | fl * -Force<br />
}<br />
}</code></p>
<p>When I call this function with this XML file as input:</p>
<p><code>&lt;?xml version="1.0" encoding=”UTF-8” ?&gt;<br />
&lt;entry&gt;<br />
&lt;/entry&gt;</code></p>
<p>I get this error:</p>
<p><code>Cannot convert value "System.Object[]" to type "System.Xml.XmlDocument". Error: "Data at the root level is invalid. Line<br />
1, position 1."<br />
At line:1 char:3</code></p>
<p>However, if I change the XML declaration in the file to this:</p>
<p><code>&lt;?xml version="1.0" ?&gt;<br />
&lt;entry&gt;<br />
&lt;/entry&gt;</code></p>
<p>…it works.  So what is it about the “UTF-8” encoding attribute that causes it to barf in PowerShell?  Dunno.  Will investigate more later.  But that “Data at the root level is invalid” error is what pointed me at the problem.  My first cut at the PS function didn’t include the exception handler and I got this unhelpful and misleading error:</p>
<p><code>Root element is missing</code></p>
<p>… which was obviously incorrect on its face.  So, moral: always include exception handlers in your PS functions.</p>
]]></content:encoded>
			<wfw:commentRss>http://thepursuitofalife.com/interesting-powershell-xml-encoding-bug/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HOWTO: Get a Base64 Encoded String From a WAV file in PowerShell</title>
		<link>http://thepursuitofalife.com/howto-get-a-base64-encoded-string-from-a-wav-file-in-powershell/</link>
		<comments>http://thepursuitofalife.com/howto-get-a-base64-encoded-string-from-a-wav-file-in-powershell/#comments</comments>
		<pubDate>Thu, 15 Apr 2010 14:05:53 +0000</pubDate>
		<dc:creator>anthonyrstevens</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[Audio]]></category>
		<category><![CDATA[Base64]]></category>
		<category><![CDATA[Encoding]]></category>
		<category><![CDATA[powershell]]></category>

		<guid isPermaLink="false">http://thepursuitofalife.com/howto-get-a-base64-encoded-string-from-a-wav-file-in-powershell/</guid>
		<description><![CDATA[This little function may be useful to you long-tail Google searchers:
 function Get-BytesFromWav(){
    param([string]$wavFile)
    Write-Host (&#34;Getting bytes from the file {0}...&#34; -f $wavFile)
    if ((Test-Path $wavFile) -eq $false) {
        throw(&#34;File not found!&#34;)
    }
    [...]]]></description>
			<content:encoded><![CDATA[<p>This little function may be useful to you long-tail Google searchers:</p>
<p> <code>function Get-BytesFromWav(){<br />
    param([string]$wavFile)<br />
    Write-Host (&quot;Getting bytes from the file {0}...&quot; -f $wavFile)<br />
    if ((Test-Path $wavFile) -eq $false) {<br />
        throw(&quot;File not found!&quot;)<br />
    }<br />
    [System.IO.FileStream]$stream = [System.IO.File]::OpenRead($wavFile)<br />
    [byte[]]$b = @($null) * 1024<br />
    [System.Text.StringBuilder]$sb = new-object System.Text.StringBuilder<br />
    while ($stream.Read($b,0,$b.Length) -gt 0)<br />
    {<br />
        $b64 = [Convert]::ToBase64String($b)<br />
        #make sure to handle the return value<br />
        $temp = $sb.Append($b64)<br />
    }<br />
    $sb.ToString()<br />
}</code></p>
]]></content:encoded>
			<wfw:commentRss>http://thepursuitofalife.com/howto-get-a-base64-encoded-string-from-a-wav-file-in-powershell/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>PowerShell: Watch Those Implicit Return Values!</title>
		<link>http://thepursuitofalife.com/powershell-watch-those-implicit-return-values/</link>
		<comments>http://thepursuitofalife.com/powershell-watch-those-implicit-return-values/#comments</comments>
		<pubDate>Sun, 11 Apr 2010 16:50:12 +0000</pubDate>
		<dc:creator>anthonyrstevens</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[functions]]></category>
		<category><![CDATA[powershell]]></category>

		<guid isPermaLink="false">http://thepursuitofalife.com/powershell-watch-those-implicit-return-values/</guid>
		<description><![CDATA[One thing about PowerShell that tends to bite me fairly often is the handling of return values from functions.  PowerShell doesn&#8217;t have an explicit RETURN statement, so functions will return anything that&#8217;s not handled. Consider the following:
 function Foo() { [System.Text.StringBuilder]$sb = new-object System.Text.StringBuilder $sb.AppendLine("foo") $sb.AppendLine("bar") $sb.AppendLine("bat") $sb.ToString() }
 What&#8217;s the return value of [...]]]></description>
			<content:encoded><![CDATA[<p>One thing about PowerShell that tends to bite me fairly often is the handling of return values from functions.  PowerShell doesn&#8217;t have an explicit RETURN statement, so functions will return anything that&#8217;s not handled. Consider the following:</p>
<p> <code>function Foo() {<br/> [System.Text.StringBuilder]$sb = new-object System.Text.StringBuilder<br/> $sb.AppendLine("foo")<br/> $sb.AppendLine("bar")<br/> $sb.AppendLine("bat")<br/> $sb.ToString()<br/> }</code>
<p/> What&#8217;s the return value of this function?  One might at first suspect that it is:
<p/> <code>foo<br/> bar<br/> bat</code>
<p/> &#8230;but you&#8217;d be wrong.  What it actually outputs is a bunch of duplicates, because each .AppendLine() call returns SOMETHING, and that something happens to be the StringBuilder instance.  And you may run into an implicit .ToString() if you&#8217;re using the return value, so&#8230;it&#8217;s just bad news all around.
<p/> The solution is to explictly handle anything you don&#8217;t want to return:
<p/> <code>function Foo() {<br/> [System.Text.StringBuilder]$sb = new-object System.Text.StringBuilder<br/> $temp = $sb.AppendLine("foo")<br/> $temp = $sb.AppendLine("bar")<br/> $temp = $sb.AppendLine("bat")<br/> $sb.ToString()<br/> }</code>
<p/> It&#8217;s a little gnarly, but workable. </p>
]]></content:encoded>
			<wfw:commentRss>http://thepursuitofalife.com/powershell-watch-those-implicit-return-values/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HOWTO: List Enum Values In PowerShell</title>
		<link>http://thepursuitofalife.com/howto-list-enum-values-in-powershell/</link>
		<comments>http://thepursuitofalife.com/howto-list-enum-values-in-powershell/#comments</comments>
		<pubDate>Sun, 11 Apr 2010 14:52:04 +0000</pubDate>
		<dc:creator>anthonyrstevens</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[PowerShell enum Get-Member]]></category>

		<guid isPermaLink="false">http://thepursuitofalife.com/howto-list-enum-values-in-powershell/</guid>
		<description><![CDATA[You know of a .NET enum enumerated type.&#160; You want to know what its values are.&#160; Pretty common.
[System.IO.FileOptions] &#124; gm –static –membertype Property
]]></description>
			<content:encoded><![CDATA[<p>You know of a .NET <strong>enum</strong> enumerated type.&#160; You want to know what its values are.&#160; Pretty common.</p>
<p><code>[System.IO.FileOptions] | gm –static –membertype Property</code></p>
]]></content:encoded>
			<wfw:commentRss>http://thepursuitofalife.com/howto-list-enum-values-in-powershell/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
