<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:blogChannel="http://backend.userland.com/blogChannelModule" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" version="2.0">
  <channel>
    <title>Sharepoint Nirvana</title>
    <description>Attaining a state of bliss through Sharepoint Design Development and Configuration</description>
    <link>http://phet.net/sharepoint/</link>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>BlogEngine.Net Syndication Generator 1.0.0.0 (http://dotnetblogengine.net/)</generator>
    <language>en-GB</language>
    <blogChannel:blogRoll>http://phet.net/sharepoint/opml.axd</blogChannel:blogRoll>
    <dc:creator>Jamie McAllister</dc:creator>
    <dc:title>Sharepoint Nirvana</dc:title>
    <geo:lat>53.330000</geo:lat>
    <geo:long>-2.150000</geo:long>
    <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/SharepointNirvana" type="application/rss+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
      <title>Variations 2010 - it is good news!</title>
      <description>&lt;p&gt;I haven&amp;#39;t yet had a chance to have a good honest to goodness play with Variations in Sharepoint 2010. I&amp;#39;m waiting for the beta release in November, and my new beefier hardware is just waiting for the challenge.&lt;/p&gt;&lt;p&gt;&amp;nbsp;The documentation for Sharepoint 2010, and specifically Variations is coming out (bit by bit) and it sounds good to me. &lt;/p&gt;&lt;p&gt;First of all, you&amp;#39;ll be glad to hear that the Variations process has been written to be more robust than prior versions. Creation of Variations&amp;nbsp;and Variation Hierarchies are now fully encapsulated in Timer Jobs, dispensing with the troublesome dependency on the IIS Worker Process during provisioning.&lt;/p&gt;&lt;p&gt;[Revision 271009 - I&amp;#39;ve been told that my take on the workflow improvements may be a misinterpretation of the documentation. I&amp;#39;ll finalise these points when I know more.]&lt;/p&gt;&lt;p&gt;Good news all, and I hope to report more once I have more to tell.&amp;nbsp;&amp;nbsp;&lt;/p&gt;</description>
      <link>http://phet.net/sharepoint/post/Variations-2010---it-is-good-news!.aspx</link>
      <author>JamieMcAllister</author>
      <comments>http://phet.net/sharepoint/post/Variations-2010---it-is-good-news!.aspx#comment</comments>
      <guid>http://phet.net/sharepoint/post.aspx?id=57d7d7cc-dea8-4af0-90f5-3c34c4cef8ad</guid>
      <pubDate>Wed, 21 Oct 2009 18:06:00 -0500</pubDate>
      <category>Sharepoint</category>
      <category>sharepoint 2010</category>
      <category>Variations</category>
      <category>WCM</category>
      <dc:publisher>JamieMcAllister</dc:publisher>
      <pingback:server>http://phet.net/sharepoint/pingback.axd</pingback:server>
      <pingback:target>http://phet.net/sharepoint/post.aspx?id=57d7d7cc-dea8-4af0-90f5-3c34c4cef8ad</pingback:target>
      <slash:comments>1</slash:comments>
      <trackback:ping>http://phet.net/sharepoint/trackback.axd?id=57d7d7cc-dea8-4af0-90f5-3c34c4cef8ad</trackback:ping>
      <wfw:comment>http://phet.net/sharepoint/post/Variations-2010---it-is-good-news!.aspx#comment</wfw:comment>
      <wfw:commentRss>http://phet.net/sharepoint/syndication.axd?post=57d7d7cc-dea8-4af0-90f5-3c34c4cef8ad</wfw:commentRss>
    </item>
    <item>
      <title>Faceted Search Intermittent Error - How We Found and Fixed It!</title>
      <description>&lt;p&gt;
Picture the scene; Faceted Search is giving us an intermittent failure in our integration environment. Search is fine then all of a sudden upon a new search we get a page saying; 
&lt;/p&gt;
&lt;p&gt;
&amp;quot;An unexpected error has occurred.&lt;br /&gt;
Web Parts Maintenance Page: If you have permission, you can use this page to temporarily close Web Parts or remove personal settings. For more information, contact your site administrator.&amp;quot; 
&lt;/p&gt;
&lt;p&gt;
At first this was puzzling. We figured there might be an environment problem stopping the facet parts querying the database or some such. 
&lt;/p&gt;
&lt;p&gt;
As we have several web front ends, someone had the idea of editing the masterpages to display which WFE was serving the request. This would allow us to rule out that the intermittent failure was caused by a single machine having problems. So, I added some code like this &amp;lt;%Response.Write(&amp;quot;SERVERNAME&amp;quot;);%&amp;gt; to simple.master and our custom master page. 
&lt;/p&gt;
&lt;p&gt;
We then discovered that Faceted Search only failed on one of the WFE machines. Closer inspection showed that the event log on that machine had a recurrent error like this; 
&lt;/p&gt;
&lt;p&gt;
&lt;br /&gt;
A configuration failure occurred while creating policy &amp;lsquo;Faceted Search Policy&amp;rsquo;.&lt;br /&gt;
The exception that occurred was: System.Configuration.ConfigurationErrorsException: The entry &amp;#39;Logging Handler&amp;#39; has already been added. (C:\Inetpub\wwwroot\wss\VirtualDirectories\devsearch.mydomain.com\web.config line 75) 
&lt;/p&gt;
&lt;p&gt;
&lt;br /&gt;
Looking at the web.config I immediately found a duplicate entry for Logging Handler which differed from the original entry (that was still there). The extra entry was this; 
&lt;/p&gt;
&lt;p&gt;
&lt;br /&gt;
&amp;lt;add logCategory=&amp;quot;Information&amp;quot; eventId=&amp;quot;100&amp;quot; severity=&amp;quot;Error&amp;quot; title=&amp;quot;Faceted Search Exception Handling&amp;quot; formatterType=&amp;quot;Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.TextExceptionFormatter, Microsoft.Practices.EnterpriseLibrary.ExceptionHandling, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35&amp;quot; priority=&amp;quot;0&amp;quot; useDefaultLogger=&amp;quot;false&amp;quot; type=&amp;quot;Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.Logging.LoggingExceptionHandler, Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35&amp;quot; name=&amp;quot;Logging Handler&amp;quot; /&amp;gt; 
&lt;/p&gt;
&lt;p&gt;
Now, this is puzzling as this wasn&amp;#39;t added by anyone on the team, and must have been added by some process. 
&lt;/p&gt;
&lt;p&gt;
We have another strange issue where web.config modifications are occurring when we push out certain solutions. Perhaps that had something to do with this. When I get to the bottom of it I guess I can judge whether the two issues are related. 
&lt;/p&gt;
&lt;p&gt;
Anyway, Faceted Search now works without any intermittent errors, which is nice. 
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
</description>
      <link>http://phet.net/sharepoint/post/Faceted-Search-Intermittent-Error---How-We-Found-and-Fixed-It!.aspx</link>
      <author>JamieMcAllister</author>
      <comments>http://phet.net/sharepoint/post/Faceted-Search-Intermittent-Error---How-We-Found-and-Fixed-It!.aspx#comment</comments>
      <guid>http://phet.net/sharepoint/post.aspx?id=283a4a72-83de-4d3e-9256-70b856c6e002</guid>
      <pubDate>Tue, 13 Oct 2009 17:40:00 -0500</pubDate>
      <category>Bug</category>
      <category>Sharepoint</category>
      <category>Faceted Search</category>
      <dc:publisher>JamieMcAllister</dc:publisher>
      <pingback:server>http://phet.net/sharepoint/pingback.axd</pingback:server>
      <pingback:target>http://phet.net/sharepoint/post.aspx?id=283a4a72-83de-4d3e-9256-70b856c6e002</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://phet.net/sharepoint/trackback.axd?id=283a4a72-83de-4d3e-9256-70b856c6e002</trackback:ping>
      <wfw:comment>http://phet.net/sharepoint/post/Faceted-Search-Intermittent-Error---How-We-Found-and-Fixed-It!.aspx#comment</wfw:comment>
      <wfw:commentRss>http://phet.net/sharepoint/syndication.axd?post=283a4a72-83de-4d3e-9256-70b856c6e002</wfw:commentRss>
    </item>
    <item>
      <title>When to Schedule those Timer Jobs?</title>
      <description>&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;Ran into an interesting issue the other day with one of my clients that got the grey matter working. The client is a large multinational company who employ Sharepoint across their various&amp;nbsp;regional offices. The UK users were experiencing slow response times from Sharepoint around 10am every morning. I immediately suspected&amp;nbsp;intensive timer jobs on the&amp;nbsp;server and began to investigate.&lt;/span&gt;&lt;/font&gt; 
&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;Looking into the matter I noticed that the Sharepoint Servers themselves are hosted in the USA and operate under Central time, six hours behind the UK. Every heavy process was scheduled to run at around&amp;nbsp;4am local time, hitting peak load 10am GMT and hence causing the issue for Blighty. &lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;I&amp;#39;ve seen this mantra repeated&amp;nbsp;for years that you just schedule your heavy server jobs for 4am to avoid peak user access, and forget about them. In an increasingly international business world that simplistic thinking clearly isn&amp;#39;t going to cut the mustard. So, when should you schedule those jobs?&lt;/span&gt;&lt;/font&gt; 
&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;Well, as is often the case there&amp;#39;s no single right answer except perhaps &amp;quot;it depends&amp;quot;. Next time you&amp;#39;re looking to schedule some heavy server tasks&amp;nbsp;a little thought will pay dividends.&lt;/span&gt;&lt;/font&gt; 
&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;Looking at a timezone map of the world like this one &lt;a href="http://www.himssmtgtvl.com/international%20info/world-time-zone.jpg" title="http://www.himssmtgtvl.com/international info/world-time-zone.jpg"&gt;http://www.himssmtgtvl.com/international%20info/world-time-zone.jpg&lt;/a&gt;&amp;nbsp;it&amp;#39;s easy to see that if you have a truly global user base there will be no time you can choose to run jobs that avoids the business hours 9am - 6pm everywhere you&amp;#39;d like. &lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;As an exercise I ran the numbers on the idea that 1pm somewhere really remote provide the fabled time of the day with least impact. I chose Midway Island (-11 Hrs GMT) as an example. Sure enough however, choosing such a location means the heavy server loads avoid Western Europe, the Eastern US, and much of Asia, but you&amp;#39;re still going to have some unhappy customers in Australia, Japan, and California!&lt;/span&gt;&lt;/font&gt; 
&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;So the first lesson is, know where your users are and what hours are important to them. Business hours for business users, perhaps different for leisure users. The guys in the US who configured this server clearly never thought about the fact most of their global Sharepoint users are actually UK based at this stage of the project!&lt;/span&gt;&lt;/font&gt; 
&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;Second lesson, have you thought why the heck are you running all this stuff at the same time anyway? Another multinational client of mine also scheduled all their jobs at the 3am/4am GMT kind of time by default. The IT Manager kept getting calls at 4am from the hosting company telling him the CPU utilisation had breached so and so a level. I class this as an unnecessary loss of sleep. Spread them out. If I schedule some of my heavyweight UK jobs at 4am that avoids nasty hours for UK, Europe, US, and India, not bad. I could then lessen the impact on Asia/Australasia by taking advantage of the usual lunchtime activity lulls 12-2pm GMT to run a few smaller jobs, also avoiding interruption of the US, India, Asia et al. &lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;So, not rocket science really, just that few seconds of extra thought, and a brief investigation of what is running already before choosing my scheduled times.&lt;/span&gt;&lt;/font&gt; 
&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;&lt;/span&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;font face="Arial" size="2"&gt;&lt;span class="125070714-24092009"&gt;You may have got away with&amp;nbsp;default 4am scheduling&amp;nbsp;with your single country applications.&amp;nbsp;However this is Sharepoint - often adopted by large globe spanning enterprises, and with lots of heavyweight processing like Search Crawls, various timer jobs, AD refresh, and all your custom solutions to perform.&lt;/span&gt;&lt;/font&gt; 
&lt;/div&gt;
</description>
      <link>http://phet.net/sharepoint/post/When-to-Schedule-those-Timer-Jobs.aspx</link>
      <author>JamieMcAllister</author>
      <comments>http://phet.net/sharepoint/post/When-to-Schedule-those-Timer-Jobs.aspx#comment</comments>
      <guid>http://phet.net/sharepoint/post.aspx?id=7e7814db-477c-46ee-9be8-7ff35b743313</guid>
      <pubDate>Thu, 24 Sep 2009 17:11:00 -0500</pubDate>
      <category>Sharepoint</category>
      <category>Admin</category>
      <dc:publisher>JamieMcAllister</dc:publisher>
      <pingback:server>http://phet.net/sharepoint/pingback.axd</pingback:server>
      <pingback:target>http://phet.net/sharepoint/post.aspx?id=7e7814db-477c-46ee-9be8-7ff35b743313</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://phet.net/sharepoint/trackback.axd?id=7e7814db-477c-46ee-9be8-7ff35b743313</trackback:ping>
      <wfw:comment>http://phet.net/sharepoint/post/When-to-Schedule-those-Timer-Jobs.aspx#comment</wfw:comment>
      <wfw:commentRss>http://phet.net/sharepoint/syndication.axd?post=7e7814db-477c-46ee-9be8-7ff35b743313</wfw:commentRss>
    </item>
    <item>
      <title>Sharepoint and Apollo 11</title>
      <description>&lt;p&gt;I grew up in that period after the moon landings where enthusiasm for the whole venture was drilled into you. Everyone was still really impressed during that time, and I have to say I&amp;#39;ve still got it bad. Hearing recordings of chatter between CAPCOM and The Astronauts still gives me goosebumps. So imagine my excitement recently as the 40th anniversary of the first moon landing comes around. The media coverage, special programmes, and websites like&amp;nbsp;&lt;a href="http://wechoosethemoon.org/"&gt;http://wechoosethemoon.org/&lt;/a&gt;&amp;nbsp;are just heavenly!&lt;/p&gt;&lt;p&gt;From an IT geek point of view I also rather enjoyed the publication of some of the Apollo 11 computer source code, which you can find here:&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="font-family: arial; font-size: 13px; border-collapse: collapse"&gt;&lt;a style="color: #2a5db0" href="http://code.google.com/p/virtualagc/source/browse/trunk/Comanche055/CM_BODY_ATTITUDE.s?r=258" target="_blank"&gt;http://code.google.com/p/virtualagc/source/browse/trunk/Comanche055/CM_BODY_ATTITUDE.s?r=258&lt;/a&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;Then I heard about a new collectable book coming out in a few days from Taschen:&amp;nbsp;Norman Mailer, MoonFire: The Epic Journey of Apollo 11&amp;nbsp;. Great author, great photos, then to cap it all I find out there&amp;#39;ll only be 1969 copies printed, and each one will come with a signed photo of Buzz Aldrin!! Obviously, I dashed over to the Taschen website immediately.&amp;nbsp;&lt;a href="https://www.taschen.com/pages/en/catalogue/artists_editions/all/05093/facts.norman_mailer_moonfire_the_epic_journey_of_apollo_11.htm"&gt;https://www.taschen.com/pages/en/catalogue/artists_editions/all/05093/facts.norman_mailer_moonfire_the_epic_journey_of_apollo_11.htm&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Now I have to say that $1000 / &amp;pound;650 for a book is pretty damn steep. Then I noticed that the Taschen website is a Sharepoint site. It all fell into place - heck Sharepoint Consultants are hard to come by ;) . They have to recoup the development cost from somewhere! Anyway, that was my Sharepoint link, stop reading now if you&amp;#39;re not an Apollo nut like me.&lt;/p&gt;&lt;p&gt;&amp;nbsp;The Apollo frenzy is such at the moment that I was poised to push the buy button, even at so cosmic a price. It&amp;#39;s worth it for the Buzz Aldrin autograph alone I told myself. Buzz Aldrin authographs sell on eBay for more money than that! Then I decided to sanity check the purchase, and visited the decidedly non-Sharepoint site over at Amazon.com. Lo and behold they&amp;#39;re selling the very same tome for 20% less over there.&lt;/p&gt;&lt;p&gt;So, I really did press the buy button this time. I couldn&amp;#39;t help myself. (If the wife is reading, this purchase is paid for by all the overtime I&amp;#39;ve been working on my current project!! )&lt;/p&gt;&lt;p&gt;Feel free to call me mad for buying such an expensive book, but I have to say it feels like owning a little piece of Apollo history. The Buzz Aldrin autograph just swings it. &amp;nbsp;&lt;/p&gt;&lt;p&gt;You should check it out too, with only 1969 copies in total being printed they won&amp;#39;t last for long. I&amp;#39;m not the only Apollo nut in the world!&amp;nbsp;&lt;/p&gt;&lt;br /&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?t=thenorthcom-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=3836511797&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" frameborder="0" style="width: 120px; height: 240px"&gt;&lt;/iframe&gt;</description>
      <link>http://phet.net/sharepoint/post/Sharepoint-and-Apollo-11.aspx</link>
      <author>JamieMcAllister</author>
      <comments>http://phet.net/sharepoint/post/Sharepoint-and-Apollo-11.aspx#comment</comments>
      <guid>http://phet.net/sharepoint/post.aspx?id=72074b6d-f951-4690-9ed6-983320daaa97</guid>
      <pubDate>Fri, 17 Jul 2009 13:35:00 -0500</pubDate>
      <category>Sharepoint</category>
      <dc:publisher>JamieMcAllister</dc:publisher>
      <pingback:server>http://phet.net/sharepoint/pingback.axd</pingback:server>
      <pingback:target>http://phet.net/sharepoint/post.aspx?id=72074b6d-f951-4690-9ed6-983320daaa97</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://phet.net/sharepoint/trackback.axd?id=72074b6d-f951-4690-9ed6-983320daaa97</trackback:ping>
      <wfw:comment>http://phet.net/sharepoint/post/Sharepoint-and-Apollo-11.aspx#comment</wfw:comment>
      <wfw:commentRss>http://phet.net/sharepoint/syndication.axd?post=72074b6d-f951-4690-9ed6-983320daaa97</wfw:commentRss>
    </item>
    <item>
      <title>Sharepoint 2010 Sneak Peeks</title>
      <description>&lt;p&gt;The Sharepoint 2010 Teasers are available. I do like the sound of some of them! Time to brush up on your Silverlight as it will become very useful in Sharepoint 2010.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Check out the summary and videos:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;http://sharepoint.microsoft.com/2010/Sneak_Peek/Pages/Overview-Video.aspx&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;http://sharepoint.microsoft.com/2010/Sneak_Peek/Pages/Developer-Video.aspx&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;http://sharepoint.microsoft.com/2010/Sneak_Peek/Pages/IT-Pro-Video.aspx&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <link>http://phet.net/sharepoint/post/Sharepoint-2010-Sneak-Peeks.aspx</link>
      <author>JamieMcAllister</author>
      <comments>http://phet.net/sharepoint/post/Sharepoint-2010-Sneak-Peeks.aspx#comment</comments>
      <guid>http://phet.net/sharepoint/post.aspx?id=f4dcc1b4-7dce-482e-8a0f-7ac3f6dce04e</guid>
      <pubDate>Mon, 13 Jul 2009 23:24:00 -0500</pubDate>
      <category>sharepoint 2010</category>
      <dc:publisher>JamieMcAllister</dc:publisher>
      <pingback:server>http://phet.net/sharepoint/pingback.axd</pingback:server>
      <pingback:target>http://phet.net/sharepoint/post.aspx?id=f4dcc1b4-7dce-482e-8a0f-7ac3f6dce04e</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://phet.net/sharepoint/trackback.axd?id=f4dcc1b4-7dce-482e-8a0f-7ac3f6dce04e</trackback:ping>
      <wfw:comment>http://phet.net/sharepoint/post/Sharepoint-2010-Sneak-Peeks.aspx#comment</wfw:comment>
      <wfw:commentRss>http://phet.net/sharepoint/syndication.axd?post=f4dcc1b4-7dce-482e-8a0f-7ac3f6dce04e</wfw:commentRss>
    </item>
    <item>
      <title>Typical Integration Issues</title>
      <description>&lt;p&gt;
I&amp;#39;m currently working on a public MOSS Publishing site. As is normal on such projects, code is being cut on Virtual Machines on the developer PCs, and later placed in an integration environment to make sure it works. A couple of errors arose recently during the integration&amp;nbsp;of web parts&amp;nbsp;which I think are worthy of note.
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;First, a web part is added to a page layout. The page refuses to render with the error &amp;quot;Compiler Error CS0117 &amp;#39;Type&amp;#39; does not contain a definition for &amp;#39;Identifier&amp;#39; &amp;quot;. This was most confusing as it works fine on the dev machine and well frankly the error message doesn&amp;#39;t give a good hint. Eventually I googled this; &lt;a href="http://msdn.microsoft.com/en-us/library/c4aad8at(vs.80).aspx"&gt;http://msdn.microsoft.com/en-us/library/c4aad8at(vs.80).aspx&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
In the mad rush to develop the web parts, the developer had kept the default namespace and class name in the project. These were the same, and that was causing this error in Integration (but not dev). Following the good practise of changing the namspaces to a standard one for the functional area (and no longer being the same as the class name) fixed this issue. 
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;Second issue of note. One web part renders a Link button. As you probably know this uses javascript to action the postback. Clicking on the Link button in Integration gives the javascript error message &amp;quot;&amp;#39;null&amp;#39; is null or not an object&amp;quot;. I didn&amp;#39;t find any specific article that nailed this one, but I saw enough to give me a hunch it was a validation control&amp;nbsp;issue. For some reason, the required&amp;nbsp;field validator rendered by another web part on the page seemed to cause this error. Removing that validator fixed the issue. Luckily the validator was overkill and could be removed. In the mad rush of projects we didn&amp;#39;t check all the options. It could be that turning off the validators client side javascript property would&amp;#39;ve done it, but hey what can I do? Our release date looms large!&amp;nbsp; ;)
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
</description>
      <link>http://phet.net/sharepoint/post/Typical-Integration-Issues.aspx</link>
      <author>JamieMcAllister</author>
      <comments>http://phet.net/sharepoint/post/Typical-Integration-Issues.aspx#comment</comments>
      <guid>http://phet.net/sharepoint/post.aspx?id=5d6e2c44-1586-472d-8b77-2a43a750e307</guid>
      <pubDate>Sat, 20 Jun 2009 10:31:00 -0500</pubDate>
      <category>.NET</category>
      <category>Bug</category>
      <category>Sharepoint</category>
      <category>WCM</category>
      <dc:publisher>JamieMcAllister</dc:publisher>
      <pingback:server>http://phet.net/sharepoint/pingback.axd</pingback:server>
      <pingback:target>http://phet.net/sharepoint/post.aspx?id=5d6e2c44-1586-472d-8b77-2a43a750e307</pingback:target>
      <slash:comments>2</slash:comments>
      <trackback:ping>http://phet.net/sharepoint/trackback.axd?id=5d6e2c44-1586-472d-8b77-2a43a750e307</trackback:ping>
      <wfw:comment>http://phet.net/sharepoint/post/Typical-Integration-Issues.aspx#comment</wfw:comment>
      <wfw:commentRss>http://phet.net/sharepoint/syndication.axd?post=5d6e2c44-1586-472d-8b77-2a43a750e307</wfw:commentRss>
    </item>
    <item>
      <title>Service with a Smile</title>
      <description>&lt;p&gt;A representative of Microsoft contacted me recently to discuss some of the Variations bugs I&amp;#39;ve described in this blog. In a nice proactive way they seem to be looking at the errors described online and trying to reproduce them, with a view to a fix.&lt;/p&gt;&lt;p&gt;With my customer hat on I have to say I&amp;#39;m quite pleased with such behaviour. Sharepoint is an important product that deserves to be the best it can be. This sort of action by Microsoft is a positive move to achieving that.&amp;nbsp;&lt;/p&gt;&lt;p&gt;The two issues we discussed were Variations breaking when a site url is renamed, and where deleting a variation label trashes the Relationships List. I no longer work for the company who experienced the url rename issue, but I was able to broker an introduction between them and the Microsoft rep. The Variation Label issue was reproduced after a round of email between Redmond and I.&lt;/p&gt;&lt;p&gt;&amp;nbsp;All in all quite satisfying. Now they know I&amp;#39;m not making these bugs up! ;)&amp;nbsp;&lt;/p&gt;</description>
      <link>http://phet.net/sharepoint/post/Service-with-a-Smile.aspx</link>
      <author>JamieMcAllister</author>
      <comments>http://phet.net/sharepoint/post/Service-with-a-Smile.aspx#comment</comments>
      <guid>http://phet.net/sharepoint/post.aspx?id=ed553650-4605-4e0f-b534-356419f50225</guid>
      <pubDate>Mon, 04 May 2009 17:46:00 -0500</pubDate>
      <category>Bug</category>
      <category>Patches</category>
      <category>Sharepoint</category>
      <category>Variations</category>
      <dc:publisher>JamieMcAllister</dc:publisher>
      <pingback:server>http://phet.net/sharepoint/pingback.axd</pingback:server>
      <pingback:target>http://phet.net/sharepoint/post.aspx?id=ed553650-4605-4e0f-b534-356419f50225</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://phet.net/sharepoint/trackback.axd?id=ed553650-4605-4e0f-b534-356419f50225</trackback:ping>
      <wfw:comment>http://phet.net/sharepoint/post/Service-with-a-Smile.aspx#comment</wfw:comment>
      <wfw:commentRss>http://phet.net/sharepoint/syndication.axd?post=ed553650-4605-4e0f-b534-356419f50225</wfw:commentRss>
    </item>
    <item>
      <title>Sharepoint SP2 a boon to Variations</title>
      <description>&lt;p&gt;Noticed today that details of Sharepoint SP2 have been posted on the Office Sustained Engineering blog. It&amp;#39;s particularly interesting to me that the ECM improvements in the service pack are mostly targetted at variations.&lt;/p&gt;&lt;p&gt;Here&amp;#39;s an extract of what it says;&lt;/p&gt;&lt;p&gt;&amp;quot;The performance and stability of content deployment and variations feature has been improved.&lt;/p&gt;&lt;p&gt;A new tool has been added to the STSADM command-line utility that enables a SharePoint administrator to scan sites that use the variations feature for errors.&amp;quot;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Glad to see they&amp;#39;re not giving up on Variations. Very curious to see what they ultimately do with them in Sharepoint 2010.&amp;nbsp;&lt;/p&gt;</description>
      <link>http://phet.net/sharepoint/post/Sharepoint-SP2-a-boon-to-Variations.aspx</link>
      <author>JamieMcAllister</author>
      <comments>http://phet.net/sharepoint/post/Sharepoint-SP2-a-boon-to-Variations.aspx#comment</comments>
      <guid>http://phet.net/sharepoint/post.aspx?id=98d10174-5a55-4946-aa70-46e0596443b7</guid>
      <pubDate>Thu, 16 Apr 2009 16:41:00 -0500</pubDate>
      <category>Sharepoint</category>
      <category>Variations</category>
      <category>WCM</category>
      <category>Service Pack 2</category>
      <dc:publisher>JamieMcAllister</dc:publisher>
      <pingback:server>http://phet.net/sharepoint/pingback.axd</pingback:server>
      <pingback:target>http://phet.net/sharepoint/post.aspx?id=98d10174-5a55-4946-aa70-46e0596443b7</pingback:target>
      <slash:comments>2</slash:comments>
      <trackback:ping>http://phet.net/sharepoint/trackback.axd?id=98d10174-5a55-4946-aa70-46e0596443b7</trackback:ping>
      <wfw:comment>http://phet.net/sharepoint/post/Sharepoint-SP2-a-boon-to-Variations.aspx#comment</wfw:comment>
      <wfw:commentRss>http://phet.net/sharepoint/syndication.axd?post=98d10174-5a55-4946-aa70-46e0596443b7</wfw:commentRss>
    </item>
    <item>
      <title>Sharepoint Space Monitor</title>
      <description>&lt;p&gt;How can you monitor the disk space usage in your site collection? Just how much space is that subsite taking up?&lt;/p&gt;&lt;p&gt;Up until now the only suggestion might have been to use the&amp;nbsp;&amp;nbsp;_layouts/storman.aspx page. This was unsatisfactory however because it required Site Quotas to be set, and didn&amp;#39;t report size by site. If those compromises didn&amp;#39;t work for you, then custom coding was your next option.&lt;/p&gt;&lt;p&gt;That&amp;#39;s not required anymore! Tim Dobrinski has been coding his cotton socks off again to produce another free tool for the Sharepoint community. His Sharepoint Space Monitor should nail the Sharepoint Site size reporting issue once and for all.&lt;/p&gt;&lt;p&gt;As I say, the tool is free, and can be found via this link;&amp;nbsp;&lt;a href="http://www.thesug.org/blogs/lsuslinky/SSM/Pages/default.aspx"&gt;http://www.thesug.org/blogs/lsuslinky/SSM/Pages/default.aspx&lt;/a&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&lt;/p&gt;</description>
      <link>http://phet.net/sharepoint/post/Sharepoint-Space-Monitor.aspx</link>
      <author>JamieMcAllister</author>
      <comments>http://phet.net/sharepoint/post/Sharepoint-Space-Monitor.aspx#comment</comments>
      <guid>http://phet.net/sharepoint/post.aspx?id=a5475b15-86f2-4e5e-bbea-883ddf7080e8</guid>
      <pubDate>Mon, 23 Feb 2009 12:54:00 -0500</pubDate>
      <category>.NET</category>
      <category>Content Database</category>
      <category>Sharepoint</category>
      <category>Utility</category>
      <dc:publisher>JamieMcAllister</dc:publisher>
      <pingback:server>http://phet.net/sharepoint/pingback.axd</pingback:server>
      <pingback:target>http://phet.net/sharepoint/post.aspx?id=a5475b15-86f2-4e5e-bbea-883ddf7080e8</pingback:target>
      <slash:comments>1</slash:comments>
      <trackback:ping>http://phet.net/sharepoint/trackback.axd?id=a5475b15-86f2-4e5e-bbea-883ddf7080e8</trackback:ping>
      <wfw:comment>http://phet.net/sharepoint/post/Sharepoint-Space-Monitor.aspx#comment</wfw:comment>
      <wfw:commentRss>http://phet.net/sharepoint/syndication.axd?post=a5475b15-86f2-4e5e-bbea-883ddf7080e8</wfw:commentRss>
    </item>
    <item>
      <title>Content Type Limits in MOSS</title>
      <description>&lt;p&gt;
Someone asked me an interesting question recently; 
&lt;/p&gt;
&lt;p&gt;
&amp;ldquo;Is there a limit on the number of content types that one can add to a list or library ?&amp;rdquo; 
&lt;/p&gt;
&lt;p&gt;
This isn&amp;rsquo;t something I&amp;rsquo;d ever seen documented, so I started looking for the answer. Eventually, I found some comments about a post by Martin Kearn at this page; &lt;a href="http://blogs.msdn.com/martinkearn/archive/2006/03/27/561809.aspx"&gt;http://blogs.msdn.com/martinkearn/archive/2006/03/27/561809.aspx&lt;/a&gt; 
&lt;/p&gt;
&lt;p&gt;
His comment answered basically the same question, and he stated &amp;ldquo;there is no hard limit in terms of the number you can have. The only hard limit in the product is that the total size of all content type schema on the list cannot exceed 2GB&amp;rdquo;. 
&lt;/p&gt;
&lt;p&gt;
I was glad to finally have some sort of answer, but two things worried me; &lt;br /&gt;
1. I don&amp;rsquo;t like taking such answers at face value without verifying the facts myself&lt;br /&gt;
2. His comment addressed MOSS 2007 beta 2, rather than the current released version 
&lt;/p&gt;
&lt;p&gt;
So, how to verify this myself? I didn&amp;rsquo;t fancy creating 2Gb of Content Type Schema to load into a list, there had to be a better way! Then I got one of those hunches, it might not be a hard-coded limit, maybe it was SQL Server inspired? 
&lt;/p&gt;
&lt;p&gt;
I popped open a copy of a MOSS 2007 Content Database on my sandbox environment (&amp;lsquo;cause we&amp;rsquo;d never do that on a Production environment! Right kids?!). The AllLists table seemed to be winking at me straight away, and sure enough it contained a column called tp_ContentTypes. Within that column I could see the Content Type schema for a particular list there in plain text. The data type of the column was ntext. &amp;lsquo;Eureka!&amp;rsquo; as a clever naked Greek once famously shouted. NText is 2 gigabytes in size, and that&amp;rsquo;s where the limit comes from. 
&lt;/p&gt;
&lt;p&gt;
There could be some limits in the source code of MOSS as well, but they&amp;rsquo;d not be too easy to track down! I feel fairly satisfied with the answer. 
&lt;/p&gt;
&lt;p&gt;
As for the lack of documentation on the topic, well, I guess this blog post will have to do! 
&lt;/p&gt;
</description>
      <link>http://phet.net/sharepoint/post/Content-Type-Limits-in-MOSS.aspx</link>
      <author>JamieMcAllister</author>
      <comments>http://phet.net/sharepoint/post/Content-Type-Limits-in-MOSS.aspx#comment</comments>
      <guid>http://phet.net/sharepoint/post.aspx?id=26236354-2e45-4a38-aa49-1bd6d7a0d99d</guid>
      <pubDate>Fri, 20 Feb 2009 16:16:00 -0500</pubDate>
      <category>Sharepoint</category>
      <category>Content Database</category>
      <category>Content Type</category>
      <dc:publisher>JamieMcAllister</dc:publisher>
      <pingback:server>http://phet.net/sharepoint/pingback.axd</pingback:server>
      <pingback:target>http://phet.net/sharepoint/post.aspx?id=26236354-2e45-4a38-aa49-1bd6d7a0d99d</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://phet.net/sharepoint/trackback.axd?id=26236354-2e45-4a38-aa49-1bd6d7a0d99d</trackback:ping>
      <wfw:comment>http://phet.net/sharepoint/post/Content-Type-Limits-in-MOSS.aspx#comment</wfw:comment>
      <wfw:commentRss>http://phet.net/sharepoint/syndication.axd?post=26236354-2e45-4a38-aa49-1bd6d7a0d99d</wfw:commentRss>
    </item>
    <item>
      <title>Make Your Fortune from Sharepoint Blogging</title>
      <description>&lt;p&gt;
The blog is approaching a year old, so I though it&amp;#39;d be fun to show how the visitor numbers have increased for this blog over that time. I use Google Analytics&amp;nbsp;to gather stats about this site. If you haven&amp;#39;t checked it out you should. It can also be used on Sharepoint portals, but that&amp;#39;s another story. Anyway, I enabled Analytics at the start of February 2008, and this is how the visitor graph looks;&amp;nbsp;&amp;nbsp; 
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://phet.net/sharepoint/image.axd?picture=MainGraphsmall.JPG" alt="" width="677" height="159" /&gt;&amp;nbsp; 
&lt;/p&gt;
&lt;p&gt;
You can see a definate ramp up of visitor numbers there, hitting about 70 a day now. The growth has been steady with a dip for Christmas when people were more concerned with Turkey dinners than Sharepoint. The zig zag nature of the graph amuses me too - no-one is bothered about Sharepoint at the weekend, it&amp;#39;s just a work thing OK! ;) I don&amp;#39;t have the stats to compare, but it would be interesting to know how Sharepoint adoption grew during the same period. 
&lt;/p&gt;
&lt;p&gt;
The next stat shows the visits and page views for the period. Impressed at the average time on page, some of these postings are actually being read! 
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://phet.net/sharepoint/image.axd?picture=PageViews.JPG" alt="" width="641" height="69" /&gt; 
&lt;/p&gt;
&lt;p&gt;
Where do my blog hits come from? Here is the answer; 
&lt;/p&gt;
&lt;table border="0" width="300" class="records table_view" id="f_table_data"&gt;
	&lt;tbody id="f_tbody_0"&gt;
		&lt;tr class="highlight"&gt;
			&lt;td class="count"&gt;1.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment0" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="#" onclick="table._drillDown(0); return false;"&gt;United States &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_0_0" class="sort" style="width: 17px"&gt;2,614 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_1"&gt;
		&lt;tr&gt;
			&lt;td class="count"&gt;2.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment1" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="#" onclick="table._drillDown(1); return false;"&gt;United Kingdom &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_1_0" class="sort" style="width: 17px"&gt;744 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_2"&gt;
		&lt;tr class="highlight"&gt;
			&lt;td class="count"&gt;3.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment2" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="#" onclick="table._drillDown(2); return false;"&gt;India &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_2_0" class="sort" style="width: 17px"&gt;603 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_3"&gt;
		&lt;tr&gt;
			&lt;td class="count"&gt;4.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment3" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="#" onclick="table._drillDown(3); return false;"&gt;Canada &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_3_0" class="sort" style="width: 17px"&gt;436 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_4"&gt;
		&lt;tr class="highlight"&gt;
			&lt;td class="count"&gt;5.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment4" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="#" onclick="table._drillDown(4); return false;"&gt;Netherlands &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_4_0" class="sort" style="width: 17px"&gt;278 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_5"&gt;
		&lt;tr&gt;
			&lt;td class="count"&gt;6.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment5" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="#" onclick="table._drillDown(5); return false;"&gt;Australia &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_5_0" class="sort" style="width: 17px"&gt;266 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_6"&gt;
		&lt;tr class="highlight"&gt;
			&lt;td class="count"&gt;7.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment6" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="#" onclick="table._drillDown(6); return false;"&gt;France &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_6_0" class="sort" style="width: 17px"&gt;212 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_7"&gt;
		&lt;tr&gt;
			&lt;td class="count"&gt;8.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment7" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="#" onclick="table._drillDown(7); return false;"&gt;Germany &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_7_0" class="sort" style="width: 17px"&gt;182 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_8"&gt;
		&lt;tr class="highlight"&gt;
			&lt;td class="count"&gt;9.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment8" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="#" onclick="table._drillDown(8); return false;"&gt;Denmark &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_8_0" class="sort" style="width: 17px"&gt;157 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_9"&gt;
		&lt;tr&gt;
			&lt;td class="count"&gt;10.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment9" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="#" onclick="table._drillDown(9); return false;"&gt;Switzerland &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_9_0" class="sort" style="width: 17px"&gt;151 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
Our good friends in the USA seem the most interested in Sharepoint. Quite a &amp;#39;western world&amp;#39; centric set of stats really, except for a very creditable third place by India. [India is the cradle of mathematics, and now an I.T. powerhouse! Some connection perhaps?] 
&lt;/p&gt;
&lt;p&gt;
I had 98 countries listed in the stats, want to see the bottom ten? 
&lt;/p&gt;
&lt;table border="0" width="300" class="records table_view" id="f_table_data"&gt;
	&lt;tbody id="f_tbody_87"&gt;
		&lt;tr&gt;
			&lt;td class="count"&gt;88.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment87" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="https://www.google.com/analytics/reporting/maps?id=6993571&amp;amp;pdr=20080205-20090122&amp;amp;cmp=average&amp;amp;trows=10&amp;amp;gdfmt=nth_day&amp;amp;rpt=GeoMapReport&amp;amp;tab=0&amp;amp;tchcol=0&amp;amp;tst=0&amp;amp;tscol=0&amp;amp;tsdir=0&amp;amp;mdet=WORLD&amp;amp;midx=0&amp;amp;gidx=0&amp;amp;glcnt=1&amp;amp;gdfmt=nth_day#" onclick="table._drillDown(87); return false;"&gt;Uganda &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_87_0" class="sort"&gt;1 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_88"&gt;
		&lt;tr class="highlight"&gt;
			&lt;td class="count"&gt;89.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment88" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="https://www.google.com/analytics/reporting/maps?id=6993571&amp;amp;pdr=20080205-20090122&amp;amp;cmp=average&amp;amp;trows=10&amp;amp;gdfmt=nth_day&amp;amp;rpt=GeoMapReport&amp;amp;tab=0&amp;amp;tchcol=0&amp;amp;tst=0&amp;amp;tscol=0&amp;amp;tsdir=0&amp;amp;mdet=WORLD&amp;amp;midx=0&amp;amp;gidx=0&amp;amp;glcnt=1&amp;amp;gdfmt=nth_day#" onclick="table._drillDown(88); return false;"&gt;Tunisia &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_88_0" class="sort"&gt;1 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_89"&gt;
		&lt;tr&gt;
			&lt;td class="count"&gt;90.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment89" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="https://www.google.com/analytics/reporting/maps?id=6993571&amp;amp;pdr=20080205-20090122&amp;amp;cmp=average&amp;amp;trows=10&amp;amp;gdfmt=nth_day&amp;amp;rpt=GeoMapReport&amp;amp;tab=0&amp;amp;tchcol=0&amp;amp;tst=0&amp;amp;tscol=0&amp;amp;tsdir=0&amp;amp;mdet=WORLD&amp;amp;midx=0&amp;amp;gidx=0&amp;amp;glcnt=1&amp;amp;gdfmt=nth_day#" onclick="table._drillDown(89); return false;"&gt;Iraq &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_89_0" class="sort"&gt;1 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_90"&gt;
		&lt;tr class="highlight"&gt;
			&lt;td class="count"&gt;91.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment90" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="https://www.google.com/analytics/reporting/maps?id=6993571&amp;amp;pdr=20080205-20090122&amp;amp;cmp=average&amp;amp;trows=10&amp;amp;gdfmt=nth_day&amp;amp;rpt=GeoMapReport&amp;amp;tab=0&amp;amp;tchcol=0&amp;amp;tst=0&amp;amp;tscol=0&amp;amp;tsdir=0&amp;amp;mdet=WORLD&amp;amp;midx=0&amp;amp;gidx=0&amp;amp;glcnt=1&amp;amp;gdfmt=nth_day#" onclick="table._drillDown(90); return false;"&gt;Jamaica &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_90_0" class="sort"&gt;1 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_91"&gt;
		&lt;tr&gt;
			&lt;td class="count"&gt;92.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment91" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="https://www.google.com/analytics/reporting/maps?id=6993571&amp;amp;pdr=20080205-20090122&amp;amp;cmp=average&amp;amp;trows=10&amp;amp;gdfmt=nth_day&amp;amp;rpt=GeoMapReport&amp;amp;tab=0&amp;amp;tchcol=0&amp;amp;tst=0&amp;amp;tscol=0&amp;amp;tsdir=0&amp;amp;mdet=WORLD&amp;amp;midx=0&amp;amp;gidx=0&amp;amp;glcnt=1&amp;amp;gdfmt=nth_day#" onclick="table._drillDown(91); return false;"&gt;Dominican Republic &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_91_0" class="sort"&gt;1 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_92"&gt;
		&lt;tr class="highlight"&gt;
			&lt;td class="count"&gt;93.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment92" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="https://www.google.com/analytics/reporting/maps?id=6993571&amp;amp;pdr=20080205-20090122&amp;amp;cmp=average&amp;amp;trows=10&amp;amp;gdfmt=nth_day&amp;amp;rpt=GeoMapReport&amp;amp;tab=0&amp;amp;tchcol=0&amp;amp;tst=0&amp;amp;tscol=0&amp;amp;tsdir=0&amp;amp;mdet=WORLD&amp;amp;midx=0&amp;amp;gidx=0&amp;amp;glcnt=1&amp;amp;gdfmt=nth_day#" onclick="table._drillDown(92); return false;"&gt;Nigeria &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_92_0" class="sort"&gt;1 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_93"&gt;
		&lt;tr&gt;
			&lt;td class="count"&gt;94.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment93" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="https://www.google.com/analytics/reporting/maps?id=6993571&amp;amp;pdr=20080205-20090122&amp;amp;cmp=average&amp;amp;trows=10&amp;amp;gdfmt=nth_day&amp;amp;rpt=GeoMapReport&amp;amp;tab=0&amp;amp;tchcol=0&amp;amp;tst=0&amp;amp;tscol=0&amp;amp;tsdir=0&amp;amp;mdet=WORLD&amp;amp;midx=0&amp;amp;gidx=0&amp;amp;glcnt=1&amp;amp;gdfmt=nth_day#" onclick="table._drillDown(93); return false;"&gt;Sudan &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_93_0" class="sort"&gt;1 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_94"&gt;
		&lt;tr class="highlight"&gt;
			&lt;td class="count"&gt;95.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment94" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="https://www.google.com/analytics/reporting/maps?id=6993571&amp;amp;pdr=20080205-20090122&amp;amp;cmp=average&amp;amp;trows=10&amp;amp;gdfmt=nth_day&amp;amp;rpt=GeoMapReport&amp;amp;tab=0&amp;amp;tchcol=0&amp;amp;tst=0&amp;amp;tscol=0&amp;amp;tsdir=0&amp;amp;mdet=WORLD&amp;amp;midx=0&amp;amp;gidx=0&amp;amp;glcnt=1&amp;amp;gdfmt=nth_day#" onclick="table._drillDown(94); return false;"&gt;Ivory Coast &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_94_0" class="sort"&gt;1 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_95"&gt;
		&lt;tr&gt;
			&lt;td class="count"&gt;96.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment95" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="https://www.google.com/analytics/reporting/maps?id=6993571&amp;amp;pdr=20080205-20090122&amp;amp;cmp=average&amp;amp;trows=10&amp;amp;gdfmt=nth_day&amp;amp;rpt=GeoMapReport&amp;amp;tab=0&amp;amp;tchcol=0&amp;amp;tst=0&amp;amp;tscol=0&amp;amp;tsdir=0&amp;amp;mdet=WORLD&amp;amp;midx=0&amp;amp;gidx=0&amp;amp;glcnt=1&amp;amp;gdfmt=nth_day#" onclick="table._drillDown(95); return false;"&gt;Armenia &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_95_0" class="sort"&gt;1 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_96"&gt;
		&lt;tr class="highlight"&gt;
			&lt;td class="count"&gt;97.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment96" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="https://www.google.com/analytics/reporting/maps?id=6993571&amp;amp;pdr=20080205-20090122&amp;amp;cmp=average&amp;amp;trows=10&amp;amp;gdfmt=nth_day&amp;amp;rpt=GeoMapReport&amp;amp;tab=0&amp;amp;tchcol=0&amp;amp;tst=0&amp;amp;tscol=0&amp;amp;tsdir=0&amp;amp;mdet=WORLD&amp;amp;midx=0&amp;amp;gidx=0&amp;amp;glcnt=1&amp;amp;gdfmt=nth_day#" onclick="table._drillDown(96); return false;"&gt;Georgia &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_96_0" class="sort"&gt;1 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
	&lt;tbody id="f_tbody_97"&gt;
		&lt;tr&gt;
			&lt;td class="count"&gt;98.&lt;/td&gt;
			&lt;td class="text"&gt;
			&lt;div id="f_primary_segment97" class="text_wrapper"&gt;
			&lt;div class="text_wrapper"&gt;
			&lt;a href="https://www.google.com/analytics/reporting/maps?id=6993571&amp;amp;pdr=20080205-20090122&amp;amp;cmp=average&amp;amp;trows=10&amp;amp;gdfmt=nth_day&amp;amp;rpt=GeoMapReport&amp;amp;tab=0&amp;amp;tchcol=0&amp;amp;tst=0&amp;amp;tscol=0&amp;amp;tsdir=0&amp;amp;mdet=WORLD&amp;amp;midx=0&amp;amp;gidx=0&amp;amp;glcnt=1&amp;amp;gdfmt=nth_day#" onclick="table._drillDown(97); return false;"&gt;Bangladesh &lt;/a&gt;
			&lt;/div&gt;
			&lt;/div&gt;
			&lt;/td&gt;
			&lt;td id="f_cell_97_0" class="sort"&gt;1 &lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
So, have my nearly 12k of pageviews made my fortune? Not on your nelly! Here are the earnings stats for this month; 
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://phet.net/sharepoint/image.axd?picture=CashStats.JPG" alt="" width="683" height="285" /&gt; 
&lt;/p&gt;
&lt;p&gt;
You might conclude that I should take the ads off my site to save space for the articles! They&amp;#39;re not exactly meeting my web hosting costs just yet! 2 ad clicks per 550 page impressions is above average as I understand it, so a bit more work to do on my visitor volumes! Time to write a few more articles! Can we get up to 700 a day this time next year?
&lt;/p&gt;
</description>
      <link>http://phet.net/sharepoint/post/Make-Your-Fortune-from-Sharepoint-Blogging.aspx</link>
      <author>JamieMcAllister</author>
      <comments>http://phet.net/sharepoint/post/Make-Your-Fortune-from-Sharepoint-Blogging.aspx#comment</comments>
      <guid>http://phet.net/sharepoint/post.aspx?id=89c77ccd-6cb2-46a0-a0b3-c16a211f3679</guid>
      <pubDate>Fri, 23 Jan 2009 14:53:00 -0500</pubDate>
      <category>Blogging</category>
      <dc:publisher>JamieMcAllister</dc:publisher>
      <pingback:server>http://phet.net/sharepoint/pingback.axd</pingback:server>
      <pingback:target>http://phet.net/sharepoint/post.aspx?id=89c77ccd-6cb2-46a0-a0b3-c16a211f3679</pingback:target>
      <slash:comments>2</slash:comments>
      <trackback:ping>http://phet.net/sharepoint/trackback.axd?id=89c77ccd-6cb2-46a0-a0b3-c16a211f3679</trackback:ping>
      <wfw:comment>http://phet.net/sharepoint/post/Make-Your-Fortune-from-Sharepoint-Blogging.aspx#comment</wfw:comment>
      <wfw:commentRss>http://phet.net/sharepoint/syndication.axd?post=89c77ccd-6cb2-46a0-a0b3-c16a211f3679</wfw:commentRss>
    </item>
    <item>
      <title>Programmatically creating Variation Hierarchies in SharePoint 2007</title>
      <description>&lt;p&gt;
Some time ago I highlighted a blog post by Michiel Lankamp regarding the creation of Variation Hierarchies through code.
&lt;/p&gt;
&lt;p&gt;
Waldek Mastykarz has posted an interesting article where he builds on Michiel Lankamps work.
&lt;/p&gt;
&lt;p&gt;
The post can be found here;&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://blog.mastykarz.nl/programmatically-creating-variation-hierarchies-sharepoint-2007/"&gt;http://blog.mastykarz.nl/programmatically-creating-variation-hierarchies-sharepoint-2007/&lt;/a&gt;
&lt;/p&gt;
</description>
      <link>http://phet.net/sharepoint/post/Programmatically-creating-Variation-Hierarchies-in-SharePoint-2007.aspx</link>
      <author>JamieMcAllister</author>
      <comments>http://phet.net/sharepoint/post/Programmatically-creating-Variation-Hierarchies-in-SharePoint-2007.aspx#comment</comments>
      <guid>http://phet.net/sharepoint/post.aspx?id=aa54e6b3-071b-4ff7-88b2-786194630472</guid>
      <pubDate>Wed, 07 Jan 2009 17:14:00 -0500</pubDate>
      <category>.NET</category>
      <category>Sharepoint</category>
      <category>Variations</category>
      <dc:publisher>JamieMcAllister</dc:publisher>
      <pingback:server>http://phet.net/sharepoint/pingback.axd</pingback:server>
      <pingback:target>http://phet.net/sharepoint/post.aspx?id=aa54e6b3-071b-4ff7-88b2-786194630472</pingback:target>
      <slash:comments>2</slash:comments>
      <trackback:ping>http://phet.net/sharepoint/trackback.axd?id=aa54e6b3-071b-4ff7-88b2-786194630472</trackback:ping>
      <wfw:comment>http://phet.net/sharepoint/post/Programmatically-creating-Variation-Hierarchies-in-SharePoint-2007.aspx#comment</wfw:comment>
      <wfw:commentRss>http://phet.net/sharepoint/syndication.axd?post=aa54e6b3-071b-4ff7-88b2-786194630472</wfw:commentRss>
    </item>
    <item>
      <title>A Festive Post</title>
      <description>&lt;p&gt;One of my relatives wrote this tale of Christmas&amp;#39; past. Set in the period that the country was last bankrupt (50 years later and we&amp;#39;re back!!)&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="color: #444444; font-family: 'Segoe UI'; font-size: 13px"&gt;When I was a child the one big event of the year apart from your birthday was Christmas.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="color: #444444; font-family: 'Segoe UI'; font-size: 13px"&gt;&lt;br /&gt;In the 1950&amp;#39;s we didnt receive much in material goods and the thought of receiving presents from Santa Claus was a magical feeling.&lt;br /&gt;I think we appreciated this event so much in those days because of the lack of money and to receive anything wrapped up in Christmas wrapping paper was like being given a million pounds.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="color: #444444; font-family: 'Segoe UI'; font-size: 13px"&gt;&lt;br /&gt;I remember that on Christmas Eve, my younger sister and I would be bathed and our hair washed.&amp;nbsp; We would put rags in our hair to give us ringlets as we did not have any electric hair tools like there is now.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="color: #444444; font-family: 'Segoe UI'; font-size: 13px"&gt;&lt;br /&gt;We were so excited and we would go to bed with pillowcases looking forward to waking up to a pillowcase full of presents.&lt;br /&gt;We used to wake up about 4 or 5 o&amp;#39;clock with the excitement.&amp;nbsp; We always had an apple and orange in the sack and I would have the Beano annual and my sister would have the Dandy.&amp;nbsp; There would be a few chocolates and the main present which could be a doll or in one year for me was a watch.&amp;nbsp; There wasn&amp;#39;t much but it meant the world to me and my sister.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="color: #444444; font-family: 'Segoe UI'; font-size: 13px"&gt;&lt;br /&gt;We would sit in the cold room reading our Annuals until Mum woke up and went downstairs to light the coal fire, then we could go downstairs.&lt;br /&gt;We then looked forward to the Christmas dinner.&amp;nbsp; I remember we either had pork or lamb and one year we had a chicken which was unusual as we hardly had chicken in those days.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="color: #444444; font-family: 'Segoe UI'; font-size: 13px"&gt;&lt;br /&gt;There was always lots of vegetables and I loved roast potatoes and hated sprouts. It was a glorious time and if it snowed on Christmas day that was a bonus as it was so magical and just like in the movies.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="color: #444444; font-family: 'Segoe UI'; font-size: 13px"&gt;&lt;br /&gt;It was also one of the only times we were altogether as a family as my Dad was always working and my two older brothers were at work as they were alot older than my sister and I.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="color: #444444; font-family: 'Segoe UI'; font-size: 13px"&gt;&lt;br /&gt;The Christmas tree had a few baubles on it and we never had any lights as they were too expensive then. Loved the whole experience and miss it all now that the kids have grown up, my parents have passed away and all you have is the memory, but it was and is a good memory.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="color: #444444; font-family: 'Segoe UI'; font-size: 13px"&gt;Bless childhood and I wish everyone could have the same love and excitement as we had even though we had nowt&amp;#39; as they say in Yorkshire,&lt;/span&gt;&amp;nbsp;&lt;/p&gt;</description>
      <link>http://phet.net/sharepoint/post/A-Festive-Post.aspx</link>
      <author>JamieMcAllister</author>
      <comments>http://phet.net/sharepoint/post/A-Festive-Post.aspx#comment</comments>
      <guid>http://phet.net/sharepoint/post.aspx?id=262695dd-22f6-48d5-88f7-6f1700be4552</guid>
      <pubDate>Sun, 21 Dec 2008 19:08:00 -0500</pubDate>
      <dc:publisher>JamieMcAllister</dc:publisher>
      <pingback:server>http://phet.net/sharepoint/pingback.axd</pingback:server>
      <pingback:target>http://phet.net/sharepoint/post.aspx?id=262695dd-22f6-48d5-88f7-6f1700be4552</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://phet.net/sharepoint/trackback.axd?id=262695dd-22f6-48d5-88f7-6f1700be4552</trackback:ping>
      <wfw:comment>http://phet.net/sharepoint/post/A-Festive-Post.aspx#comment</wfw:comment>
      <wfw:commentRss>http://phet.net/sharepoint/syndication.axd?post=262695dd-22f6-48d5-88f7-6f1700be4552</wfw:commentRss>
    </item>
    <item>
      <title>Overriding Sharepoint Page Render method</title>
      <description>&lt;p style="margin: 0cm 0cm 0pt" class="MsoNormal"&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;Today&amp;rsquo;s article is taken from another real world problem. &lt;/font&gt;&lt;/span&gt;
&lt;/p&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin: 0cm 0cm 0pt" class="MsoNormal"&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;One of my MOSS portals hosts a large amount of Business Process documentation as MOSS Publishing Pages. The original MS Word based documentation that these pages sprang from now bears little relation to the most recent guidance in MOSS. &lt;/font&gt;&lt;/span&gt;
&lt;/p&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin: 0cm 0cm 0pt" class="MsoNormal"&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;The business want to be able to transform the MOSS Publishing Pages into &amp;ldquo;MS Word 2003&amp;rdquo; compatible documents at will. You might have heard of Document Converters, a MOSS feature that converts documents into publishing pages? This requirement was like that, but in reverse, and definitely not available out of the box.&lt;/font&gt;&lt;/span&gt; 
&lt;/p&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin: 0cm 0cm 0pt" class="MsoNormal"&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;I quickly identified a commercial component that converts HTML mark-up to Rich Text Format documents. This seemed like an ideal path to take. RTF documents are feature rich enough for what was wanted and compatible with a wide variety of tools. RTF is an International Standard format. &lt;/font&gt;&lt;/span&gt;
&lt;/p&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin: 0cm 0cm 0pt" class="MsoNormal"&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;This still left the challenge of where to obtain the HTML representing the Publishing Page content. Using the Sharepoint API it&amp;rsquo;s easy enough to get hold of the mark-up within the fields of any publishing page. That isn&amp;rsquo;t enough though because the publishing page you see on screen is created from the content, the page layout, the master page, and CSS melded together.&lt;/font&gt;&lt;/span&gt; 
&lt;/p&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin: 0cm 0cm 0pt" class="MsoNormal"&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;Back in my ASP.NET days I would&amp;rsquo;ve solved this problem by overriding the Render method of my ASP.NET page. This would give me the very same mark-up that was being sent to the browser. Ideal as that sounds I realised that I&amp;rsquo;d not seen a single example of anyone tapping into the Render method of a MOSS Publishing Page anywhere! How do you do it?&lt;/font&gt;&lt;/span&gt; 
&lt;/p&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin: 0cm 0cm 0pt" class="MsoNormal"&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;The only clue I found was on Zac Smith&amp;rsquo;s website;&lt;/font&gt;&lt;/span&gt; 
&lt;/p&gt;
&lt;p style="margin: 0cm 0cm 0pt" class="MsoNormal"&gt;
&lt;span&gt;&lt;a href="http://www.trinkit.co.nz/blog/archive/2007/04/19/guide-to-making-sharepoint-xhtml-compliant.aspx"&gt;&lt;font face="Times New Roman" size="3" color="#800080"&gt;http://www.trinkit.co.nz/blog/archive/2007/04/19/guide-to-making-sharepoint-xhtml-compliant.aspx&lt;/font&gt;&lt;/a&gt;&lt;/span&gt; 
&lt;/p&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin: 0cm 0cm 0pt" class="MsoNormal"&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;Zac had overridden the Render method of Master Pages. His requirement was to clean up the Sharepoint mark-up to make it more XHTML compliant. Alas, Zacs solution didn&amp;rsquo;t suit me because he was using inline code in the master page. Enabling Inline Code opens up a security can of worms that I don&amp;rsquo;t even want to think about!&lt;/font&gt;&lt;/span&gt; 
&lt;/p&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin: 0cm 0cm 0pt" class="MsoNormal"&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;As an alternative, I immediately thought of Andrew Connells article on Sharepoint Code Behind pages; &lt;/font&gt;&lt;a href="http://www.andrewconnell.com/blog/articles/UsingCodeBehindFilesInSharePointSites.aspx"&gt;&lt;font face="Times New Roman" size="3" color="#800080"&gt;http://www.andrewconnell.com/blog/articles/UsingCodeBehindFilesInSharePointSites.aspx&lt;/font&gt;&lt;/a&gt;&lt;/span&gt; 
&lt;/p&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin: 0cm 0cm 0pt" class="MsoNormal"&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;Andrews article deals with the creation of an application page with code behind. It didn&amp;rsquo;t take much experimentation before I was able to create code behind files for Master Pages, and Page Layouts too. This was just what I wanted.&lt;/font&gt;&lt;/span&gt; 
&lt;/p&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin: 0cm 0cm 0pt" class="MsoNormal"&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;In the end the Master Page code behind option suited my problem best. I created a custom master page based on the existing custom master page that my portal uses, and added a code behind. Within five minutes I was able to manipulate my Publishing Page mark-up however I liked by overriding Render within the code behind!&lt;/font&gt;&lt;/span&gt; 
&lt;/p&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin: 0cm 0cm 0pt" class="MsoNormal"&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;After a relatively small amount of fun and games, my Render method looked something like this;&lt;/font&gt;&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; color: blue; font-family: 'Courier New'"&gt;protected&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt; &lt;span style="color: blue"&gt;override&lt;/span&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; Render(HtmlTextWriter writer)&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&lt;/span&gt;{&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;StringBuilder sb = &lt;span style="color: blue"&gt;new&lt;/span&gt; StringBuilder();&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;StringWriter sw = &lt;span style="color: blue"&gt;new&lt;/span&gt; StringWriter(sb);&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;hWriter = &lt;span style="color: blue"&gt;new&lt;/span&gt; HtmlTextWriter(sw);&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: blue"&gt;base&lt;/span&gt;.Render(hWriter); &lt;span style="color: green"&gt;//Get the rendered page&lt;/span&gt;&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span style="color: green"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; color: green; font-family: 'Courier New'"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: green"&gt;//Write out string to RTF Component HERE&lt;/span&gt;&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span style="color: green"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;MyVendor.HtmlToRtf.Converter converter = &lt;span style="color: blue"&gt;new&lt;/span&gt; MyVendor.HtmlToRtf.Converter();&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: blue"&gt;string&lt;/span&gt; rtfFile = converter.ConvertString(sb.ToString());&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: blue"&gt;if&lt;/span&gt; (rtfFile.Length &amp;gt; 0)&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Response.Buffer = &lt;span style="color: blue"&gt;true&lt;/span&gt;;&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Response.Clear();&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Response.ContentType = &lt;span style="color: #a31515"&gt;&amp;quot;application/msword&amp;quot;&lt;/span&gt;;&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Response.Write(rtfFile);&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Response.Flush();&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Response.End();&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt; 
&lt;/p&gt;
&lt;p style="margin: 0cm 0cm 0pt" class="MsoNormal"&gt;
&lt;span style="font-size: 10pt; font-family: 'Courier New'"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt; 
&lt;/p&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin: 0cm 0cm 0pt" class="MsoNormal"&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;So there you have it - full control of your rendered mark-up from Sharepoint. This could help you with XHTML Compliance, Document Output, Mobile Device Rendering, and lots of other neat applications that just need imagining!&lt;/font&gt;&lt;/span&gt; 
&lt;/p&gt;
&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt;&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt;&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt;&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt;&lt;span&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/span&gt; 
</description>
      <link>http://phet.net/sharepoint/post/Overriding-Sharepoint-Page-Render-method.aspx</link>
      <author>JamieMcAllister</author>
      <comments>http://phet.net/sharepoint/post/Overriding-Sharepoint-Page-Render-method.aspx#comment</comments>
      <guid>http://phet.net/sharepoint/post.aspx?id=cd4bdf97-2890-4625-8045-e3cbb24acfd5</guid>
      <pubDate>Thu, 18 Dec 2008 11:35:00 -0500</pubDate>
      <category>.NET</category>
      <category>Mobile</category>
      <category>Sharepoint</category>
      <category>WCM</category>
      <dc:publisher>JamieMcAllister</dc:publisher>
      <pingback:server>http://phet.net/sharepoint/pingback.axd</pingback:server>
      <pingback:target>http://phet.net/sharepoint/post.aspx?id=cd4bdf97-2890-4625-8045-e3cbb24acfd5</pingback:target>
      <slash:comments>2</slash:comments>
      <trackback:ping>http://phet.net/sharepoint/trackback.axd?id=cd4bdf97-2890-4625-8045-e3cbb24acfd5</trackback:ping>
      <wfw:comment>http://phet.net/sharepoint/post/Overriding-Sharepoint-Page-Render-method.aspx#comment</wfw:comment>
      <wfw:commentRss>http://phet.net/sharepoint/syndication.axd?post=cd4bdf97-2890-4625-8045-e3cbb24acfd5</wfw:commentRss>
    </item>
    <item>
      <title>Variations Editor version 2 Has Shipped</title>
      <description>&lt;p&gt;
Tim Dobrinski has put in even more work to his Variations Editor tool. Not only does it have the Variations fixing abilities of the first version, but now it allows the import and export of variations content between variations sites or beyond (to xml) !! If you saw my prior posts on the import and export of variations content, this is an application of that technique bound up into a professionally developed tool. You don&amp;#39;t have to touch Visual Studio yourself to have that power over your variations content!
&lt;/p&gt;
&lt;p&gt;
This tool is solving some very real and serious problems that the current state of Variations may set you. On top of that the tool is free. Do you really need any more encouragement to download it?
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;Here is his release blog posting;
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://www.thesug.org/blogs/lsuslinky/Lists/Posts/ViewPost.aspx?ID=25"&gt;http://www.thesug.org/blogs/lsuslinky/Lists/Posts/ViewPost.aspx?ID=25&lt;/a&gt;
&lt;/p&gt;
</description>
      <link>http://phet.net/sharepoint/post/Variations-Editor-version-2-Has-Shipped.aspx</link>
      <author>JamieMcAllister</author>
      <comments>http://phet.net/sharepoint/post/Variations-Editor-version-2-Has-Shipped.aspx#comment</comments>
      <guid>http://phet.net/sharepoint/post.aspx?id=c5d68039-ae7d-4da5-a79c-f7c849784a23</guid>
      <pubDate>Mon, 15 Dec 2008 21:18:00 -0500</pubDate>
      <category>Sharepoint</category>
      <category>Variations</category>
      <category>WCM</category>
      <dc:publisher>JamieMcAllister</dc:publisher>
      <pingback:server>http://phet.net/sharepoint/pingback.axd</pingback:server>
      <pingback:target>http://phet.net/sharepoint/post.aspx?id=c5d68039-ae7d-4da5-a79c-f7c849784a23</pingback:target>
      <slash:comments>1</slash:comments>
      <trackback:ping>http://phet.net/sharepoint/trackback.axd?id=c5d68039-ae7d-4da5-a79c-f7c849784a23</trackback:ping>
      <wfw:comment>http://phet.net/sharepoint/post/Variations-Editor-version-2-Has-Shipped.aspx#comment</wfw:comment>
      <wfw:commentRss>http://phet.net/sharepoint/syndication.axd?post=c5d68039-ae7d-4da5-a79c-f7c849784a23</wfw:commentRss>
    </item>
  </channel>
</rss>
