<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
 
 <title>Ben Taylor</title>
 <link href="http://bentaylor.org/atom.xml" rel="self"/>
 <link href="http://bentaylor.org/"/>
 <updated>2011-12-28T16:02:53+00:00</updated>
 <id>http://bentaylor.org/</id>
 <author>
   <name>Ben Taylor</name>
   <email>webmaster@bentaylor.org</email>
 </author>

 
 <entry>
   <title>Apple Keyboard Mapping and Windows Style Function Keys on Windows 7 x64</title>
   <link href="http://bentaylor.org/apple-keyboard-mapping-and-windows-style-function-keys-on-windows-7-x64"/>
   <updated>2011-12-28T00:00:00+00:00</updated>
   <id>http://bentaylor.org/apple-keyboard-mapping-and-windows-style-function-keys-on-windows-7-x64</id>
   <content type="html">&lt;h2 id='work_on_windows_you_pesky_apple_keyboard'&gt;Work on Windows you pesky Apple keyboard!&lt;/h2&gt;

&lt;p&gt;I develop with .NET, but have a MacBook Pro and use Bootcamp. Now I want an Apple keyboard on all my Windows boxes. It&amp;#8217;s not for love of their keyboards, it&amp;#8217;s for consistency.&lt;/p&gt;

&lt;p&gt;This should be simple right? We&amp;#8217;ll it&amp;#8217;s not. Here are my learnings to date.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Important: This works for me on x64 Windows 7. I have not tried x86.&lt;/strong&gt;&lt;/p&gt;

&lt;h2 id='install_the_bootcamp_windows_drivers'&gt;Install the Bootcamp Windows drivers&lt;/h2&gt;

&lt;p&gt;Install the Bootcamp Windows drivers to make all the keys work correctly.&lt;/p&gt;

&lt;p&gt;I did the following:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Get an OSX install DVD that includes Bootcamp. &lt;em&gt;AFAIK you can&amp;#8217;t download this from Apple and the Bootcamp updates on the Apple website DO NOT WORK.&lt;/em&gt;&lt;/li&gt;

&lt;li&gt;Pop the DVD in your Windows machine drive and run Drive:\Boot Camp\Drivers\Apple\x64\AppleKeyboardInstaller64.exe&lt;/li&gt;

&lt;li&gt;You should be good to go! (you may need a reboot).&lt;/li&gt;
&lt;/ol&gt;

&lt;h2 id='toggle_the_function_keys_optional'&gt;Toggle the Function Keys (Optional)&lt;/h2&gt;

&lt;p&gt;The Bootcamp driver defaults the Function Keys (F1, F2 etc) to their Apple alternatives (e.g. brightness up/down, volume up/down etc). If you want good old F1 and friends, edit the registry as follows:&lt;/p&gt;

&lt;p&gt;Change the value of the following two keys from 01 to 00 (via &lt;a href='http://geekhack.org/showthread.php?24489-Apple-Keyboard-driver-for-Win7-64Bit-(non-macs'&gt;GeekHack&lt;/a&gt;))&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\KeyMagic\OSXFnBehavior&lt;/li&gt;

&lt;li&gt;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\KeyMagic\OSXFnBehavior&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Happy tapping.&lt;/strong&gt;&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Migrating from DasBlog to Jekyll</title>
   <link href="http://bentaylor.org/migrating-from-dasblog-to-jekyll"/>
   <updated>2010-11-15T00:00:00+00:00</updated>
   <id>http://bentaylor.org/migrating-from-dasblog-to-jekyll</id>
   <content type="html">&lt;blockquote&gt;
&lt;p&gt;If you&amp;#8217;re reading this, I&amp;#8217;ve successfully migrated bentaylor.org from &lt;a href='http://dasblog.codeplex.com/'&gt;DasBlog&lt;/a&gt; to &lt;a href='https://github.com/mojombo/jekyll'&gt;Jekyll&lt;/a&gt;. From a paid &lt;a href='http://www.powervps.com/'&gt;Power VPS&lt;/a&gt; virtual server, to the free &lt;a href='http://heroku.com/'&gt;Heroku&lt;/a&gt; offering.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2 id='why_move_off_dasblog'&gt;Why move off DasBlog?&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Mainly for the learning experience&lt;/strong&gt;. I&amp;#8217;m trying to add Ruby, Git and Heroku to my programmers toolbelt. Jekyll is written in Ruby and the sites it generates can be hosted on Heroku using &lt;a href='https://github.com/bry4n/rack-jekyll'&gt;rack-jekyll&lt;/a&gt;. Heroku deployments are managed via Git. I get to learn about all these things doing something that is real-world but also simple and unimportant.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;WYSIWYG weaning&lt;/strong&gt;. Jekyll does not have a WYSIWG post editor. This is a good thing. I am trying to learn &lt;a href='http://www.vim.org/'&gt;Vim&lt;/a&gt;, so the more time I spend writing code and posts in Vim the better. Plus, I like the simplicity and control you have (I am writing this post in Markdown but you can mix and match HTML etc).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&amp;#8220;Static content is web scale&amp;#8221;&lt;/strong&gt;. Somebody wrote that on Twitter the other day and it resonates with me. In my job building e-commerce stores I think a lot about static content. Mainly about how it is underused (the subject for another post). The point is that Jekyll generates a static site for you. At a stroke it eliminates concerns over sketchy code bringing your site down. This is not an issue with DasBlog, it is just something I want to experiment with.&lt;/p&gt;

&lt;h2 id='migrating_my_dasblog_posts_using_dasjekyll'&gt;Migrating my DasBlog posts using DasJekyll&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Migration. I wrote an app for that&lt;/strong&gt;. It&amp;#8217;s called DasJekyll and it is currently nestling in a private GitHub repository. If you want this application add a comment below. I have not made it public as it has a bunch of hardcoded private stuff in it. If anyone wants it, I&amp;#8217;ll clean that out and make the repos public.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;It does NOT migrate comments&lt;/strong&gt;. I did not have enough comments to warrant the effort. Plus, I&amp;#8217;ve moved to using &lt;a href='http://disqus.com/'&gt;DISQUS&lt;/a&gt; for comments. I think they can take comment migrations in a spreadsheet, but&amp;#8230;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;It does move all your posts&lt;/strong&gt;. DasJekyll creates a single html post for each DasBlog post you made. It also converts the DasBlog metadata (like categories, description etc) to the Jekyll &lt;a href='http://www.yaml.org/'&gt;YAML&lt;/a&gt; front matter (BTW we need more YAML in .NET land but there does not seem to be a complete parser/serialiser yet).&lt;/p&gt;

&lt;h2 id='supporting_extisting_post_urls'&gt;Supporting extisting post URLs&lt;/h2&gt;

&lt;p&gt;The DasBlog post URLs all ended with &lt;code&gt;.aspx&lt;/code&gt;. Thanks to &lt;a href='https://github.com/jtrupiano/rack-rewrite'&gt;rack-rewrite&lt;/a&gt;, my new post URLs are extensionless and without a terminating directory slash. However, like all good web professionals, I have used rack-rewrite to 301 permanent redirect the &lt;code&gt;.aspx&lt;/code&gt; urls to their extensionless equivalents.&lt;/p&gt;

&lt;h2 id='ill_get_back_to_you_about_jekyll'&gt;I&amp;#8217;ll get back to you about Jekyll&lt;/h2&gt;

&lt;p&gt;This move is an experiment and learning experience. While it seems like a good idea right now, the proof will be in a few months time. Will it encourage more blogging and deliver a better experience for me? We will see.&lt;/p&gt;

&lt;p&gt;BTW - I&amp;#8217;m not the only person to have migrated from DasBlog to Jekyll. @theprogrammer also made the move and has written &lt;a href='http://blog.dynamicprogrammer.com/2010/09/02/migrating-the-blog-from-dasblog-to-jekyll.html'&gt;Migrating the blog from dasBlog to jekyll&lt;/a&gt;.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Notes from an Autofac Upgrade (1.4 -  2.2)</title>
   <link href="http://bentaylor.org/notes-from-an-autofac-upgrade-14-22"/>
   <updated>2010-06-27T00:00:00+01:00</updated>
   <id>http://bentaylor.org/Notes-From-An-Autofac-Upgrade-14-22</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;http://code.google.com/p/autofac/&quot;&gt;Autofac&lt;/a&gt; is an simple, elegant and powerful &lt;a href=&quot;http://martinfowler.com/articles/injection.html&quot;&gt;IoC&lt;/a&gt; container written by &lt;a href=&quot;http://nblumhardt.com/&quot;&gt;Nicholas Blumhardt&lt;/a&gt;, &lt;a href=&quot;http://abdullin.com/&quot;&gt;Rinat Abdullin&lt;/a&gt; and &lt;a href=&quot;http://code.google.com/p/autofac/people/list&quot;&gt;friends&lt;/a&gt;.&amp;#160; Version 1 was release in early 2008 and version 2 was released earlier this year with many &lt;a href=&quot;http://nblumhardt.com/2010/04/introducing-autofac-2-1-rtw/&quot;&gt;new&lt;/a&gt; &lt;a href=&quot;http://nblumhardt.com/2010/05/autofac-2-2-released/&quot;&gt;features&lt;/a&gt;.&amp;#160; and If you are looking for an IoC container, I highly recommend it.&lt;/p&gt;  &lt;p&gt;Autofac underwent some fairly significant surgery as part of the 2.x release in order to “simplify and streamline” usage.&amp;#160; The Autofac wiki lists the &lt;a href=&quot;http://code.google.com/p/autofac/wiki/NewInV2&quot;&gt;key changes for upgrading users&lt;/a&gt;.&amp;#160; Recently, I migrated a project from Autofac 1.4 to Autofac 2.2.&amp;#160; The changes were done in less than a day and so far we’ve not had any issues.&amp;#160; What follows are my “real world” notes on the changes I made.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Changes Related to the Core Autofac Bits&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Updated component registration lifetime calls (see &lt;a href=&quot;http://code.google.com/p/autofac/wiki/NewInV2#New_Lifetime/Sharing_Terminology&quot;&gt;New Lifetime/Sharing Terminology&lt;/a&gt;):       &lt;ul&gt;       &lt;li&gt;FactoryScoped() to InstancePerDependency() &lt;/li&gt;        &lt;li&gt;ContainerScoped() to InstancePerLifetimeScope() &lt;/li&gt;        &lt;li&gt;SingletonScoped() to SingleInstance() &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Updated using statements for Module usages.&amp;#160; Module has moved from from Autofac.Builder to Autofac (see &lt;a href=&quot;http://code.google.com/p/autofac/wiki/NewInV2#Namespace_Changes&quot;&gt;Namespace Changes&lt;/a&gt;). &lt;/li&gt;    &lt;li&gt;We were using the ComponentActivator delegate type in some custom extension method declarations.&amp;#160; We have changed these to Func&amp;lt;IComponentContext, TWeAreCreating&amp;gt; as the new Register overloads take this or a Func&amp;lt;IComponentContext, IEnumerable&amp;lt;Parameter&amp;gt;, TWeAreCreating&amp;gt;. &lt;/li&gt;    &lt;li&gt;Updated component registrations that require property injection.      &lt;br /&gt;From this:       &lt;br /&gt;...As&amp;lt;IFoo&amp;gt;.OnActivating(ActivatingHandler.InjectProperties)       &lt;br /&gt;To this:       &lt;br /&gt;...As&amp;lt;IFoo&amp;gt;.PropertiesAutowired(false)//false for no circular dependency. &lt;/li&gt;    &lt;li&gt;The Register methods now only accept delegates.&amp;#160; If you want to register an instance you need to use RegisterInstance.&amp;#160; While migrating to Autofac 2.2 this change highlighted at least one incorrect registration (see &lt;a href=&quot;http://code.google.com/p/autofac/wiki/NewInV2#Separation_of_Registration_Overloads&quot;&gt;Separation of Registration Overloads&lt;/a&gt;). &lt;/li&gt;    &lt;li&gt;Removed calls to .MemberOf&amp;lt;IEnumerable&amp;lt;TWhatever&amp;gt;&amp;gt;() as resolving collections is supported by default (I know we could have registered the collection module in 1.x but we discovered a defect in it which Nick confirmed).&amp;#160; See &lt;a href=&quot;http://code.google.com/p/autofac/wiki/NewInV2#Modules_Included_by_Default&quot;&gt;Collection Support (“Resolve All”)&lt;/a&gt;.       &lt;ul&gt;       &lt;li&gt;Removed custom extension methods for registering collections (.RegisterCollection&amp;lt;IFoo&amp;gt;) to using default collection behaviour. &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Updated OnActivating calls arg from EventHandler&amp;lt;ActivatingEventArgs&amp;gt; to Action&amp;lt;IActivatingEventArgs&amp;lt;TFoo&amp;gt;&amp;gt;. &lt;/li&gt;    &lt;li&gt;Named(&amp;quot;RegistrationName&amp;quot;) had been replaced by Named&amp;lt;T&amp;gt;(&amp;quot;RegistrationName&amp;quot;) as naming now requires type information too (see &lt;a href=&quot;http://code.google.com/p/autofac/wiki/NewInV2#Changes_to_Named_Services&quot;&gt;Changes to Named Services&lt;/a&gt;). &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Changes Related to the Contrib and Integration Bits&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;AutofacContrib.CommonServiceLocator&lt;/strong&gt; - For some reason (I did it, but can't remember why) we had the source for AutofacServiceLocator in our project (this is an Autofac implementation of ServiceLocatorImplBase from the CommonServiceLocator project).&amp;#160; Deleted this (nice!) and added a reference to AutofacContrib.CommonServiceLocator.dll (taken from AutofacContrib).&amp;#160; Updated the construtor calls with RequestLifetime. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;AutofacContrib.Moq&lt;/strong&gt; - Removed our AutoMockContainer implementation and moved to the AutoMock implementation in the Autofac.Contrib assembly AutofacContrib.Moq.dll.       &lt;br /&gt;&lt;em&gt;NOTE:&amp;#160; We had a lot of test dependencies on AutoMockContainer and the AutoMock type is quite different.&amp;#160; We found it easier to create an Adapter called AutoMockContainer that adapted AutoMock.&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Autofac.Integration.Web&lt;/strong&gt; - The member IContainer IContainerProvider.RequestContainer has been replaced with ILifetimeScope IContainerProvider.RequestLifetime.&amp;#160; See the &amp;quot;Lifetime and Scope&amp;quot; section. &lt;/li&gt; &lt;/ul&gt;
</content>
 </entry>
 
 <entry>
   <title>LineItem PlacedPrice (cy_placed_price) 101</title>
   <link href="http://bentaylor.org/lineitem-placedprice-cyplacedprice-101"/>
   <updated>2009-07-02T00:00:00+01:00</updated>
   <id>http://bentaylor.org/LineItem-PlacedPrice-Cyplacedprice-101</id>
   <content type="html">&lt;p&gt;&lt;strong&gt;PlacedPrice&lt;/strong&gt; is a property of a basket line item in the Commerce Server object model.&amp;#160; The name suggests (IMO) that it contains the&lt;em&gt; &lt;/em&gt;price of the item &lt;em&gt;at the time the order was placed.&amp;#160; &lt;/em&gt;However, PlacedPrice actually contains the list price of the item &lt;em&gt;at the time it was placed in the basket.&amp;#160; &lt;/em&gt;The property exists to track the list price of an item, so that if it changes during the lifetime of the basket the customer can be informed (if required).&lt;/p&gt;  &lt;h2&gt;How is the Placed Price Populated?&lt;/h2&gt;  &lt;p&gt;The PlacedPrice property is populated after you run a pipeline that contains the component &lt;strong&gt;RequiredItemAdjustPriceCy.&amp;#160; &lt;/strong&gt;Pipeline components operate on IDictionary types rather than the CS object model.&amp;#160; Therefore, the RequiredItemAdjustPriceCy actually populates the &lt;strong&gt;cy_placed_price&lt;/strong&gt; value of each line item dictionary.&amp;#160; If cy_placed_price is empty the value of &lt;strong&gt;cy_iadjust_current_price &lt;/strong&gt;is copied into it.&amp;#160; Once you save the basket with populated cy_placed_price values the value is left untouched on future runs.&amp;#160; &lt;/p&gt;  &lt;p&gt;RequiredItemAdjustPriceCy is configured in the the basket.pcf pipeline that is provided with the Starter Site and the other installed PUP sites.&amp;#160; Therefore, it is likely you have this component configure in your site.&amp;#160; The image below shows the component and describes it’s PlacedPrice behaviour:&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/WhatisalineitemsPlacedPrice_12F51/Commerce-Server-Basket-Pipeline-With-RequiredItemAdjustPriceCy_2.png&quot;&gt;&lt;img title=&quot;Image of a Commerce Server basket pipeline with the RequiredItemAdjustPriceCy component highlighted and an explanation of how this component populates the cy_placed_price property of a line item dictionary.&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;728&quot; alt=&quot;Image of a Commerce Server basket pipeline with the RequiredItemAdjustPriceCy component highlighted and an explanation of how this component populates the cy_placed_price property of a line item dictionary.&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/WhatisalineitemsPlacedPrice_12F51/Commerce-Server-Basket-Pipeline-With-RequiredItemAdjustPriceCy_thumb.png&quot; width=&quot;698&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;The description text on this image is taken from the documentation for &lt;a href=&quot;http://msdn.microsoft.com/en-us/library/ms915229.aspx&quot;&gt;RequiredItemAdjustPriceCy&lt;/a&gt;.&amp;#160; Below are other excerpts relating to PlacedPrice taken from the &lt;a href=&quot;http://msdn.microsoft.com/en-us/library/ms864793.aspx&quot;&gt;Commerce Server 2007 documentation&lt;/a&gt;.&lt;/p&gt;  &lt;h2&gt;Additional Commerce Server Documentation on PlacePrice&lt;/h2&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://msdn.microsoft.com/en-us/library/microsoft.commerceserver.runtime.orders.lineitem.placedprice.aspx&quot;&gt;LineItem.PlacedPrice Property documentation&lt;/a&gt;:       &lt;br /&gt;”Gets or sets the unit price of the line item at the time it was added to an order group.” &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://msdn.microsoft.com/en-us/library/bb520922.aspx&quot;&gt;LineItems Table documentation&lt;/a&gt;:       &lt;br /&gt;”The unit price of the line item at the time that it was added to the order group.” &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://msdn.microsoft.com/en-us/library/ms915229.aspx&quot;&gt;RequiredItemAdjustPriceCy&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;</content>
 </entry>
 
 <entry>
   <title>OrderDiscount Writes discount_timestamp Properties Into The Future?</title>
   <link href="http://bentaylor.org/orderdiscount-writes-discounttimestamp-properties-into-the-future"/>
   <updated>2009-03-10T00:00:00+00:00</updated>
   <id>http://bentaylor.org/OrderDiscount-Writes-Discounttimestamp-Properties-Into-The-Future</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServerdiscount_timestampCuriosit_11F18/back-to-the-future-film-poster_2.jpg&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;260&quot; alt=&quot;back-to-the-future-film-poster&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServerdiscount_timestampCuriosit_11F18/back-to-the-future-film-poster_thumb.jpg&quot; width=&quot;196&quot; align=&quot;right&quot; border=&quot;0&quot;&gt;&lt;/a&gt; The Commerce Server &lt;a href=&quot;http://msdn.microsoft.com/en-us/library/ms960086.aspx&quot;&gt;OrderDiscount pipeline component&lt;/a&gt; writes applicable discount information into the Order dictionary.&amp;nbsp; Specifically, it writes discount information into the &lt;em&gt;item._itemlevel_discounts_applied&amp;nbsp; &lt;/em&gt;SimpleList&lt;em&gt; &lt;/em&gt;and the &lt;em&gt;_orderlevel_discounts_detail &lt;/em&gt;Dictionary/SimpleList.&amp;nbsp; The written information includes the property &lt;em&gt;discount_timestamp&lt;/em&gt; which contains the last modified DateTime for the discount.&amp;nbsp; &lt;strong&gt;Curiously, it would appear that the values placed in these &lt;em&gt;discount_timestamp&lt;/em&gt; properties are always one second later than the &lt;em&gt;actual&lt;/em&gt; last modified DateTime value&lt;/strong&gt;.&amp;nbsp; The correct value can be found in the &lt;em&gt;dt_campaignitem_modified &lt;/em&gt;column of the &lt;em&gt;mktg_campaign_item&lt;/em&gt; table (where the discounts and other campaign items are stored).&lt;/p&gt; &lt;p&gt;Is this a hack of some sort?&amp;nbsp; A mistake on my part?&amp;nbsp; A bug?&amp;nbsp; I have not done a detailed investigation (as that would be sad) so I don't really know the answer.&lt;/p&gt; &lt;p&gt;&lt;em&gt;Filed under Commerce Server minutiae.&amp;nbsp; Do not read when operating heavy machinery as may cause drowsiness.&lt;/em&gt;&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Fix: Microsoft File Transfer Manager Keeps Downloading Old Cancelled Entries</title>
   <link href="http://bentaylor.org/fix-microsoft-file-transfer-manager-keeps-downloading-old-cancelled-entries"/>
   <updated>2009-02-19T00:00:00+00:00</updated>
   <id>http://bentaylor.org/Fix-Microsoft-File-Transfer-Manager-Keeps-Downloading-Old-Cancelled-Entries</id>
   <content type="html">&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/FixMicrosoftFileTransferManagerKeepsDown_AC81/microsoft-file-transfer-manager_2.png&quot;&gt;&lt;img style=&quot;border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px&quot; height=&quot;310&quot; alt=&quot;Microsoft File Transfer Manager screen shot&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/FixMicrosoftFileTransferManagerKeepsDown_AC81/microsoft-file-transfer-manager_thumb.png&quot; width=&quot;404&quot; align=&quot;right&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;The Problem:&amp;#160; &lt;/strong&gt;A few months back I had some issues downloading files from Microsoft Connect and MSDN Subscriber Downloads.&amp;#160; Ever since then, the Microsoft File Transfer Manager (FTM) has been acting crazy.&amp;#160; &lt;strong&gt;It retains entries to previous successful and cancelled downloads and attempts to re-download them (unsuccessfully) every time I try and download something new.&lt;/strong&gt;&amp;#160; Cancelling these entries repeatedly does not make any difference.&amp;#160; They keep reappearing.&amp;#160; THIS IS QUITE ANNOYING!&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;The Fix:&lt;/strong&gt;&amp;#160; Today I fixed the issue.&amp;#160; After firing up &lt;a href=&quot;http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx&quot;&gt;Procmon&lt;/a&gt; I quickly determined that File Transfer Manager was reading files from the following folder:&lt;/p&gt;  &lt;p&gt;&lt;em&gt;C:\Users\MickeyMouse\AppData\Roaming\Microsoft\File Transfer Manager\RequestQueue&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;The RequestQueue folder contained a bunch of files with the extension .dlm.&amp;#160; &lt;strong&gt;After deleting all of these dlm files Microsoft FTM started working again as normal&lt;/strong&gt;.&amp;#160; I did not bother looking in these files, I just figured they contained the fubar requests and thus deserved to be destroyed without impunity.&lt;/p&gt;  &lt;p&gt;PS My username is not MickeyMouse.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Commerce Server 2009 Overview Document (from NRF)</title>
   <link href="http://bentaylor.org/commerce-server-2009-overview-document-from-nrf"/>
   <updated>2009-01-25T00:00:00+00:00</updated>
   <id>http://bentaylor.org/Commerce-Server-2009-Overview-Document-From-NRF</id>
   <content type="html">&lt;p&gt;The Commerce Server team demonstrated Microsoft Commerce Server 2009, at the recent &lt;a href=&quot;http://www.nrf.com/press/Annual2009Photos.asp&quot;&gt;National Retail Federation 2009 Expo&lt;/a&gt;.&amp;#160; I did not attend, but I just noticed a &lt;a href=&quot;http://www.microsoft.com/presspass/presskits/REC/docs/CommerceServer2009FS.doc&quot;&gt;Commerce Server 2009 overview document&lt;/a&gt; from the event.&amp;#160; Useful, if you want a quick introduction.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServer2009OverviewDocumentfromNR_F23A/commerce_server_2009_solution_overview_diagram_2.jpg&quot;&gt;&lt;img style=&quot;border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px&quot; height=&quot;284&quot; alt=&quot;Commerce Server 2009 Solution Overview Diagram&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServer2009OverviewDocumentfromNR_F23A/commerce_server_2009_solution_overview_diagram_thumb.jpg&quot; width=&quot;404&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&amp;#160; &lt;br /&gt;Commerce Server 2009 Solution Overview Diagram    &lt;br /&gt;&lt;em&gt;This image is also from the document (although not itself, hugely enlightening).&lt;/em&gt;&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Commerce Server 2009 Release Candidate Shipped</title>
   <link href="http://bentaylor.org/commerce-server-2009-release-candidate-shipped"/>
   <updated>2009-01-15T00:00:00+00:00</updated>
   <id>http://bentaylor.org/Commerce-Server-2009-Release-Candidate-Shipped</id>
   <content type="html">&lt;p&gt;So, I &lt;a href=&quot;http://bentaylor.org/Commerce-Server-2009-CTP.aspx&quot;&gt;blog about the Commerce Server 2009 CTP&lt;/a&gt; and two days later Microsoft go and ship the &lt;a href=&quot;http://bentaylor.org/Commerce-Server-2009-CTP.aspx&quot;&gt;Commerce Server 2009 Release Candidate&lt;/a&gt;!&amp;#160; Congratulations to the &lt;a href=&quot;http://www.microsoft.com/en/us/default.aspx&quot;&gt;Microsoft&lt;/a&gt; and &lt;a href=&quot;http://www.cactuscommerce.com/home/default_e.asp&quot;&gt;Cactus&lt;/a&gt; teams for shipping regularly.&amp;#160; Looking forward to playing with the bits.&amp;#160; &lt;a href=&quot;http://www.microsoft.com/downloads/details.aspx?FamilyID=b7eeda01-5cba-4945-a44e-a6f5e3eed0b0&amp;amp;DisplayLang=en&quot;&gt;Download Commerce Server 2009 Release Candidate&lt;/a&gt;.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Commerce Server 2009 CTP</title>
   <link href="http://bentaylor.org/commerce-server-2009-ctp"/>
   <updated>2009-01-12T00:00:00+00:00</updated>
   <id>http://bentaylor.org/Commerce-Server-2009-CTP</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServer2009CTP_967F/ben_taylor_surfing_and_not_thinking_about_commerce_server_2009_2.jpg&quot;&gt;&lt;img style=&quot;border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px&quot; height=&quot;287&quot; alt=&quot;Ben Taylor surfing and not thinking about Commerce Server 2009&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServer2009CTP_967F/ben_taylor_surfing_and_not_thinking_about_commerce_server_2009_thumb.jpg&quot; width=&quot;420&quot; align=&quot;right&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; Er, about a month ago, Microsoft released a &lt;a href=&quot;http://www.microsoft.com/DOWNLOADS/details.aspx?FamilyID=dc30f74f-e510-40b4-8da2-895e33fc9490&amp;amp;displaylang=en&quot;&gt;CTP of Commerce Server 2009&lt;/a&gt; (the product formerly known as Commerce Server Mojave).&amp;#160; This is the first feature complete release of the product, unlike the previous &lt;a href=&quot;http://bentaylor.org/Commerce-Server-Mojave-October-CTP-Available-On-Connect.aspx&quot;&gt;Mojave&lt;/a&gt; &lt;a href=&quot;http://bentaylor.org/Commerce-Server-Mojave-November-CTP-Released.aspx&quot;&gt;CTPs&lt;/a&gt;.&amp;#160; Changes include the completed &amp;quot;out-of-the-box&amp;quot; SharePoint site and a package that &amp;quot;seamlessly&amp;quot; upgrades existing CS 2007 deployments.&amp;#160; &lt;a href=&quot;http://www.microsoft.com/DOWNLOADS/details.aspx?FamilyID=dc30f74f-e510-40b4-8da2-895e33fc9490&amp;amp;displaylang=en&quot;&gt;Download Commerce Server 2009 CTP&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Old news I know, but I was surfing &lt;a href=&quot;http://www.nosara.com/playa%20guiones.htm&quot;&gt;Playa Guiones&lt;/a&gt; (Costa Rica) at the time (hence the gratuitous holiday photo placement).&lt;/p&gt;  &lt;p&gt;If you are using the Commerce Server 2009 CTP, don't forget you can submit feedback on the &lt;a href=&quot;https://connect.microsoft.com/site/sitehome.aspx?SiteID=643&quot;&gt;Microsoft Commerce Server Connect Site&lt;/a&gt;.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Commerce Server Mojave November CTP Released</title>
   <link href="http://bentaylor.org/commerce-server-mojave-november-ctp-released"/>
   <updated>2008-11-22T00:00:00+00:00</updated>
   <id>http://bentaylor.org/Commerce-Server-Mojave-November-CTP-Released</id>
   <content type="html">&lt;p&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;104&quot; alt=&quot;Picture of the Commerce Server Mojave November CTP files on my hard drive ;)&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServerMojaveNovemberCTPReleased_13A30/commerce-server-mojave-november-ctp_thumb.png&quot; width=&quot;300&quot; align=&quot;right&quot; border=&quot;0&quot; /&gt;&lt;a href=&quot;http://blogs.msdn.com/tschultz/&quot;&gt;Tom Schultz&lt;/a&gt; has just &lt;a href=&quot;http://blogs.msdn.com/tschultz/archive/2008/11/22/commerce-server-2007-code-name-mojave-november-2008-ctp-now-available.aspx&quot;&gt;announced&lt;/a&gt; that the Commerce Server Mojave November CTP is now available to &lt;a href=&quot;https://connect.microsoft.com/Downloads/DownloadDetails.aspx?SiteID=643&amp;amp;DownloadID=14940&quot;&gt;download&lt;/a&gt;.&amp;#160; I &lt;em&gt;think &lt;/em&gt;this is the last planned CTP before the product ships.&amp;#160; The download includes the following 3 files:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Commerce Server Code Name Mojave November 2008 CTP Readme.htm &lt;/li&gt;    &lt;li&gt;MojaveInstall.chm - An install guide for Mojave and the Default Site &lt;/li&gt;    &lt;li&gt;CS2K7MOJAVE1.iso - An ISO of the Mojave setup disk. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href=&quot;https://connect.microsoft.com/Downloads/DownloadDetails.aspx?SiteID=643&amp;amp;DownloadID=14940&quot;&gt;Download Commerce Server Mojave November CTP from Microsoft Connect&lt;/a&gt;     &lt;br /&gt;&lt;em&gt;File Transfer Manager (FTM) not working for me (getting error 12037) but individual file downloads are&lt;/em&gt;.&amp;#160; &lt;em&gt;Requires a Live Id&lt;/em&gt;.&lt;/p&gt;  &lt;p&gt;Thanks to Tom and the team for getting this up.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Scott Cairney Interview on Commerce Server Mojave</title>
   <link href="http://bentaylor.org/scott-cairney-interview-on-commerce-server-mojave"/>
   <updated>2008-11-20T00:00:00+00:00</updated>
   <id>http://bentaylor.org/Scott-Cairney-Interview-On-Commerce-Server-Mojave</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;http://mfile.akamai.com/14853/wmv/microsofttec.download.akamai.com/14853/TechEdOnline/Videos/457_low.asx&quot;&gt;&lt;img style=&quot;border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px&quot; height=&quot;224&quot; alt=&quot;Scott Cairney being interviewed about Microsoft Commerce Server Mojave at Tech-Ed Barcelona.&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServerMojaveTooGenericNotGeneric_C601/Scott-Cairney_3.jpg&quot; width=&quot;244&quot; align=&quot;right&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;strong&gt;About Scott Cairney - &lt;/strong&gt;Scott Cairney is a Commerce Server Veteran and key player in the creation of Commerce Server Mojave.&amp;nbsp; He has been deeply involved with Commerce Server since Commerce Server 2000.&amp;nbsp; Scott is currently a Product Manager in the Commerce Server Product Group and &lt;a href=&quot;http://www.cactuscommerce.com/aboutus/team_e.asp&quot;&gt;Vice-President Product Management at Cactus&lt;/a&gt;.&amp;nbsp; &lt;/p&gt; &lt;p&gt;&lt;strong&gt;Scott on Mojave at Tech-Ed&lt;/strong&gt; - Scott recently &lt;strike&gt;took a European holiday ;)&lt;/strike&gt; presented a couple of sessions at Tech-Ed Barcelona.&amp;nbsp; I have been unable to find these sessions online (unlike the &lt;a href=&quot;http://bentaylor.org/Commerce-Server-Mojave-PDC-Session-Video-Available-Now.aspx&quot;&gt;Mojave PDC session&lt;/a&gt;).&amp;nbsp; However, Mark Dunn of .NET Rocks interviewed Scott about Mojave while at Tech-Ed and this &lt;em&gt;is &lt;/em&gt;online.&amp;nbsp; You can &lt;a href=&quot;http://mfile.akamai.com/14853/wmv/microsofttec.download.akamai.com/14853/TechEdOnline/Videos/457_low.asx&quot;&gt;Watch Scott Cairney and Mark Dunn discuss Commerce Server Mojave&lt;/a&gt;.&amp;nbsp; &lt;em&gt;Note: The interview is available in other formats.&amp;nbsp; For the links, go to the &lt;/em&gt;&lt;a href=&quot;http://msdn.microsoft.com/en-us/events/teched/cc676818.aspx&quot;&gt;&lt;em&gt;Tech-Ed Tech-Talks page&lt;/em&gt;&lt;/a&gt;&lt;em&gt; and search for &quot;Commerce Server&quot; (there is no direct link to the interview page!).&lt;/em&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Scott on Commerce Server Mojave Feedback - &lt;/strong&gt;Given the wholesale API change in Mojave, I am very interested to hear what people think about it.&amp;nbsp; Apparently Tech-Ed participants had plenty of feedback, as Scott says in the interview:&lt;/p&gt; &lt;p&gt;&lt;em&gt;&quot;We did get a lot of feedback... We got some terrific feedback.&amp;nbsp; We got some negative feedback.&amp;nbsp; We got feedback saying it is too generic, some people are saying it is not generic enough.&amp;nbsp; So we think it's great, the fact that there is now a discussion of Commerce Server.&quot;&lt;/em&gt;&lt;/p&gt; &lt;p&gt;I agree.&amp;nbsp; It is exciting to be getting a major new rev of Commerce Server and it will be fun to discover and talk about.&amp;nbsp; I mean, not as exciting as white water rafting, or sticking your tongue in an electric socket, but you know what I mean.&amp;nbsp; &lt;/p&gt; &lt;p&gt;&lt;strong&gt;Have you looked at Mojave yet?&amp;nbsp; What are your thoughts?&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;PS Tom Schultz just announced the &lt;a href=&quot;http://blogs.msdn.com/tschultz/archive/2008/11/22/commerce-server-2007-code-name-mojave-november-2008-ctp-now-available.aspx&quot;&gt;Commerce Server Mojave November CTP drop&lt;/a&gt;.&amp;nbsp; Download does not seem to work for me :(&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Scott Guthrie on Smack and Meth (or was it MEF?) - Exclusive Microsoft PDC Video</title>
   <link href="http://bentaylor.org/scott-guthrie-on-smack-and-meth-or-was-it-mef-exclusive-microsoft-pdc-video"/>
   <updated>2008-10-31T00:00:00+00:00</updated>
   <id>http://bentaylor.org/Scott-Guthrie-On-Smack-And-Meth-Or-Was-It-MEF-Exclusive-Microsoft-PDC-Video</id>
   <content type="html">&lt;p&gt;In this video, &lt;a href=&quot;http://weblogs.asp.net/scottgu/default.aspx&quot;&gt;Scott Guthrie&lt;/a&gt; (aka ScottGu), explains how his team originally used Smack (their nickname for Simple Managed C or&amp;nbsp; SMC) to write ASP.NET.&amp;nbsp; However, they later decided to write it in C# on the CLR (we all know using smack is bad).&amp;nbsp; Scott explains why the decision was &quot;important&quot;, &quot;super risky&quot; and the &quot;single biggest&quot; they made in regards to server-side .NET.&amp;nbsp; If they had not done this, the server-side .NET world we know today may have been different.&amp;nbsp; It is (in my view) a really interesting bit of history (the original .NET class libraries were also &lt;a href=&quot;http://en.wikipedia.org/wiki/C_Sharp_programming_language&quot;&gt;written in SMC and then ported to Cool&lt;/a&gt;, later named C#).&lt;/p&gt; &lt;p&gt;&lt;embed src=&quot;http://www.youtube.com/v/cZwykC7ns4s&quot; width=&quot;425&quot; height=&quot;350&quot; type=&quot;application/x-shockwave-flash&quot;&gt; &lt;/p&gt; &lt;p&gt;&lt;/embed&gt;This was filmed at the &lt;a href=&quot;http://www.microsoftpdc.com/&quot;&gt;Microsoft PDC 2008&lt;/a&gt; in LA (by me), during Scott's session at the Open Space area.&amp;nbsp; Thanks to Scott Guthrie for taking the time to talk to us and all people that contributed to the interesting Open Space sessions.&lt;/p&gt; &lt;p&gt;Need something else to do?&amp;nbsp; &lt;a href=&quot;http://www.codeplex.com/MEF&quot;&gt;Go use some MEF&lt;/a&gt;.&amp;nbsp; &quot;I am a tool window&quot; what are you?&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Commerce Server Mojave PDC Session Video Available Now</title>
   <link href="http://bentaylor.org/commerce-server-mojave-pdc-session-video-available-now"/>
   <updated>2008-10-29T00:00:00+00:00</updated>
   <id>http://bentaylor.org/Commerce-Server-Mojave-PDC-Session-Video-Available-Now</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;http://blogs.msdn.com/tschultz/&quot;&gt;Tom Schultz&lt;/a&gt; and &lt;a href=&quot;http://blogs.msdn.com/khavas/default.aspx&quot;&gt;Kerry Havas&lt;/a&gt; presented the session &lt;strong&gt;Commerce Server Mojave : Overview&lt;/strong&gt; on Monday at the &lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServerMojavePDC2008Session_13BEA/IMG_1817.jpg&quot;&gt;&lt;img style=&quot;border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px&quot; height=&quot;184&quot; alt=&quot;Tom Schultz and Kerry Havas presenting Commerce Server Mojave talk at the LA PDC 2008.&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServerMojavePDC2008Session_13BEA/IMG_1817_thumb.jpg&quot; width=&quot;244&quot; align=&quot;right&quot; border=&quot;0&quot;&gt;&lt;/a&gt;Microsoft PDC in LA.&amp;nbsp; The video of this session is available now - &lt;a href=&quot;http://channel9.msdn.com/pdc2008/PC59/&quot;&gt;Watch Commerce Server Mojave : Overview&lt;/a&gt;.&amp;nbsp; Kerry covered the new API and Tom stitched together a site in about 5 minutes with the new Mojave SharePoint web parts.&amp;nbsp; Unfortunately, the session started late (the film crew failed to show on time) so they did not get the chance to cover the new Mojave &lt;em&gt;Operational Sequences&lt;/em&gt; architecture.&lt;/p&gt; &lt;p&gt;I had the opportunity to talk to Tom and Kerry after the session too.&amp;nbsp; I had some robust feedback on the new API and they were kind enough to listen to my ravings.&amp;nbsp; We had a pretty good conversation, with good points made on all sides.&amp;nbsp; One of the things I took away from this (and from the PDC in general) is the difficulty of addressing the needs and wants of all different types of development groups and individuals (see also Entity Framework!).&lt;/p&gt; &lt;p&gt;I will be posting more on my thoughts about the new API soon.&amp;nbsp; &lt;strong&gt;What do you think about it?&lt;/strong&gt;&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Commerce Server Mojave October CTP Available on Connect</title>
   <link href="http://bentaylor.org/commerce-server-mojave-october-ctp-available-on-connect"/>
   <updated>2008-10-21T00:00:00+01:00</updated>
   <id>http://bentaylor.org/Commerce-Server-Mojave-October-CTP-Available-On-Connect</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServerMojaveOctoberCTPAvailableo_F0F7/commerce-server-2007-image-of-a-man_2.jpg&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;205&quot; alt=&quot;commerce server 2007 image of a man smiling at a computer&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServerMojaveOctoberCTPAvailableo_F0F7/commerce-server-2007-image-of-a-man_thumb.jpg&quot; width=&quot;216&quot; align=&quot;right&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; Kamoji has &lt;a href=&quot;http://blogs.msdn.com/commerce/archive/2008/10/20/commerce-server-2007-code-name-mojave-october-2008-community-technology-preview-ctp-is-available-for-download-from-the-microsoft-connect-site.aspx&quot;&gt;just posted&lt;/a&gt; that the October CTP of Commerce Server &amp;quot;Mojave&amp;quot;, the next significant revision of Commerce Server is now &lt;a href=&quot;https://connect.microsoft.com/content/content.aspx?ContentID=9872&amp;amp;IsDraft=False&amp;amp;SiteID=643&amp;amp;wa=wsignin1.0&quot;&gt;available to download&lt;/a&gt; (via Microsoft Connect) by the general development public.&amp;#160; Previously, you could only get the Mojave bits if you were participating in the &lt;a href=&quot;http://blogs.msdn.com/tschultz/archive/2008/07/22/commerce-server-mojave-tap-announcement.aspx&quot;&gt;Commerce Server Mojave Technology Adoption Program (TAP)&lt;/a&gt;.&amp;#160; &lt;strike&gt;However, at the time of writing, the &lt;/strike&gt;&lt;a href=&quot;https://connect.microsoft.com/content/content.aspx?ContentID=9872&amp;amp;IsDraft=False&amp;amp;SiteID=643&amp;amp;wa=wsignin1.0&quot;&gt;&lt;strike&gt;October CTP download link&lt;/strike&gt;&lt;/a&gt;&lt;strike&gt; appears to be broken (for me)&lt;/strike&gt;.&amp;#160; &lt;em&gt;Update 23/10:&amp;#160; The &lt;/em&gt;&lt;a href=&quot;https://connect.microsoft.com/content/content.aspx?ContentID=9872&amp;amp;IsDraft=False&amp;amp;SiteID=643&amp;amp;wa=wsignin1.0&quot;&gt;&lt;em&gt;October CTP download link&lt;/em&gt;&lt;/a&gt;&lt;em&gt; is working fine.&amp;#160; It takes you to an EULA with a follow up download email.&amp;#160; &lt;/em&gt;The announcement was made on the public &lt;a href=&quot;http://blogs.msdn.com/commerce/default.aspx&quot;&gt;Microsoft Commerce Server Product Unit e-commerce Blog&lt;/a&gt;, so I am assuming it is genuine and public.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Final Mojave CTP in November so get your feedback in now!&amp;#160; &lt;/strong&gt;The &lt;a href=&quot;http://blogs.msdn.com/commerce/archive/2008/10/20/commerce-server-2007-code-name-mojave-october-2008-community-technology-preview-ctp-is-available-for-download-from-the-microsoft-connect-site.aspx&quot;&gt;CTP post&lt;/a&gt; also outlines the remaining CTP timeline.&amp;#160; There will be &lt;strong&gt;one more CTP&lt;/strong&gt; in the &amp;quot;&lt;em&gt;November 2008 time frame&lt;/em&gt;&amp;quot;.&amp;#160; Therefore, it is important to get feedback to the product team now.&amp;#160; The &lt;a href=&quot;http://blogs.msdn.com/tschultz/archive/2008/07/22/commerce-server-mojave-tap-announcement.aspx&quot;&gt;phases outlined here&lt;/a&gt; would &lt;em&gt;suggest&lt;/em&gt; that after the final CTP the product will go straight to Release Candidate (i.e. missing out Beta).&amp;#160; Therefore, I would &lt;em&gt;assume &lt;/em&gt;that the November CTP will be pretty baked.&amp;#160; Not much time.&amp;#160; Get on it! (and if you can be bothered feel free to post your thoughts in the comments below).&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Mojave October CTP bits just-in-time for the PDC?&amp;#160; &lt;/strong&gt;The MS e-commerce blog also &lt;a href=&quot;http://blogs.msdn.com/commerce/archive/2008/10/20/commerce-server-session-at-professional-developers-conference-pdc.aspx&quot;&gt;posted&lt;/a&gt; (3 hours later) that the Commerce Server Product Team will be attending the &lt;a href=&quot;http://microsoftpdc.com/&quot;&gt;Microsoft PDC in LA&lt;/a&gt; next week.&amp;#160; Not only that, but they will be doing a session on Mojave.&amp;#160; This session is a late edition to the PDC (and is still not in the sessions list).&amp;#160; The session abstract is as follows:&lt;/p&gt;  &lt;p&gt;&lt;em&gt;In this session you will get an in depth look into the new Commerce Server &amp;#8220;Mojave&amp;#8221; product release.&amp;#160; Learn how you can use Commerce Server&amp;#8217;s next-gen e-commerce API to develop performant, multi-channel e-commerce websites.&amp;#160; See improvements to the programming model, improved functionality for working with the desktop and devices, and integration of Commerce Server with SharePoint for search scenarios, content management, and social networking.&amp;#160; We&amp;#8217;ll also show how to use the &amp;#8220;Mojave&amp;#8221; e-commerce web parts to quickly build rich, custom user experiences.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Do you work with Commerce Server?&amp;#160; Are you going to the LA PDC next week?&amp;#160; Do you like to drink one or two beers and talk about software development?&amp;#160; &lt;/strong&gt;If you answered yes to any of these, drop me a line and we can meet up!&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Easy Commerce Server Pipeline Component Debugging with IIS7s appcmd.exe</title>
   <link href="http://bentaylor.org/easy-commerce-server-pipeline-component-debugging-with-iis7s-appcmdexe"/>
   <updated>2008-09-15T00:00:00+01:00</updated>
   <id>http://bentaylor.org/Easy-Commerce-Server-Pipeline-Component-Debugging-With-IIS7s-Appcmdexe</id>
   <content type="html">&lt;p&gt;If you have worked on a large &lt;a href=&quot;http://msdn.microsoft.com/en-us/library/ms864793.aspx&quot;&gt;Commerce Server&lt;/a&gt; implementation, you have likely built a &lt;a href=&quot;http://msdn.microsoft.com/en-us/library/ms944214.aspx&quot;&gt;custom pipeline component&lt;/a&gt; or two.&amp;#160; This makes you part of a very special &lt;a href=&quot;www.facebook.com/group.php?gid=7396344092&quot;&gt;band of brothers&lt;/a&gt; (requires &lt;a href=&quot;http://www.facebook.com/&quot;&gt;Facebook&lt;/a&gt; login).&amp;#160; It also means that you have probably seen your fair share of the build error &amp;quot;&lt;em&gt;Unable to copy file ... The process cannot access the file XYZ&lt;/em&gt;&amp;quot; (pictured below in all it's namespace censored glory)...&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServerPipelineComponentDebugging_11CF9/unable-to-copy-file-the-process-cannot-access-the-file_2.png&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;151&quot; alt=&quot;Picture of build error, unable to copy file ... the process cannot access the file XYZ.&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServerPipelineComponentDebugging_11CF9/unable-to-copy-file-the-process-cannot-access-the-file_thumb.png&quot; width=&quot;500&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;This error usually occurs when you build pipeline component project, having just run a pipeline that contains the same physical component (or another component in the same assembly).&amp;#160; The reason it occurs is that the process hosting your website (in my case w3wp.exe) has an open file handle to the assembly containing your pipeline component.&amp;#160; Hence you can't copy over it :(&lt;/p&gt;  &lt;p&gt;In the past I have resolved this using one of the following methods:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Killing the application pool process using &lt;a href=&quot;http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx&quot;&gt;Process Explorer&lt;/a&gt; or Task Manager. &lt;/li&gt;    &lt;li&gt;Doing an &lt;a href=&quot;http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/003ed2fe-6339-4919-b577-6aa965994a9b.mspx?mfr=true&quot;&gt;iisreset&lt;/a&gt;. &lt;/li&gt;    &lt;li&gt;Kicking my PC very hard, getting &lt;a href=&quot;http://farm4.static.flickr.com/3269/2537644427_d191584be0.jpg&quot;&gt;Cartman to replace the hard drive&lt;/a&gt; and re-installing Windows and Commerce Server. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;However, all of these involve what I call &lt;strong&gt;micro-tedium&lt;/strong&gt;.&amp;#160; Micro-tedious tasks are those computing tasks that are so small that they appear insignificant, but in reality suck the life out of you (like the &lt;a href=&quot;http://public.web.cern.ch/public/en/LHC/LHC-en.html&quot;&gt;Large Hadron Collider&lt;/a&gt; is also probably doing right now).&lt;/p&gt;  &lt;p&gt;Anyway, I digress.&lt;/p&gt;  &lt;h2&gt;My Slightly Funky but Practical Solution to &amp;quot;The Process Cannot Access the File&amp;quot; Tedium&lt;/h2&gt;  &lt;p&gt;IIS7 ships with a new tool called &lt;a href=&quot;http://technet.microsoft.com/en-us/library/cc772200.aspx&quot;&gt;Appcmd.exe&lt;/a&gt;.&amp;#160; It is a command line tool that lets you do useful stuff like create and configure sites, view information about worker processes and &lt;em&gt;start and stop application pools!&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;So, for pain free pipeline component development, use appcmd.exe in the pre and post-build events of your pipeline component project, to stop and start the application pool that hosts your Commerce Server site.&amp;#160; My build event commands look like this (&lt;em&gt;you will need to replace DefaultAppPool with the name of the Application Pool your Commerce Server site is running in&lt;/em&gt;):&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServerPipelineComponentDebugging_11CF9/pre-build-event-appcmd-call-defaultapppool_2.png&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;114&quot; alt=&quot;Picture of pre-build command line: %systemroot%\system32\inetsrv\appcmd.exe stop apppool DefaultAppPool &quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServerPipelineComponentDebugging_11CF9/pre-build-event-appcmd-call-defaultapppool_thumb.png&quot; width=&quot;500&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServerPipelineComponentDebugging_11CF9/post-build-event-appcmd-defaultapppool_2.png&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;106&quot; alt=&quot;Picture of post build command line: %systemroot%\system32\inetsrv\appcmd.exe stop apppool DefaultAppPool &quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/CommerceServerPipelineComponentDebugging_11CF9/post-build-event-appcmd-defaultapppool_thumb.png&quot; width=&quot;500&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Configuring your build event commands like this results in the following occurring in order when you build your pipeline component project:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Before the build, the application pool is stopped. &lt;/li&gt;    &lt;li&gt;Your project builds. &lt;/li&gt;    &lt;li&gt;After the build the application pool is started again. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;It works for me.&amp;#160; &lt;strong&gt;Does it work for you?&amp;#160; Any elegant(er) solutions out there?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Important Note about &lt;em&gt;Exit 0&lt;/em&gt;:&amp;#160; &lt;/strong&gt;The &lt;em&gt;exit 0 &lt;/em&gt;command is included so that the return code is always success, &lt;em&gt;even if appcmd has a non-success return code&lt;/em&gt;.&amp;#160; I do this because Appcmd will fail to stop the application pool, if the application pool is not already running.&amp;#160; &lt;em&gt;This would then cause your build to fail&lt;/em&gt;.&amp;#160; The &lt;em&gt;exit 0 &lt;/em&gt;command stops that happening.&amp;#160; If you have other commands in your build event, &lt;em&gt;exit 0 &lt;/em&gt;could mask their failure.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Stuck on IIS 6?&lt;/strong&gt;&amp;#160; If you are stuck on IIS 6 you may want to hack up something similar using one of the &lt;a href=&quot;http://msdn.microsoft.com/en-us/library/ms525006.aspx&quot;&gt;IIS 6 Command Line Tools&lt;/a&gt; (I think it is possible!).&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Appendix:&amp;#160; Paste-able Version of the Appcmd Commands Used&lt;/strong&gt;     &lt;br /&gt;&lt;em&gt;%systemroot%\system32\inetsrv\appcmd.exe stop apppool DefaultAppPool      &lt;br /&gt;exit 0 &lt;/em&gt;    &lt;br /&gt;&lt;em&gt;%systemroot%\system32\inetsrv\appcmd.exe start apppool DefaultAppPool      &lt;br /&gt;exit 0&lt;/em&gt;&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Get xUnit.net Working with Resharper 4.1</title>
   <link href="http://bentaylor.org/get-xunitnet-working-with-resharper-41"/>
   <updated>2008-09-04T00:00:00+01:00</updated>
   <id>http://bentaylor.org/Get-XUnitnet-Working-With-Resharper-41</id>
   <content type="html">&lt;p&gt;&lt;em&gt;Update 17/09/2008:&amp;#160; You no longer need the patch in this post.&amp;#160; &lt;a href=&quot;http://bradwilson.typepad.com/&quot;&gt;Brad Wilson&lt;/a&gt; and the &lt;a href=&quot;http://www.codeplex.com/xunit/People/ProjectPeople.aspx&quot;&gt;team at xUnit.net&lt;/a&gt; have just released &lt;a href=&quot;http://www.codeplex.com/xunit/Release/ProjectReleases.aspx?ReleaseId=17368&quot;&gt;xUnit.net Version 1.0.3&lt;/a&gt;.&amp;#160; This release supports &lt;a href=&quot;http://www.jetbrains.com/resharper/&quot;&gt;ReSharper 4.x&lt;/a&gt; via a new, smarter installer.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Hi, my name is Ben and I am a &lt;a href=&quot;http://www.jetbrains.com/resharper/&quot;&gt;ReSharper&lt;/a&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Fanboy&quot;&gt;fanboy&lt;/a&gt;.&amp;#160; &lt;em&gt;If you ever have the misfortune of pair programming with me, I promise not to shout &lt;a href=&quot;http://www.jetbrains.com/resharper/docs/ReSharper40DefaultKeymap2.pdf&quot;&gt;Ctrl+Alt+V , Ctrl+Q etc&lt;/a&gt; over your shoulder (sorry Mike).&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Anyway, being a fanboy, I rushed out and installed &lt;a href=&quot;http://www.jetbrains.com/resharper/releaseNotes41.html&quot;&gt;ReSharper 4.1&lt;/a&gt; as soon as it came out.&amp;#160; Unfortunately, this resulted in the loss of the the &lt;a href=&quot;http://www.codeplex.com/xunit&quot;&gt;xUnit.net&lt;/a&gt; ReSharper integration that I also use!&amp;#160; Why you ask?&amp;#160; Well ReSharper plugins have to live in a sub-directory of the ReSharper install folder and every time ReSharper rev, they move the install location and the registry settings.&amp;#160; This means that when you run VS.NET you lose the test runner functionality and when you try and re-install xUnit R# integration you see red....&amp;#160; Bad R#. Boo.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/GettingxUnit.netWorkingwithResharper4.1_1068E/sshot-2_2.jpg&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;352&quot; alt=&quot;sshot-2&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/GettingxUnit.netWorkingwithResharper4.1_1068E/sshot-2_thumb.jpg&quot; width=&quot;504&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;So, I popped off to the xUnit.net discussions on CodePlex to &lt;a href=&quot;http://www.codeplex.com/xunit/Thread/View.aspx?ThreadId=34816&quot;&gt;find out about plans for R# 4.1 support&lt;/a&gt; and I ended up writing a patch to make it work (big thanks to &lt;a href=&quot;http://bradwilson.typepad.com/blog/&quot;&gt;Brad Wilson&lt;/a&gt; for his R# related patience and quick responses).&amp;#160; My installer now looks like this:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/GettingxUnit.netWorkingwithResharper4.1_1068E/sshot-3_2.jpg&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;352&quot; alt=&quot;sshot-3&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/GettingxUnit.netWorkingwithResharper4.1_1068E/sshot-3_thumb.jpg&quot; width=&quot;504&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I could not submit patches to xUnit for some xUnit legal reasons (IP Stuff).&amp;#160; So, if you want to get it running you can download the install binaries I built, or do the patch work yourself.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;em&gt;Do any of this at your own risk.&amp;#160; It is not my fault if this causes your machine to melt, or you to lose hectares of code etc, ad-infinitum.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Use the Binaries I Patched and Built&lt;/strong&gt;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/xunit-installer-for-resharper-41.zip&quot;&gt;Download my xUnit Installer Binaries for ReSharper 4.1&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Extract the zip and run xunit.installer.exe.      &lt;br /&gt;&lt;em&gt;Note:&amp;#160; There are not &amp;quot;official&amp;quot; xUnit binaries.&amp;#160; I modified and built these.&lt;/em&gt; &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Or...&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Patch xUnit Installer for ReSharper 4.1 Support&lt;/strong&gt;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Install ReSharper 4.1. &lt;/li&gt;    &lt;li&gt;Get the &lt;a href=&quot;http://www.codeplex.com/xunit/SourceControl/ListDownloadableCommits.aspx&quot;&gt;latest xUnit source&lt;/a&gt; (I used rev 23764). &lt;/li&gt;    &lt;li&gt;Apply my &lt;a href=&quot;http://bentaylor.org/content/binary/xunit-installer-for-resharper-41-patch.zip&quot;&gt;xUnit.net ReSharper 4.1 installer patch&lt;/a&gt; to &lt;em&gt;xUnitSourceRoot (i.e. the root of where you checked out).&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;Run &lt;em&gt;xUnitSourceRoot&lt;/em&gt;\Main\3rdParty\Get3rdParty.cmd &lt;/li&gt;    &lt;li&gt;Make sure that &lt;em&gt;xUnitSourceRoot&lt;/em&gt;\Main\3rdParty just filled up with a bunch of ReSharper binaries. &lt;/li&gt;    &lt;li&gt;Open &lt;em&gt;xUnitSourceRoot&lt;/em&gt;\Main\xunit.sln &lt;/li&gt;    &lt;li&gt;Rebuild All. &lt;/li&gt;    &lt;li&gt;Run the installer:      &lt;br /&gt;&lt;em&gt;xUnitSourceRoot&lt;/em&gt;\Main\xunit.installer\bin\Debug\xunit.installer.exe &lt;/li&gt; &lt;/ol&gt;</content>
 </entry>
 
 <entry>
   <title>dasBlog Patch - Exclude Single Post Category from Home Page</title>
   <link href="http://bentaylor.org/dasblog-patch-exclude-single-post-category-from-home-page"/>
   <updated>2008-08-26T00:00:00+01:00</updated>
   <id>http://bentaylor.org/dasBlog-Patch-Exclude-Single-Post-Category-From-Home-Page</id>
   <content type="html">&lt;p&gt;dasBlog lets you specify multiple categories for each post you publish.&amp;#160; It also lets you specify that your blog home page &lt;strong&gt;only shows posts within a specific category&lt;/strong&gt;.&amp;#160; The feature is surfaced in the dasBlog Configuration page section, Appearance Settings:&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/dasBlogPatchExcludeSinglePostCategoryfro_EA2D/image_6.png&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;93&quot; alt=&quot;image&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/dasBlogPatchExcludeSinglePostCategoryfro_EA2D/image_thumb_2.png&quot; width=&quot;504&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I would like to be able to specify that &lt;strong&gt;dasBlog show all posts EXCEPT those in the category I specify&lt;/strong&gt;.&amp;#160; Why you ask?&amp;#160; Well most of my posts will be public.&amp;#160; Only a few (what you might call pages, rather than posts) should not hit the home page (they will still be public).&amp;#160; Given that other dasBlog features (like the tag cloud) use the category information, I don't want to start seeing things like &lt;font size=&quot;4&quot;&gt;&lt;strong&gt;&lt;u&gt;Public (1,000,000)&lt;/u&gt; &lt;/strong&gt;&lt;/font&gt;&lt;font size=&quot;2&quot;&gt;in my tag cloud!&amp;#160; I would rather see &lt;strong&gt;&lt;u&gt;Pages (3)&lt;/u&gt;&lt;/strong&gt;.&lt;/font&gt;&lt;/p&gt;  &lt;h2&gt;Adding Support for the &amp;quot;-&amp;quot; Operator in a Category Filter&lt;/h2&gt;  &lt;p&gt;This patch means that if put the &amp;quot;-&amp;quot; character in front of your category filter string, it will put all posts EXCEPT those in the specified category.&amp;#160;&amp;#160; &lt;strong&gt;Important Note:&amp;#160; This only works for a single category.&amp;#160; The patch assumes all after the &amp;quot;-&amp;quot; is the Category name &lt;/strong&gt;(as this is how the include filter works).&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/dasBlogPatchExcludeSinglePostCategoryfro_EA2D/image_8.png&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;92&quot; alt=&quot;image&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/dasBlogPatchExcludeSinglePostCategoryfro_EA2D/image_thumb_3.png&quot; width=&quot;504&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;So, with the setting above, all all posts EXCEPT those in category &amp;quot;page&amp;quot; will make it on to the home page.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>The Patch Seems Outdated! The File Line...And The Patchline Do Not Match</title>
   <link href="http://bentaylor.org/the-patch-seems-outdated-the-file-lineand-the-patchline-do-not-match"/>
   <updated>2008-08-26T00:00:00+01:00</updated>
   <id>http://bentaylor.org/The-Patch-Seems-Outdated-The-File-LineAnd-The-Patchline-Do-Not-Match</id>
   <content type="html">&lt;p&gt;&lt;em&gt;Update (1st September 2008):&amp;#160; This turned out to be a bug in &lt;a href=&quot;http://tortoisesvn.tigris.org/&quot;&gt;TortoiseSVN&lt;/a&gt; that has now been fixed.&amp;#160; Thanks to Stefan K&amp;#252;ng whom fixed this bug within 24 hours of me &lt;a href=&quot;http://groups.google.com/group/tortoisesvn/browse_thread/thread/89f27b37501eada6?hl=en&quot;&gt;posting it&lt;/a&gt; in the &lt;a href=&quot;http://groups.google.com/group/tortoisesvn&quot;&gt;TortoiseSVN Google Group&lt;/a&gt; (it will be available in the midnight build).&amp;#160; If you use TortoiseSVN a lot &lt;a href=&quot;http://tortoisesvn.net/donate_stefan&quot;&gt;send Stefan some money&lt;/a&gt; or &lt;a href=&quot;http://tortoisesvn.tigris.org/donate.html&quot;&gt;contribute to the project costs&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;I am having a problem testing the application of several minor patches I have written for &lt;a href=&quot;http://www.dasblog.info/&quot;&gt;dasBlog&lt;/a&gt;.&amp;#160; I am using TortoiseSVN to create the patch, and apply the patch to a clean checkout of the &lt;a href=&quot;http://www.codeplex.com/dasBlog/SourceControl/ListDownloadableCommits.aspx&quot;&gt;dasBlog source tree&lt;/a&gt;.&amp;#160; When I try and apply any of the 3 patches, the project files (.csproj) show up red in the file patch list:&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/ThePatchSeemsO.AndThePatchlineDoNotMatch_F85E/image_12.png&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;295&quot; alt=&quot;image&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/ThePatchSeemsO.AndThePatchlineDoNotMatch_F85E/image_thumb_5.png&quot; width=&quot;504&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Fair enough I say.&amp;#160; But when I right click the csproj and say &amp;quot;Preview patched file&amp;quot;, I get the error message:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;The patch seems outdated!&amp;#160; The file line ... and the patchline ... do not match!&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/ThePatchSeemsO.AndThePatchlineDoNotMatch_F85E/image_2.png&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;319&quot; alt=&quot;Image of TortoiseMerge Error - The patch seems outdated!  The file line ... and the patchline ... do not match!&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/ThePatchSeemsO.AndThePatchlineDoNotMatch_F85E/image_thumb.png&quot; width=&quot;504&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The file line and patch line in the error message itself look the same to me.&amp;#160; Looking at them raw in &lt;a href=&quot;http://www.flos-freeware.ch/notepad2.html&quot;&gt;Notepad2&lt;/a&gt; also seems to suggest they are the same (bar the single space at the beginning of the patch line, which &lt;em&gt;I think &lt;/em&gt;is normal and part of the &lt;a href=&quot;http://en.wikipedia.org/wiki/Diff&quot;&gt;diff file format&lt;/a&gt; as all the other changes have this space).&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Patch Line in Notepad2&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/ThePatchSeemsO.AndThePatchlineDoNotMatch_F85E/image_6.png&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;65&quot; alt=&quot;image&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/ThePatchSeemsO.AndThePatchlineDoNotMatch_F85E/image_thumb_2.png&quot; width=&quot;791&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;File Line in Notepad2&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/ThePatchSeemsO.AndThePatchlineDoNotMatch_F85E/image_8.png&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;19&quot; alt=&quot;image&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/ThePatchSeemsO.AndThePatchlineDoNotMatch_F85E/image_thumb_3.png&quot; width=&quot;791&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The offending line is the first line of the change in the patch file.&amp;#160; The rest of this change can be seen below.&amp;#160; It is just a change of the &lt;em&gt;ProductVersion&lt;/em&gt; number.&amp;#160; If I delete this change out of the patch file, the patch can then be applied successfully (including the other csproj changes I did not delete).&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;So is this a bug, is there a difference I can't see, or am I doing something wrong?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/ThePatchSeemsO.AndThePatchlineDoNotMatch_F85E/image_4.png&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;279&quot; alt=&quot;image&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/ThePatchSeemsO.AndThePatchlineDoNotMatch_F85E/image_thumb_1.png&quot; width=&quot;791&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>dasBlog Patch - Add Choice of Dash "-" for Post Title URL Spaces</title>
   <link href="http://bentaylor.org/dasblog-patch-add-choice-of-dash-for-post-title-url-spaces"/>
   <updated>2008-08-25T00:00:00+01:00</updated>
   <id>http://bentaylor.org/dasBlog-Patch-Add-Choice-Of-Dash-For-Post-Title-URL-Spaces</id>
   <content type="html">&lt;p&gt;I want &lt;a href=&quot;http://www.codeplex.com/dasBlog&quot;&gt;dasBlog&lt;/a&gt; to do something it can't do.&amp;#160; Specifically, I want my blog posts to have URLs like this &lt;a title=&quot;http://bentaylor.org/Software-Development-Tools-List.aspx&quot; href=&quot;http://bentaylor.org/Software-Development-Tools-List.aspx&quot;&gt;http://bentaylor.org/Software-Development-Tools-List.aspx&lt;/a&gt;.&amp;#160; Note the dashes between the words in the post title?&amp;#160; dasBlog does not do this.&amp;#160; dasBlog will only do spaces (using the + sign) or no spaces.&lt;/p&gt;  &lt;p&gt;Why do I want dashes?&amp;#160; Well my reading on the subject of &lt;a href=&quot;http://en.wikipedia.org/wiki/Search_engine_optimization&quot;&gt;Search Engine Optimisation&lt;/a&gt; (SEO) would suggest that Google sees the dash as a space and therefore understands the individual words in your title.&amp;#160; &lt;a href=&quot;http://www.mattcutts.com/blog/&quot;&gt;Matt Cutts&lt;/a&gt; head of the Google Webspam Team backs this up in his post &lt;a href=&quot;http://www.mattcutts.com/blog/dashes-vs-underscores/&quot;&gt;Dashes vs. Underscores&lt;/a&gt;.&amp;#160; &lt;/p&gt;  &lt;p&gt;Why not stick with the &amp;quot;+&amp;quot; character, is that not as good?&amp;#160; I'm not sure.&amp;#160; All I know is that IIS7 &lt;a href=&quot;http://blogs.iis.net/thomad/archive/2007/12/17/iis7-rejecting-urls-containing.aspx&quot;&gt;does not like the plus sign&lt;/a&gt; and Google &lt;a href=&quot;http://groups.google.com/group/Google_Webmaster_Help-Indexing/msg/4146edf9bcc00198&quot;&gt;&lt;em&gt;may not &lt;/em&gt;like the plus sign&lt;/a&gt;.&amp;#160; So I am going to patch it.&amp;#160; &lt;em&gt;I have convinced myself that this is not blogging procrastination.&amp;#160; Once URLs are in the wild you can't change them (well you can, but it is a pain in the &lt;/em&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/HTTP_301&quot;&gt;&lt;em&gt;301&lt;/em&gt;&lt;/a&gt;&lt;em&gt;).&lt;/em&gt;&lt;/p&gt;  &lt;h2&gt;Changing the dasBlog Configuration Page so You can Select &amp;quot;-&amp;quot; for Post Title Spaces&lt;/h2&gt;  &lt;p&gt;I have made a patch for dasBlog that enhances the option for replacing spaces in a Post Title Permalink.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Pre-Patch Permalink Section:&lt;/strong&gt;&amp;#160; Currently you configure dasBlog title Permalinks with the following section:&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/5bcdfde6ad98_8D20/image_2.png&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;110&quot; alt=&quot;Pre-patch Permalink Config Section&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/5bcdfde6ad98_8D20/image_thumb.png&quot; width=&quot;504&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Post-Patch Permalink Section:&amp;#160; &lt;/strong&gt;The patch (I will shortly submit) changes the configuration section to look like this:&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/5bcdfde6ad98_8D20/image_7.png&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;59&quot; alt=&quot;Post-patch Permalink Config Section&quot; src=&quot;http://bentaylor.org/content/binary/WindowsLiveWriter/5bcdfde6ad98_8D20/image_thumb_2.png&quot; width=&quot;504&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;In the new configuration, you have a choice of character to replace the spaces with (in the dropdown).&amp;#160; The two (hard-coded*) choices provided are &amp;quot;-&amp;quot; and &amp;quot;+&amp;quot;.&amp;#160; For backwards compatibility the default is still &amp;quot;+&amp;quot; and the underlying SiteConfig for the CheckBox remains the same.&amp;#160; However, you can now select a different string to replace the spaces with and this selection will be saved in a new SiteConfig property called titlePermalinkSpaceReplacement.&lt;/p&gt;  &lt;p&gt;This blog is already running this patch and it is working well so far!&lt;/p&gt;  &lt;p&gt;&lt;em&gt;Update:&amp;#160; This patch should not impact any URLs you have in the wild, that contain the &amp;quot;+&amp;quot;.&amp;#160; These will still work, even if you switch over to the &amp;quot;-&amp;quot;.&amp;#160; However, if you do that, you should really set up 301 responses from your old URL to the new one.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;* I have hard-coded the choices as I do not believe it is something that people would want to configure.&amp;#160; &lt;a href=&quot;http://en.wikipedia.org/wiki/You_Ain%27t_Gonna_Need_It&quot;&gt;YANGNI&lt;/a&gt;.&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Software Development Tools List</title>
   <link href="http://bentaylor.org/software-development-tools-list"/>
   <updated>2008-08-24T00:00:00+01:00</updated>
   <id>http://bentaylor.org/Software-Development-Tools-List</id>
   <content type="html">&lt;p&gt;Whenever I am building a new PC I always forget to install some of the tools that I love.&amp;#160; When I remember that I forgot, I then sometimes struggle to remember what that &lt;i&gt;little tool that does some tiny little thing that I love, but has a weird name &lt;/i&gt;is called.&lt;/p&gt;  &lt;p&gt;No more.&amp;#160; They will now be collated here and perhaps one day, when I grow up, I will have a tools list as big as &lt;a href=&quot;http://www.hanselman.com/blog/ScottHanselmans2007UltimateDeveloperAndPowerUsersToolListForWindows.aspx&quot;&gt;Hanselman's Tools List&lt;/a&gt;.&lt;/p&gt;  &lt;h2&gt;My .NET Life Would Not be Worth Living Without&lt;/h2&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://www.jetbrains.com/resharper/&quot;&gt;ReSharper&lt;/a&gt; - Does it make you 10 times better or 100?&amp;#160; The argument rages. &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.red-gate.com/products/reflector/&quot;&gt;Reflector&lt;/a&gt; - &lt;a href=&quot;http://www.lutzroeder.com/&quot;&gt;Lutz Roeder's&lt;/a&gt; baby, now with &lt;a href=&quot;http://www.red-gate.com/index.htm&quot;&gt;redgate&lt;/a&gt;. &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.roland-weigelt.de/ghostdoc/&quot;&gt;GhostDoc&lt;/a&gt; - Spooky how it makes your code look better. &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://msdn.microsoft.com/en-us/vstudio/default.aspx&quot;&gt;Visual Studio&lt;/a&gt; - What good is a sexy add-in, without a something to add it to? &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://subversion.tigris.org/&quot;&gt;Subversion&lt;/a&gt; - Source control I trust.&amp;#160; Made me forget &lt;a href=&quot;http://en.wikipedia.org/wiki/Visual_SourceSafe&quot;&gt;VSS&lt;/a&gt; and (so far) ignore &lt;a href=&quot;http://en.wikipedia.org/wiki/Team_Foundation_Server&quot;&gt;TFS&lt;/a&gt;. &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://tortoisesvn.tigris.org/&quot;&gt;TortoiseSVN&lt;/a&gt; - Explorer GUI for Subversion.&amp;#160; Will my head be turned by &lt;a href=&quot;http://www.visualsvn.com/&quot;&gt;Visual SVN&lt;/a&gt;? &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.google.com&quot;&gt;Google&lt;/a&gt; - Yeah I know.&amp;#160; But when did you last hit F1 in Visual Studio and NOT smash your monitor? &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/&quot;&gt;Firefox Add-ons&lt;/a&gt; - I wonder if there is a tool to do XYC?&amp;#160; Yep, someone built it.&amp;#160; See my faves below.&lt;/li&gt; &lt;/ul&gt;  &lt;h2&gt;The Rest...&lt;/h2&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://www.7-zip.org/&quot;&gt;7-Zip&lt;/a&gt; - Especially now WinZip want to charge me for something every 10 minutes. &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.truecrypt.org/&quot;&gt;TrueCrypt&lt;/a&gt; - The last line between my key chain flash drive and MI5... &lt;em&gt;(this is a joke, packet sniffers)&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.roboform.com/pass2go.html&quot;&gt;RoboForm2Go&lt;/a&gt; - The only thing that knows all my passwords. &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.gabrieleponti.com/software/&quot;&gt;Send To Toys&lt;/a&gt; - Lets me do things like &amp;quot;Send to Command Prompt&amp;quot;.&amp;#160; Although not on Vista right now (for me). &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.extrabit.com/plaintextclipboard/&quot;&gt;PlainTextClipboard&lt;/a&gt; - Takes all the fancy formatting that other apps put on the clipboard and plaintextifies it. &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.kessels.com/Jkdefrag/&quot;&gt;JkDefrag&lt;/a&gt; - Simple and mesmerising defrag.&amp;#160; Look into my clusters... &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.workrave.org/welcome/&quot;&gt;Workrave&lt;/a&gt; - Sheep that keeps my &lt;a href=&quot;http://en.wikipedia.org/wiki/Ulnar_nerve&quot;&gt;ulna nerve&lt;/a&gt; healthy.&amp;#160; Reminds me that 12 hours non-stop coding is bad. &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.realtimesoft.com/ultramon/&quot;&gt;Ultramon&lt;/a&gt; - A must have for the multi-monitor warrior (I am only a 2 panel man). &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.fiddler2.com/fiddler2/&quot;&gt;Fiddler2&lt;/a&gt; - Who doesn't like to sniff HTTP?&amp;#160; It's all the rage and Fiddler is still my fave. &lt;/li&gt; &lt;/ul&gt;  &lt;h2&gt;...and Firefox&lt;/h2&gt;  &lt;p&gt;&lt;a href=&quot;http://www.mozilla-europe.org/en/firefox/&quot;&gt;Firefox&lt;/a&gt; - Mainly because of the following extensions:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/addon/60&quot;&gt;Web Developer Toolbar&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/addon/1843&quot;&gt;FireBug&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://users.skynet.be/mgueury/mozilla/&quot;&gt;HTML Validator&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://delicious.com/&quot;&gt;Delicious Bookmarks&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.google.com/tools/firefox/toolbar/FT3/intl/en/index.html&quot;&gt;Google Toolbar for Firefox&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://livehttpheaders.mozdev.org/&quot;&gt;Live HTTP Headers&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.kevinfreitas.net/extensions/measureit/&quot;&gt;Measure It&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.cfavatar.com/blogcfm/1/2006/10/index.cfm&quot;&gt;Text Complete&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.cooliris.com/&quot;&gt;CoolIris&lt;/a&gt; (formerly PicLens) ... and currently disabled as crashing Firefox 3!?&lt;/li&gt; &lt;li&gt;&lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/addon/1801&quot;&gt;Clear Cache&lt;/a&gt;&amp;nbsp;When you're not sure Ctrl+F5 is really getting the page again.  Use the broom.&lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;&lt;em&gt;Updated:&amp;#160; 26/08/2008 with Firefox section and some other minor edits.&lt;/em&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>About Me</title>
   <link href="http://bentaylor.org/about-me"/>
   <updated>2008-08-23T00:00:00+01:00</updated>
   <id>http://bentaylor.org/About-Me</id>
   <content type="html">&lt;p&gt;My name is Ben Taylor.&amp;#160; I live in &lt;a href=&quot;http://maps.google.co.uk/maps?q=islington&quot;&gt;North London&lt;/a&gt; and am the Managing Director of &lt;a href=&quot;http://www.shapefactory.co.uk/&quot;&gt;Shape Factory&lt;/a&gt; which I founded in late 2005 (after 3 months surfing in &lt;a href=&quot;http://www.nosara.com/playa%20guiones.htm&quot;&gt;Nosara&lt;/a&gt;, &lt;a href=&quot;http://en.wikipedia.org/wiki/Costa_Rica&quot;&gt;Costa Rica&lt;/a&gt;).&amp;#160; Shape Factory specialises in e-commerce consultancy and the design and build of e-commerce websites and systems using &lt;a href=&quot;http://www.microsoft.com/NET/&quot;&gt;Microsoft .NET&lt;/a&gt; and &lt;a href=&quot;http://www.microsoft.com/commerceserver/default.mspx&quot;&gt;Microsoft Commerce Server&lt;/a&gt;.&amp;#160; Most of our work is for Tier-1 Consultancies.&lt;/p&gt;  &lt;p&gt;Prior to starting Shape Factory I was the CTO of &lt;a href=&quot;http://www.snowvalley.com/&quot;&gt;Snow Valley&lt;/a&gt;.&amp;#160; My early years (circa 1995) were spent writing real-time foreign exchange dealing software (my first and favourite baby is still on sale as the &lt;a href=&quot;http://about.reuters.com/productinfo/dealtracker/backoffice.aspx&quot;&gt;Reuters Deal Tracker Server&lt;/a&gt;).&amp;#160; The Wayback Machine says that I built the first recorded &lt;a href=&quot;http://web.archive.org/web/19981205050459/http://www.snowvalley.com/&quot;&gt;Snow Valley homepage&lt;/a&gt; in 1998 (&lt;em&gt;nice colours!&lt;/em&gt;).&amp;#160; My later years were spent building and then managing the build of Commerce Server based e-commerce solutions.&amp;#160; Overall I had 8+ enjoyable years with Snow Valley.&lt;/p&gt;  &lt;p&gt;I also support &lt;a href=&quot;http://www.playerpal.com/&quot;&gt;PlayerPal&lt;/a&gt; (reflectoring will cause nausea) which I wrote for myself back in the day, so I could control iTunes/WMP from a browser (and learn this new .NET thingy).&amp;#160; I have done bits of Open Source and am currently a developer on &lt;a href=&quot;http://www.codeplex.com/dasBlog&quot;&gt;dasBlog&lt;/a&gt;, &lt;del&gt;the software this blog runs on&lt;/del&gt; &lt;i&gt;it now runs on Jekyll.&lt;/i&gt;&lt;em&gt;&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Why am I blogging?&amp;#160; Because I need somewhere to keep track of things and &lt;a href=&quot;http://blog.jonudell.net/&quot;&gt;Jon Udell&lt;/a&gt; convinced me that blogging will give me the &lt;a href=&quot;http://blog.jonudell.net/2007/04/10/too-busy-to-blog-count-your-keystrokes/&quot;&gt;best bang for my keystrokes&lt;/a&gt;.     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;And yes.&amp;#160; I know the Shape Factory site is terrible.&lt;/p&gt;
</content>
 </entry>
 
 
</feed>

