<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Hendrik Swanepoel's Blog</title>
	<atom:link href="http://hendrikswan.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://hendrikswan.wordpress.com</link>
	<description>Musings of a Pragmatic developer</description>
	<lastBuildDate>Tue, 16 Mar 2010 12:40:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='hendrikswan.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Hendrik Swanepoel's Blog</title>
		<link>http://hendrikswan.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://hendrikswan.wordpress.com/osd.xml" title="Hendrik Swanepoel&#039;s Blog" />
	<atom:link rel='hub' href='http://hendrikswan.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Unit tests more complicated than the code?</title>
		<link>http://hendrikswan.wordpress.com/2010/03/11/unit-tests-more-complicated-than-the-code/</link>
		<comments>http://hendrikswan.wordpress.com/2010/03/11/unit-tests-more-complicated-than-the-code/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 12:30:40 +0000</pubDate>
		<dc:creator>hendrikswan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://hendrikswan.wordpress.com/?p=37</guid>
		<description><![CDATA[I spent some time this morning coming up with a nice way for us to test our Linq expression trees against lists when using NHibernate. Who knows, perhaps when I&#8217;m a bit less lazy I&#8217;ll actually post it here&#8230; I thought it was quite an elegant solution and proceeded to show my colleague, who is currently [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=37&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I spent some time this morning coming up with a nice way for us to test our Linq expression trees against lists when using NHibernate. Who knows, perhaps when I&#8217;m a bit less lazy I&#8217;ll actually post it here&#8230;</p>
<p>I thought it was quite an elegant solution and proceeded to show my colleague, who is currently doing a lot of pair programming with me.</p>
<p>My colleague is a bit new to unit testing, mocking and such and immediately exclaimed that it&#8217;s more complicated than the code itself! Well, usually I don&#8217;t take it as a compliment if somebody calls something I came up with &#8220;complicated&#8221;, but in this case I did. The &#8221;complicated&#8221; code is a once off effort, which makes it easier to do unit tests for our repositories in the future. </p>
<p>I think it summarises why I like doing TDD, because you can get your hands dirty with some real comiplicated problems which you need to solve. What developer doesn&#8217;t like a challenge?</p>
<p>Perhaps my colleague&#8217;s reaction explains why a lot of developers don&#8217;t fully embrace TDD, because it&#8217;s sometime a bit hard and you really need to know your way around the CLR to find a solution.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hendrikswan.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hendrikswan.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hendrikswan.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hendrikswan.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hendrikswan.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hendrikswan.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hendrikswan.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hendrikswan.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hendrikswan.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hendrikswan.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hendrikswan.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hendrikswan.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hendrikswan.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hendrikswan.wordpress.com/37/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=37&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hendrikswan.wordpress.com/2010/03/11/unit-tests-more-complicated-than-the-code/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a424e1b0ab3a8dee82c25ae0f0804107?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">hendrikswan</media:title>
		</media:content>
	</item>
		<item>
		<title>Pair programming</title>
		<link>http://hendrikswan.wordpress.com/2010/02/13/pair-programming/</link>
		<comments>http://hendrikswan.wordpress.com/2010/02/13/pair-programming/#comments</comments>
		<pubDate>Sat, 13 Feb 2010 12:25:52 +0000</pubDate>
		<dc:creator>hendrikswan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Agile]]></category>

		<guid isPermaLink="false">http://hendrikswan.wordpress.com/?p=32</guid>
		<description><![CDATA[I&#8217;ve been pair programming on and off for a few years. I enjoy pair programming. At the start, and I&#8217;m sure that almost every developer feels this way initially, I was quite suspicious and lets face it a bit scared. I soon realised though, that my fears were all for nothing and started enjoying it [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=32&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been pair programming on and off for a few years. I enjoy pair programming. At the start, and I&#8217;m sure that almost every developer feels this way initially, I was quite suspicious and lets face it a bit scared. I soon realised though, that my fears were all for nothing and started enjoying it immensely. When pair programming I don&#8217;t have to defend my code to anybody, there is no real need for code reviews and I don&#8217;t get stuck with supporting a module till the day I die, because nobody else understands it.</p>
<p>I&#8217;m always amused when management (also project managers) ask the question: &#8220;But won&#8217;t it take twice as long to go through all your work if you pair program the whole time?&#8221;. I guess when you&#8217;ve seen it working countless times it&#8217;s kind of a shock to realise that some people are still sceptics. I can understand it though, I also posed the same question when I first heard of it.</p>
<p>In my experience it does not take twice as long, but approximately the same time to do the same work. By that I mean that in my experience two pair programmers will go through 20 story points in about the same time as 2 non pair programmers working on their own machines. Reason being, there is no time to read all your email when it comes in, or chat with your wife on google talk, read up on latest technologies, generally just wasting valuable time - that would just be rude! It&#8217;s also more difficult to go off on a tangent, becasue your code partner will prevent that. What&#8217;s more the quality of the code is better, knowledge sharing happens continiously, less bells and whistles come into existence and it&#8217;s exciting!</p>
<p>I guess it&#8217;s not always possible to convince people that it works, but it sure as hell is worth trying.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hendrikswan.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hendrikswan.wordpress.com/32/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hendrikswan.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hendrikswan.wordpress.com/32/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hendrikswan.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hendrikswan.wordpress.com/32/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hendrikswan.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hendrikswan.wordpress.com/32/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hendrikswan.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hendrikswan.wordpress.com/32/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hendrikswan.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hendrikswan.wordpress.com/32/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hendrikswan.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hendrikswan.wordpress.com/32/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=32&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hendrikswan.wordpress.com/2010/02/13/pair-programming/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a424e1b0ab3a8dee82c25ae0f0804107?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">hendrikswan</media:title>
		</media:content>
	</item>
		<item>
		<title>WF4 Workflow loaded from xaml with references to custom activities</title>
		<link>http://hendrikswan.wordpress.com/2010/01/08/wf4-workflow-loaded-from-xaml-with-references-to-custom-activities/</link>
		<comments>http://hendrikswan.wordpress.com/2010/01/08/wf4-workflow-loaded-from-xaml-with-references-to-custom-activities/#comments</comments>
		<pubDate>Fri, 08 Jan 2010 08:48:03 +0000</pubDate>
		<dc:creator>hendrikswan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[WF4]]></category>

		<guid isPermaLink="false">http://hendrikswan.wordpress.com/?p=30</guid>
		<description><![CDATA[I wanted to test loading  a WF4 workflow directly from it&#8217;s Xaml while it references custom activities. I wasted quite a lot of time, because my custom activity was in the same project as both my workflow and the code that invokes it, and it seems that doing this does not work. So if you [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=30&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I wanted to test loading  a WF4 workflow directly from it&#8217;s Xaml while it references custom activities.</p>
<p>I wasted quite a lot of time, because my custom activity was in the same project as both my workflow and the code that invokes it, and it seems that doing this does not work.</p>
<p>So if you need to do this, ensure that you put the activity that you reference from the workflow in a separate activity library project.</p>
<p>You can find more information on the thread which I logged at Microsoft:</p>
<p><a href="http://social.msdn.microsoft.com/Forums/en/wfprerelease/thread/bfbc0c01-7205-4fb4-8b3a-260c9d6db37f" target="_blank">http://social.msdn.microsoft.com/Forums/en/wfprerelease/thread/bfbc0c01-7205-4fb4-8b3a-260c9d6db37f</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hendrikswan.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hendrikswan.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hendrikswan.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hendrikswan.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hendrikswan.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hendrikswan.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hendrikswan.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hendrikswan.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hendrikswan.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hendrikswan.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hendrikswan.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hendrikswan.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hendrikswan.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hendrikswan.wordpress.com/30/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=30&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hendrikswan.wordpress.com/2010/01/08/wf4-workflow-loaded-from-xaml-with-references-to-custom-activities/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a424e1b0ab3a8dee82c25ae0f0804107?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">hendrikswan</media:title>
		</media:content>
	</item>
		<item>
		<title>UITypeEditor scenario in WF4</title>
		<link>http://hendrikswan.wordpress.com/2010/01/07/uitypeeditor-scenario-in-wf4/</link>
		<comments>http://hendrikswan.wordpress.com/2010/01/07/uitypeeditor-scenario-in-wf4/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 07:33:50 +0000</pubDate>
		<dc:creator>hendrikswan</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[WF4]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://hendrikswan.wordpress.com/?p=28</guid>
		<description><![CDATA[When you author custom activities in WF3, you usually need to develop UITypeEditors in order to allow you to show a custom dialog when someone wants to provide a value the activity in the property grid. For example, to allow the person to browse to a file, or something a bit more advanced, like selecting [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=28&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>When you author custom activities in WF3, you usually need to develop <a href="http://msdn.microsoft.com/en-us/library/system.drawing.design.uitypeeditor.aspx">UITypeEditors </a>in order to allow you to show a custom dialog when someone wants to provide a value the activity in the property grid. For example, to allow the person to browse to a file, or something a bit more advanced, like selecting an entity from your system.</p>
<p>This is surprisingly easy to do, even if you have just a rudimentary understanding of winforms.</p>
<p>I found it a bit challenging to start doing stuff like this in WF4, because just as you need to understand winforms a bit in order to author custom activities in WF3, you need to understand WPF to do the same in WF4.</p>
<p>I&#8217;ve never really worked with WPF, except for hacking a Silverlight uploader to do exactly what I want&#8230;</p>
<p>But luckily WF4 has forced me to look into this interesting technology.</p>
<p>Anyhoo, back to the issue at hand. In order to do the same in WF4 as you would achieve with <a href="http://msdn.microsoft.com/en-us/library/system.drawing.design.uitypeeditor.aspx">UITypeEditors </a>in WF3, just download the samples from: <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=35ec8682-d5fd-4bc3-a51a-d8ad115a8792&amp;displaylang=en">http://www.microsoft.com/downloads/details.aspx?FamilyID=35ec8682-d5fd-4bc3-a51a-d8ad115a8792&amp;displaylang=en</a> and have a look at the following sample: \WF_WCF_Samples\WF\Basic\Designer\PropertyGridExtensibility.</p>
<p>This is also a nice walkthrough on how to do this in WPF: <a href="http://msdn.microsoft.com/en-us/library/bb546930.aspx">http://msdn.microsoft.com/en-us/library/bb546930.aspx</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hendrikswan.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hendrikswan.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hendrikswan.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hendrikswan.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hendrikswan.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hendrikswan.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hendrikswan.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hendrikswan.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hendrikswan.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hendrikswan.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hendrikswan.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hendrikswan.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hendrikswan.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hendrikswan.wordpress.com/28/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=28&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hendrikswan.wordpress.com/2010/01/07/uitypeeditor-scenario-in-wf4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a424e1b0ab3a8dee82c25ae0f0804107?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">hendrikswan</media:title>
		</media:content>
	</item>
		<item>
		<title>Rhino Mocks: Anonymous method for Do Handler</title>
		<link>http://hendrikswan.wordpress.com/2009/11/26/rhino-mocks-anonymous-method-for-do-handler/</link>
		<comments>http://hendrikswan.wordpress.com/2009/11/26/rhino-mocks-anonymous-method-for-do-handler/#comments</comments>
		<pubDate>Thu, 26 Nov 2009 08:08:02 +0000</pubDate>
		<dc:creator>hendrikswan</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[RhinoMocks]]></category>
		<category><![CDATA[TDD]]></category>
		<category><![CDATA[WindowsWorkflow]]></category>

		<guid isPermaLink="false">http://hendrikswan.wordpress.com/?p=20</guid>
		<description><![CDATA[I haven&#8217;t been doing a lot of unit tests lately &#8211; gasp! I&#8217;ve been doing a LOT of Javascript sorta stuff in the last year, which has been interesting for a change, but I&#8217;m really happy it&#8217;s over now. I&#8217;m back to doing proper development, and I forgot how to use an anonymous method for [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=20&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I haven&#8217;t been doing a lot of unit tests lately &#8211; gasp! I&#8217;ve been doing a LOT of Javascript sorta stuff in the last year, which has been interesting for a change, but I&#8217;m really happy it&#8217;s over now.</p>
<p>I&#8217;m back to doing proper development, and I forgot how to use an anonymous method for a Do() handler!</p>
<p>Luckily I quickly stumbled on to this post by Igor Brejc: <a href="http://igorbrejc.net/development/c/rhinomocks-do-handler-using-anonymous-delegates" target="_blank">http://igorbrejc.net/development/c/rhinomocks-do-handler-using-anonymous-delegates.</a></p>
<p>I wanted to do something when a wrapper I developed for the <a href="http://msdn.microsoft.com/en-us/library/system.workflow.runtime.workflowruntime.aspx" target="_blank">WorkflowRuntime</a> class adds the <a href="http://msdn.microsoft.com/en-us/library/ms735872.aspx" target="_blank">ExternalDataExchange</a> service to the runtime, so I ended up with something like this in my test:</p>
<p><pre class="brush: csharp;">                Expect.Call(() =&gt; mockWorkflowRuntime.AddService(null))
                    .IgnoreArguments()
                    .Constraints(Is.TypeOf(typeof (ExternalDataExchangeService)))
                    .Do((Action&lt;ExternalDataExchangeService&gt;)delegate(ExternalDataExchangeService service)
                                     {
                                         //do my stuff here
                                     });</pre></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hendrikswan.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hendrikswan.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hendrikswan.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hendrikswan.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hendrikswan.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hendrikswan.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hendrikswan.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hendrikswan.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hendrikswan.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hendrikswan.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hendrikswan.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hendrikswan.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hendrikswan.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hendrikswan.wordpress.com/20/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=20&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hendrikswan.wordpress.com/2009/11/26/rhino-mocks-anonymous-method-for-do-handler/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a424e1b0ab3a8dee82c25ae0f0804107?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">hendrikswan</media:title>
		</media:content>
	</item>
		<item>
		<title>Custom editors for Windows workflow activity properties</title>
		<link>http://hendrikswan.wordpress.com/2009/11/26/custom-editors-for-windows-workflow-activity-properties/</link>
		<comments>http://hendrikswan.wordpress.com/2009/11/26/custom-editors-for-windows-workflow-activity-properties/#comments</comments>
		<pubDate>Thu, 26 Nov 2009 06:51:03 +0000</pubDate>
		<dc:creator>hendrikswan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[WindowsWorkflow]]></category>

		<guid isPermaLink="false">http://hendrikswan.wordpress.com/?p=17</guid>
		<description><![CDATA[I&#8217;m working on a real nifty project where I&#8217;m developing a workflow server for automation purposes. We&#8217;re using WF3 for it, and I must admit I&#8217;m enjoying it a lot. I haven&#8217;t worked with it since start the start of 2007, so it&#8217;s nice getting back to it. I&#8217;ve forgotten a lot of the nitty [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=17&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m working on a real nifty project where I&#8217;m developing a workflow server for automation purposes. We&#8217;re using WF3 for it, and I must admit I&#8217;m enjoying it a lot. I haven&#8217;t worked with it since start the start of 2007, so it&#8217;s nice getting back to it.</p>
<p>I&#8217;ve forgotten a lot of the nitty gritty stuff, so I get to learn some stuff over again <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>When developing custom activities for WF, you obviously want to allow the person who&#8217;s going to use the activities in the end to easily provide values for any properties that the activity might have. For example, if your activity needs a path to a directory, you can leave it as a string and expect the person to type in the path, but this is prone to error. It&#8217;s much better to provide the user with a dialog to select a folder, isn&#8217;t it? In comes UITypeEditor&#8230;</p>
<p>I remembered that I&#8217;ve done it several times, but hey 2.5 years is a looong time in which to forget stuff like this.. Luckily I found a real nice example on how to do this in this post by Tomas Restrepo: <a href="http://winterdom.com/2006/08/acustomuitypeeditorforactivityproperties/comment-page-1" target="_blank">http://winterdom.com/2006/08/acustomuitypeeditorforactivityproperties/comment-page-1</a>.</p>
<div id="_mcePaste" style="overflow:hidden;position:absolute;left:-10000px;top:0;width:1px;height:1px;">
<h1>UITypeEditor</h1>
</div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hendrikswan.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hendrikswan.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hendrikswan.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hendrikswan.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hendrikswan.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hendrikswan.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hendrikswan.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hendrikswan.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hendrikswan.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hendrikswan.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hendrikswan.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hendrikswan.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hendrikswan.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hendrikswan.wordpress.com/17/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=17&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hendrikswan.wordpress.com/2009/11/26/custom-editors-for-windows-workflow-activity-properties/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a424e1b0ab3a8dee82c25ae0f0804107?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">hendrikswan</media:title>
		</media:content>
	</item>
		<item>
		<title>Bulk Yui compressor script</title>
		<link>http://hendrikswan.wordpress.com/2009/06/05/bulk-yui-compressor-script/</link>
		<comments>http://hendrikswan.wordpress.com/2009/06/05/bulk-yui-compressor-script/#comments</comments>
		<pubDate>Fri, 05 Jun 2009 07:42:17 +0000</pubDate>
		<dc:creator>hendrikswan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[YUI]]></category>

		<guid isPermaLink="false">http://hendrikswan.wordpress.com/?p=8</guid>
		<description><![CDATA[We&#8217;ve been using JSMin for our JavaScript minification purposes. As I&#8217;m currently tasked to improve our website&#8217;s initial loading performance by more than 50%, I started looking at also minifiying CSS files. I read up on Yui Compressor, because it allows you to minify CSS. I read that it also results in smaller JS minified [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=8&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve been using <a title="JsMin" href="http://www.crockford.com/javascript/jsmin.html" target="_blank">JSMin </a>for our JavaScript minification purposes.</p>
<p>As I&#8217;m currently tasked to improve our website&#8217;s initial loading performance by more than 50%, I started looking at also minifiying CSS files.</p>
<p>I read up on <a title="Yui Compressor" href="http://developer.yahoo.com/yui/compressor/" target="_blank">Yui Compressor</a>, because it allows you to minify CSS. I read that it also results in smaller JS minified files than other minification strategies, and gave it a go on our JS files. I wasn&#8217;t disappointed, it gave us 10% reduction in size than with <a title="JsMin" href="http://www.crockford.com/javascript/jsmin.html" target="_blank">JSMin</a>.  </p>
<p>Seeing that we&#8217;ve got a hell of a lot of JS libraries in our site, I came up with a strategy to bulk minify all our JS files in one go as part of our build process.</p>
<p>I&#8217;ve been burning to do some <a title="PowerShell" href="http://www.microsoft.com/technet/scriptcenter/hubs/msh.mspx" target="_blank">PowerShell</a>scripting again, so I developed a script which minifies all our JS and CSS files. You&#8217;ll have to be familiar with <a title="PowerShell" href="http://www.microsoft.com/technet/scriptcenter/hubs/msh.mspx" target="_blank">PowerShell</a>, and if you aren&#8217;t why not?! You&#8217;ll also have to change the paths to match your environment.</p>
<p>$yuiPath = &#8220;..\lib\Repository\YahooUI\yuicompressor-2.4.2\build\yuicompressor-2.4.2.jar&#8221;</p>
<p>$scriptFiles = Get-ChildItem &#8220;..\OlrWebApp2\scripts&#8221; -r<br />
foreach($file in $scriptFiles)<br />
{<br />
    Write-Host(&#8220;MINIMIZING &#8221; + $file.fullname)<br />
    $targetFile = $file.fullname -replace(&#8220;.js&#8221;, &#8220;_min.js&#8221;);<br />
    java -jar $yuiPath $file.fullname -o $targetFile<br />
}</p>
<p>$stylesheets = Get-ChildItem &#8220;..\OlrWebApp2\Branding\cpu&#8221; -r -include *.css<br />
foreach($file in $stylesheets)<br />
{<br />
    Write-Host(&#8220;MINIMIZING &#8221; + $file.fullname)<br />
    $targetFile = $file.fullname -replace(&#8220;.css&#8221;, &#8220;_min.css&#8221;);<br />
    java -jar $yuiPath $file.fullname -o $targetFile<br />
}</p>
<p>Write-Host(&#8220;Done&#8221;)<br />
$null = $host.UI.RawUI.ReadKey(&#8220;NoEcho,IncludeKeyDown&#8221;)</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hendrikswan.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hendrikswan.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hendrikswan.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hendrikswan.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hendrikswan.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hendrikswan.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hendrikswan.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hendrikswan.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hendrikswan.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hendrikswan.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hendrikswan.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hendrikswan.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hendrikswan.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hendrikswan.wordpress.com/8/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=8&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hendrikswan.wordpress.com/2009/06/05/bulk-yui-compressor-script/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a424e1b0ab3a8dee82c25ae0f0804107?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">hendrikswan</media:title>
		</media:content>
	</item>
		<item>
		<title>jQuery 1.3 intellisense</title>
		<link>http://hendrikswan.wordpress.com/2009/05/19/jquery-1-3-intellisense/</link>
		<comments>http://hendrikswan.wordpress.com/2009/05/19/jquery-1-3-intellisense/#comments</comments>
		<pubDate>Tue, 19 May 2009 09:29:04 +0000</pubDate>
		<dc:creator>hendrikswan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Gui]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Performance]]></category>

		<guid isPermaLink="false">http://hendrikswan.wordpress.com/?p=5</guid>
		<description><![CDATA[Jeez! Seems like I&#8217;m doing a lot of JavaScript these days&#8230; I&#8217;m working on an existing site at my company (developed before I joined), and I&#8217;ve managed to set up some work for myself to improve the site&#8217;s performance and design. I&#8217;ve been wanting to do it for quite a while! My plan is to remove [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=5&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Jeez! Seems like I&#8217;m doing a lot of JavaScript these days&#8230;</p>
<p>I&#8217;m working on an existing site at my company (developed before I joined), and I&#8217;ve managed to set up some work for myself to improve the site&#8217;s performance and design. I&#8217;ve been wanting to do it for quite a while! My plan is to remove Asp.net ajax and replace it with jQuery. I&#8217;m also going to be doing some JS and CSS file combining using a .ashx handler (code is 90% finished) &#8211; will post it when ready. Maybe once I&#8217;ve proven that it works well, I can convince them to can Asp.net web forms and use Asp.net MVC instead, so that we can increase our unit testing code coverage.  </p>
<p>I&#8217;m busy doing some funky stuff using jQuery, and remembered that I&#8217;m supposed to have intellisense. I&#8217;m using jQuery 1.3.2, and found this link on enabling intellisense for it (seeing that it used to be supported in 1.2.6).</p>
<p><a href="http://blogs.ipona.com/james/archive/2009/01/14/jquery-1.3-and-visual-studio-2008-intellisense.aspx">http://blogs.ipona.com/james/archive/2009/01/14/jquery-1.3-and-visual-studio-2008-intellisense.aspx</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hendrikswan.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hendrikswan.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hendrikswan.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hendrikswan.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hendrikswan.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hendrikswan.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hendrikswan.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hendrikswan.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hendrikswan.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hendrikswan.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hendrikswan.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hendrikswan.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hendrikswan.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hendrikswan.wordpress.com/5/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=5&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hendrikswan.wordpress.com/2009/05/19/jquery-1-3-intellisense/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a424e1b0ab3a8dee82c25ae0f0804107?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">hendrikswan</media:title>
		</media:content>
	</item>
		<item>
		<title>Nice JavaScript Article</title>
		<link>http://hendrikswan.wordpress.com/2009/05/11/nice-javascript-article/</link>
		<comments>http://hendrikswan.wordpress.com/2009/05/11/nice-javascript-article/#comments</comments>
		<pubDate>Mon, 11 May 2009 08:09:37 +0000</pubDate>
		<dc:creator>hendrikswan</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[JavaScript]]></category>

		<guid isPermaLink="false">http://hendrikswan.wordpress.com/?p=3</guid>
		<description><![CDATA[I found this &#8220;Functional Javascript&#8221; article especially useful. I stumbled onto it looking for a way to pass a functions arguments to a function pointer as arguments, instead of an array. I was looking for this is because I&#8217;m working on a JavaScript &#8220;event broker&#8221;. I found some solutions on the web (mostly called custom [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=3&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I found <a href="http://www.hunlock.com/blogs/Functional_Javascript">this &#8220;Functional Javascript&#8221; article</a> especially useful.</p>
<p>I stumbled onto it looking for a way to pass a functions arguments to a function pointer as arguments, instead of an array.</p>
<p>I was looking for this is because I&#8217;m working on a JavaScript &#8220;event broker&#8221;. I found some solutions on the web (mostly called custom events), but none of them worked exactly how I want it to.</p>
<p>More on the event broker a bit later <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hendrikswan.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hendrikswan.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hendrikswan.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hendrikswan.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hendrikswan.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hendrikswan.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hendrikswan.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hendrikswan.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hendrikswan.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hendrikswan.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hendrikswan.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hendrikswan.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hendrikswan.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hendrikswan.wordpress.com/3/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hendrikswan.wordpress.com&amp;blog=7701649&amp;post=3&amp;subd=hendrikswan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hendrikswan.wordpress.com/2009/05/11/nice-javascript-article/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a424e1b0ab3a8dee82c25ae0f0804107?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">hendrikswan</media:title>
		</media:content>
	</item>
	</channel>
</rss>
