<?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.zevenseas.com/~d/styles/itemcontent.css"?><!--RSS generated by Windows SharePoint Services V3 RSS Generator on 3/13/2010 5:04:26 PM--><rss version="2.0"><channel><title>Daniel | zevenseas | SharePoint Blog</title><link>http://community.zevenseas.com/Blogs/Daniel</link><description>RSS feed for the Posts list.</description><lastBuildDate>Sat, 13 Mar 2010 16:04:26 GMT</lastBuildDate><generator>SharePoint CKS:EBE</generator><ttl>60</ttl><image><title>Daniel | zevenseas | SharePoint Blog</title><url>http://community.zevenseas.com/Blogs/Daniel/_layouts/images/homepage.gif</url><link>http://community.zevenseas.com/Blogs/Daniel</link></image><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.zevenseas.com/blogs_daniel" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="blogs_daniel" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">blogs_daniel</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><item><title>SharePoint On Your Phone</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2010/02/17/sharepoint-on-your-phone.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2010/02/17/sharepoint-on-your-phone.aspx</guid><description>&lt;div class="ExternalClass85A6ED13D57B444F9F3CBFAAC170ACAF"&gt;&lt;p&gt;&lt;a href="http://markbower.wordpress.com/"&gt;Mark Bower&lt;/a&gt; had a &lt;a href="http://markbower.wordpress.com/2010/02/16/windows-phone-7-series-sharepoint-integration/"&gt;nice post today&lt;/a&gt;, I didn’t see it in all the announcements flying by, however SharePoint has pride of place along with the Xbox on the new Windows Phone 7 Series.&lt;/p&gt; &lt;p&gt;&lt;img title="Windows Phone 7 Series Office Hub" border="0" alt="Windows Phone 7 Series Office Hub" src="http://farm3.static.flickr.com/2758/4362092644_d9cffec1ac.jpg"&gt;&lt;/p&gt; &lt;p&gt;Nice, Very Very Nice!&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=WGwoG1dFpmo:1xcvxUJCyQs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=WGwoG1dFpmo:1xcvxUJCyQs:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=WGwoG1dFpmo:1xcvxUJCyQs:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=WGwoG1dFpmo:1xcvxUJCyQs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=WGwoG1dFpmo:1xcvxUJCyQs:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=WGwoG1dFpmo:1xcvxUJCyQs:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Wed, 17 Feb 2010 06:16:06 GMT</pubDate></item><item><title>SharePoint Connections Look Back</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2010/02/09/sharepoint-connections-look-back.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2010/02/09/sharepoint-connections-look-back.aspx</guid><description>&lt;div class="ExternalClass6D82A60110A143089AA47E7CE0C97FB7"&gt;&lt;p&gt;I was lucky enough to present at the recent &lt;a href="http://www.devconnections.com/SPEurope/"&gt;SharePoint Connections&lt;/a&gt; conference held here in our very own Amsterdam. It was a fantastic event, great venue, lots of SharePoint people and good sessions. &lt;/p&gt; &lt;p&gt;My first session was titled &lt;a href="http://channel9.msdn.com/posts/matthijs/SharePoint-2010-Social-Computing-Overview/"&gt;&lt;strong&gt;SharePoint 2010 Social Computing Overview&lt;/strong&gt;&lt;/a&gt;, and it wa&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/119/image_thumb_1_0B01C09F_2_7EDAE11C.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;margin:25px 0px 0px 25px;display:inline;border-top:0px;border-right:0px" title="image_thumb_1_0B01C09F" border="0" alt="image_thumb_1_0B01C09F" align="right" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/119/image_thumb_1_0B01C09F_thumb_7EDAE11C.png" width="244" height="162"&gt;&lt;/a&gt;s done in true social style, with the help of &lt;a href="http://community.zevenseas.com/blogs/mark"&gt;Mark&lt;/a&gt; and &lt;a href="http://community.zevenseas.com/blogs/robin"&gt;Robin&lt;/a&gt;. We added an “Experimental” twist to the session because we wanted to demonstrate some of the SharePoint Social capabilities &lt;strong&gt;without&lt;/strong&gt; having to swap backward and forwards between users on a single screen. Instead we setup a server, and actually connected two laptops and two beamers/projectors. This way you could always see both sides of the interaction, nice for showing concurrent editing!&lt;/p&gt; &lt;p&gt;The cool bit is (and a big thanks to &lt;a href="http://blogs.microsoft.nl/blogs/mhoekstra/"&gt;Matthijs Hoekstra&lt;/a&gt;), that since it was recorded, I can leave you to decided if it actually worked. I think it was definitely worth trying out. &lt;/p&gt; &lt;p&gt;View the session: &lt;a title="http://channel9.msdn.com/posts/matthijs/SharePoint-2010-Social-Computing-Overview/" href="http://channel9.msdn.com/posts/matthijs/SharePoint-2010-Social-Computing-Overview/"&gt;http://channel9.msdn.com/posts/matthijs/SharePoint-2010-Social-Computing-Overview/&lt;/a&gt;&lt;br&gt;&lt;em&gt;P.S. I’m not sure what Marks obsession with the clock on the My Site was all about! &lt;/em&gt;&lt;/p&gt; &lt;p&gt;My second session was titled &lt;strong&gt;&lt;a href="http://channel9.msdn.com/posts/matthijs/Server-Free-Solutions-Sandboxed-and-Client-Only-Solutions-with-SharePoint-2010/"&gt;Server Free Solutions: Sandboxed and Client-Only Solutions&lt;/a&gt;&lt;/strong&gt; with SharePoint 2010. This session wasn’t intended to be “Experimental” but actually turned out to be. I was struck with vindictive Demo-Gods, resulting in every presenters worst nightmare. My demo machine just wouldn’t project. &lt;/p&gt; &lt;p&gt;This is my fault, as it seems I needed to install some drivers on Windows 2008 to make it work, I just thought it would see it as an external monitor and “just work”. I thought that whole business operated at a lower level than display drivers. Anyway…..&lt;/p&gt; &lt;p&gt;We quickly tried to think of a solution, with Mark and I first trying to setup an ad-hoc wireless network, that way I could display his computer on the projector, and I could RDP from there into my server. This didn’t work, of course (!),  because the network would drop out whenever we got the RDP session connected. Next we setup a physical network, which got us some of the way but not all of the way.&lt;/p&gt; &lt;p&gt;Anyway, a big thanks to everyone for bearing with me, I think that in all my years of presenting this was one of the worst situations in which I have found myself. So, if you would like to watch someone in a spot of bother, and see if I do manage to salvage something from the session, then check it out here: &lt;a title="http://channel9.msdn.com/posts/matthijs/Server-Free-Solutions-Sandboxed-and-Client-Only-Solutions-with-SharePoint-2010/" href="http://channel9.msdn.com/posts/matthijs/Server-Free-Solutions-Sandboxed-and-Client-Only-Solutions-with-SharePoint-2010/"&gt;http://channel9.msdn.com/posts/matthijs/Server-Free-Solutions-Sandboxed-and-Client-Only-Solutions-with-SharePoint-2010/&lt;/a&gt;&lt;/p&gt; &lt;p&gt;This session includes a new “Twitter” like solution for small workgroups, taking advantage of the new Client ECMAScript API, we will be publishing this shortly. Its a follow-up to our previous &lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/ViewPost.aspx?ID=93"&gt;Twitter solution for SharePoint&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=uRZ7oJ9nz5k:IxKNnPy_uPg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=uRZ7oJ9nz5k:IxKNnPy_uPg:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=uRZ7oJ9nz5k:IxKNnPy_uPg:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=uRZ7oJ9nz5k:IxKNnPy_uPg:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=uRZ7oJ9nz5k:IxKNnPy_uPg:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=uRZ7oJ9nz5k:IxKNnPy_uPg:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Tue, 09 Feb 2010 04:48:41 GMT</pubDate></item><item><title>Are you the BEST SharePoint Developer in India?</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2010/01/14/are-you-the-best-sharepoint-developer-in-india.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2010/01/14/are-you-the-best-sharepoint-developer-in-india.aspx</guid><description>&lt;div class="ExternalClass0E5D5C9BCCCB4BA3AD2FFB230366F208"&gt;&lt;p&gt;Are you smart and get things done? Do you dream in SharePoint? Do you think there must be more to being a Software Engineer out there?&lt;/p&gt; &lt;p&gt;If so, then we are offering the opportunity to be part of a global team that thinks and works just like you. &lt;/p&gt; &lt;p&gt;It’s an environment where you will be challenged everyday, where you have the opportunity to work on exciting projects, on the latest technologies, and most importantly, where you will &lt;strong&gt;learn&lt;/strong&gt; and &lt;strong&gt;grow&lt;/strong&gt; with people you enjoy working with.&lt;/p&gt; &lt;p&gt;While enthusiasm is important to us, please only send your resume if:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;You have been working with SharePoint for more than 3 years.&lt;/li&gt; &lt;li&gt;You are a C-Sharper.&lt;/li&gt; &lt;li&gt;You are in Information Technology because you&lt;strong&gt; love it&lt;/strong&gt; and can &lt;strong&gt;prove it&lt;/strong&gt;!&lt;/li&gt; &lt;li&gt;You are a great communicator, and a team player.&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;If this is you, then please send your resume to:&lt;br&gt;&lt;br&gt;&lt;a href="mailto:bestinindia@zevenseas.com"&gt;bestinindia@zevenseas.com&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=yV7a9R3DZsM:IyASvLXgcRQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=yV7a9R3DZsM:IyASvLXgcRQ:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=yV7a9R3DZsM:IyASvLXgcRQ:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=yV7a9R3DZsM:IyASvLXgcRQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=yV7a9R3DZsM:IyASvLXgcRQ:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=yV7a9R3DZsM:IyASvLXgcRQ:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Thu, 14 Jan 2010 22:35:52 GMT</pubDate></item><item><title>Its Conference Season!</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2010/01/12/its-conference-season.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2010/01/12/its-conference-season.aspx</guid><description>&lt;div class="ExternalClassD330AFBE5939487F91DB5E46282E81C6"&gt;&lt;p&gt;Just wanted to let you know about a couple of upcoming conferences that I will be presenting at. The first one kicks off next week, in my home town of Amsterdam, &lt;a href="http://www.devconnections.com/shows/NED2010SP/default.asp?c=2&amp;amp;s=149"&gt;SharePoint Connections 2010&lt;/a&gt;. There is a great line-up of speaker and I’m looking forward to catching up with them. &lt;/p&gt; &lt;p&gt;I will be presenting two sessions, the first one solo, and the second one with an “experimental” demo setup by &lt;a href="http://community.zevenseas.com/blogs/mark"&gt;Mark&lt;/a&gt; and &lt;a href="http://community.zevenseas.com/blogs/robin"&gt;Robin&lt;/a&gt; (which should be fun!). &lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;em&gt;&lt;b&gt;MSC08: Server Free Solutions: Sandboxed and Client-Only Solutions with SharePoint &lt;/b&gt;&lt;br&gt;&lt;/em&gt;&lt;a href="http://www.devconnections.com/default.asp?c=2&amp;amp;s=149&amp;amp;i=2322"&gt;&lt;b&gt;&lt;em&gt;Daniel McPherson&lt;/em&gt;&lt;/b&gt;&lt;/a&gt;&lt;br&gt;&lt;em&gt;Want a customised SharePoint experience but not the custom code headaches? Have a hosted SharePoint environment but need a custom solution to meet a specific business requirement? This session will explore a variety of ways to create a customised SharePoint experience without touching your server.&lt;br&gt;&lt;/em&gt; &lt;p&gt;&lt;em&gt;&lt;b&gt;MSC03: Social Computing Overview&lt;/b&gt;&lt;br&gt;&lt;/em&gt;&lt;a href="http://www.devconnections.com/default.asp?c=2&amp;amp;s=149&amp;amp;i=2322"&gt;&lt;b&gt;&lt;em&gt;Daniel McPherson&lt;/em&gt;&lt;/b&gt;&lt;/a&gt;&lt;br&gt;&lt;a href="http://www.devconnections.com/default.asp?c=2&amp;amp;s=149&amp;amp;i=2349"&gt;&lt;b&gt;&lt;em&gt;Robin Meure&lt;/em&gt;&lt;/b&gt;&lt;/a&gt;&lt;br&gt;&lt;a href="http://www.devconnections.com/default.asp?c=2&amp;amp;s=149&amp;amp;i=2350"&gt;&lt;b&gt;&lt;em&gt;Mark van Lunenburg&lt;/em&gt;&lt;/b&gt;&lt;/a&gt;&lt;br&gt;&lt;em&gt;In this session, you will learn all about the new social computing capabilities of SharePoint 2010. Social bookmarking, tagging and ranking, blogs and wikis and social search for people.&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Next up is the &lt;a href="http://www.sharepointsaturday.org/emea/default.aspx"&gt;Live Online SharePoint Saturday EMEA&lt;/a&gt; event, its a FREE, virtual SharePoint event with presenters from 13+ countries, including 8 MVPs. Will be the first time I have presented “virtually”, so I’m looking forward to seeing how that goes. My topic is:&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;strong&gt;&lt;em&gt;Notes from the Field: &lt;/em&gt;&lt;/strong&gt; &lt;p&gt;&lt;strong&gt;&lt;em&gt;Social Computing in the Enterprise, from 2007 to 2010&lt;/em&gt;&lt;/strong&gt; &lt;p&gt;&lt;em&gt;This session is all about sharing the experience gained in over 2 years spent developing large scale Social Computing solutions on SharePoint. &lt;br&gt;&lt;/em&gt; &lt;p&gt;&lt;em&gt;This session will primarily look at the technical challenges, but also delve into the business benefits that Social Applications derive in the Enterprise.&lt;br&gt;&lt;/em&gt; &lt;p&gt;&lt;em&gt;Finally, the session will close by looking at key Social functionality coming down the line with SharePoint 2010.&lt;/em&gt; &lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;  &lt;p&gt;Hope to see you there, if so, be sure to say hello! &lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=3tKyC2U1_vM:uP9_4Xb416g:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=3tKyC2U1_vM:uP9_4Xb416g:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=3tKyC2U1_vM:uP9_4Xb416g:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=3tKyC2U1_vM:uP9_4Xb416g:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=3tKyC2U1_vM:uP9_4Xb416g:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=3tKyC2U1_vM:uP9_4Xb416g:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Tue, 12 Jan 2010 03:33:01 GMT</pubDate></item><item><title>Assembly Free Twitter Solution Improved</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/12/18/assembly-free-twitter-solution-improved.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/12/18/assembly-free-twitter-solution-improved.aspx</guid><description>&lt;div class="ExternalClassE68044C7191749A0856B921EC63909FD"&gt;&lt;p&gt;I received an email last week from Tulasi Talakola (Twitter: talakola2009) which included a new version of our &lt;a href="http://community.zevenseas.com/Blogs/Daniel/Lists/Posts/ViewPost.aspx?ID=95"&gt;assembly-free Team Status&lt;/a&gt; (“Twitter”) template for SharePoint. &lt;/p&gt; &lt;p&gt;The new functionality provides for the ability to “Follow” only a subset of users within the site. We agreed that I could post it here, and I really like having others take our solutions and make them even better. &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.zevenseas.com/go.aspx?TeamStatusFollowers=DOWNLOAD"&gt;DOWNLOAD&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Thanks Tulasi!&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=98DWJzjkMPM:7pfimgjJ4ug:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=98DWJzjkMPM:7pfimgjJ4ug:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=98DWJzjkMPM:7pfimgjJ4ug:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=98DWJzjkMPM:7pfimgjJ4ug:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=98DWJzjkMPM:7pfimgjJ4ug:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=98DWJzjkMPM:7pfimgjJ4ug:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Fri, 18 Dec 2009 02:35:41 GMT</pubDate></item><item><title>Announcing Discussion Central for SharePoint</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/12/08/announcing-discussion-central-for-sharepoint.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/12/08/announcing-discussion-central-for-sharepoint.aspx</guid><description>&lt;div class="ExternalClass89B20D68D01D4256AF66BF03AFBC9E07"&gt;&lt;p&gt;We released &lt;a href="http://community.zevenseas.com/blogs/daniel/archive/2009/07/28/employee-blogging-using-sharepoint-blog-central.aspx"&gt;Blog Central&lt;/a&gt; (&lt;a href="http://demo.zevenseas.com/default.aspx"&gt;Demo Site&lt;/a&gt;) a little over 4 months ago and it has always been our intention to grow it into a suite of products that perform two core functions:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Aggregate and summarise information from across your SharePoint farm.&lt;/li&gt; &lt;li&gt;Extend the out-of-the-box templates with small additional features that add a lot of value.&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;I’m pleased to announce our first addition to the Central suite, our beta release of “Discussion Central” (&lt;a href="http://demo.zevenseas.com/sites/discussions/default.aspx"&gt;Demo Site&lt;/a&gt;).&lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/115/image_14_23B32B24.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/115/image_thumb_6_23B32B24.png" width="625" height="505"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Discussion Central provides a “Jumping Off Point” into Discussions that are happening across your organisation. It does this by aggregating both the topics, and the replies, people are creating in Discussions Lists across your SharePoint farm. To be clear, this is cross Site Collection, cross Web Application aggregation. &lt;/p&gt; &lt;p&gt;Inspired by the Facebook news feed, we provide anyone accessing the portal with a quick summary of the most recent topics of discussions, and the most recent replies. It provides information on the number of views a discussion has received, and at a click, allows you to expand any topic.&lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/115/image_20_23B32B24.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/115/image_thumb_9_23B32B24.png" width="244" height="114"&gt;&lt;/a&gt;   &lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/115/image_18_23B32B24.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/115/image_thumb_8_23B32B24.png" width="244" height="150"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;At this stage we have made a single extension to the standard Discussions List, adding the ability to enable View Tracking. This provides an easy way for people to see which discussions are proving the most popular.&lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/115/image_6_23B32B24.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/115/image_thumb_2_23B32B24.png" width="242" height="144"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/115/image_10_23B32B24.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/115/image_thumb_4_51A07DDC.png" width="476" height="190"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/115/image_8_51A07DDC.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/115/image_thumb_3_51A07DDC.png" width="478" height="133"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Anyway, a blog post can only take you so far, head over to our &lt;a href="http://demo.zevenseas.com/sites/discussions/default.aspx"&gt;Discussion Central Demonstration Site&lt;/a&gt; and have a look for yourself. If you are interested in learning more, drop me an email &lt;a href="mailto:daniel@zevenseas.com"&gt;daniel@zevenseas.com&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=xmjrPPHwzRs:CNw4at1UJPU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=xmjrPPHwzRs:CNw4at1UJPU:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=xmjrPPHwzRs:CNw4at1UJPU:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=xmjrPPHwzRs:CNw4at1UJPU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=xmjrPPHwzRs:CNw4at1UJPU:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=xmjrPPHwzRs:CNw4at1UJPU:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Tue, 08 Dec 2009 05:28:48 GMT</pubDate></item><item><title>Using HTML Meta Tags to add Information to SharePoint Search</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/12/07/using-html-meta-tags-to-add-information-to-sharepoint-search.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/12/07/using-html-meta-tags-to-add-information-to-sharepoint-search.aspx</guid><description>&lt;div class="ExternalClass659BB316914C411DB399410EE6E459DC"&gt;&lt;p&gt;This week &lt;a href="http://community.zevenseas.com/blogs/robin"&gt;Robin&lt;/a&gt; was working away on a tool to make it easier for people to find Team Sites across their organisation. He was evaluating the use of SharePoint Search to do it, but found that many site properties, for example the template that Publishing Sites are based on is not marked as STS_Site, were not exposed in the index. &lt;/p&gt; &lt;p&gt;This reminded me of a very similar exploration I did a little while ago, and it reminded me that I didn’t blog about it and should have. So now I am.&lt;/p&gt; &lt;p&gt;As many of you know, SharePoint is very good at automatically finding metadata as it crawls content. It finds document properties, list columns, and much more. It collects these all together and adds them into the SSP as “Crawled Properties”. Once in this list, you can map them to a “Managed Property”, thereby making them available for use in search queries and results. &lt;/p&gt; &lt;p&gt;A little known fact is that SharePoint can also pick up properties from HTML pages via the “META” tag. For example, in the top of the home page on any SharePoint site you will see:&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;META&lt;/span&gt; &lt;span class="attr"&gt;Name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;CollaborationServer&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Content&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;SharePoint Team Web Site&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;style&gt;
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode, .ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode pre
{font-size:small;color:black;font-family:consolas, &amp;quot;Courier New&amp;quot;, courier, monospace;background-color:#ffffff;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode pre
{margin:0em;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .rem
{color:#008000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .kwrd
{color:#0000ff;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .str
{color:#006080;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .op
{color:#0000c0;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .preproc
{color:#cc6633;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .asp
{background-color:#ffff00;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .html
{color:#800000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .attr
{color:#ff0000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .lnum
{color:#606060;}
&lt;/style&gt;

&lt;p&gt;This value is detected by SharePoint and then added to the Crawled Properties here: &lt;/p&gt;
&lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/114/image_2_7FDDFE82.png"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/114/image_thumb_7FDDFE82.png" width="440" height="157"&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;This got me thinking. Wouldn’t this make it possible to create a small control that used the SharePoint OM to pull out the properties from the site and then expose them inside a META Tag. Once there would be picked up by the Indexer? The answer course was ‘Yes’. Even better, you could add this control onto any site using the “Delegate Control” capability. &lt;/p&gt;
&lt;p&gt;Here is the little base class I built:&lt;/p&gt;
&lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Collections.Generic;&lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.IO;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Web;&lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Web.UI;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Web.UI.HtmlControls;&lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; Microsoft.SharePoint;&lt;/pre&gt;&lt;pre class="alt"&gt; &lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;namespace&lt;/span&gt; codezeven.Social.WebControls&lt;/pre&gt;&lt;pre class="alt"&gt;{&lt;/pre&gt;&lt;pre&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; MetaManager : Control&lt;/pre&gt;&lt;pre class="alt"&gt;    {&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;private&lt;/span&gt; Dictionary&amp;lt;&lt;span class="kwrd"&gt;string&lt;/span&gt;, &lt;span class="kwrd"&gt;string&lt;/span&gt;&amp;gt; metaData;&lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;protected&lt;/span&gt; SPWeb currentWeb;&lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; MetaPropPageType PageType&lt;/pre&gt;&lt;pre&gt;        {&lt;/pre&gt;&lt;pre class="alt"&gt;            get&lt;/pre&gt;&lt;pre&gt;            {&lt;/pre&gt;&lt;pre class="alt"&gt;                &lt;span class="kwrd"&gt;if&lt;/span&gt; (IsDefaultPage())&lt;/pre&gt;&lt;pre&gt;                    &lt;span class="kwrd"&gt;return&lt;/span&gt; MetaPropPageType.Default;&lt;/pre&gt;&lt;pre class="alt"&gt; &lt;/pre&gt;&lt;pre&gt;                &lt;span class="kwrd"&gt;return&lt;/span&gt; MetaPropPageType.None;&lt;/pre&gt;&lt;pre class="alt"&gt;            }&lt;/pre&gt;&lt;pre&gt;        }&lt;/pre&gt;&lt;pre class="alt"&gt; &lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; Dictionary&amp;lt;&lt;span class="kwrd"&gt;string&lt;/span&gt;, &lt;span class="kwrd"&gt;string&lt;/span&gt;&amp;gt; MetaData&lt;/pre&gt;&lt;pre class="alt"&gt;        {&lt;/pre&gt;&lt;pre&gt;            get { &lt;span class="kwrd"&gt;return&lt;/span&gt; metaData; }&lt;/pre&gt;&lt;pre class="alt"&gt;            set { metaData = &lt;span class="kwrd"&gt;value&lt;/span&gt;; }&lt;/pre&gt;&lt;pre&gt;        }&lt;/pre&gt;&lt;pre class="alt"&gt; &lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;protected&lt;/span&gt; &lt;span class="kwrd"&gt;override&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; OnInit(System.EventArgs e)&lt;/pre&gt;&lt;pre class="alt"&gt;        {&lt;/pre&gt;&lt;pre&gt;            &lt;span class="kwrd"&gt;this&lt;/span&gt;.currentWeb = SPContext.Current.Web;&lt;/pre&gt;&lt;pre class="alt"&gt;            metaData = &lt;span class="kwrd"&gt;new&lt;/span&gt; Dictionary&amp;lt;&lt;span class="kwrd"&gt;string&lt;/span&gt;, &lt;span class="kwrd"&gt;string&lt;/span&gt;&amp;gt;();&lt;/pre&gt;&lt;pre&gt;        }&lt;/pre&gt;&lt;pre class="alt"&gt; &lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;protected&lt;/span&gt; &lt;span class="kwrd"&gt;override&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; CreateChildControls()&lt;/pre&gt;&lt;pre class="alt"&gt;        {&lt;/pre&gt;&lt;pre&gt;            &lt;span class="kwrd"&gt;foreach&lt;/span&gt; (KeyValuePair&amp;lt;&lt;span class="kwrd"&gt;string&lt;/span&gt;, &lt;span class="kwrd"&gt;string&lt;/span&gt;&amp;gt; pair &lt;span class="kwrd"&gt;in&lt;/span&gt; metaData)&lt;/pre&gt;&lt;pre class="alt"&gt;            {&lt;/pre&gt;&lt;pre&gt;                HtmlMeta metaTag = &lt;span class="kwrd"&gt;new&lt;/span&gt; HtmlMeta();&lt;/pre&gt;&lt;pre class="alt"&gt;                metaTag.Name = pair.Key.ToUpper();&lt;/pre&gt;&lt;pre&gt;                metaTag.Content = pair.Value;&lt;/pre&gt;&lt;pre class="alt"&gt;                Controls.Add(metaTag);&lt;/pre&gt;&lt;pre&gt;            }&lt;/pre&gt;&lt;pre class="alt"&gt;            &lt;/pre&gt;&lt;pre&gt;            &lt;span class="kwrd"&gt;base&lt;/span&gt;.CreateChildControls();&lt;/pre&gt;&lt;pre class="alt"&gt;        }&lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;protected&lt;/span&gt; &lt;span class="kwrd"&gt;bool&lt;/span&gt; IsDefaultPage()&lt;/pre&gt;&lt;pre&gt;        {&lt;/pre&gt;&lt;pre class="alt"&gt;            &lt;span class="kwrd"&gt;string&lt;/span&gt; defaultPage = currentWeb.Url.TrimEnd(&lt;span class="str"&gt;'/'&lt;/span&gt;) + &lt;span class="str"&gt;&amp;quot;/default.aspx&amp;quot;&lt;/span&gt;;&lt;/pre&gt;&lt;pre&gt;            &lt;span class="kwrd"&gt;string&lt;/span&gt; currentPage = HttpContext.Current.Request.Url.OriginalString;&lt;/pre&gt;&lt;pre class="alt"&gt; &lt;/pre&gt;&lt;pre&gt;            &lt;span class="kwrd"&gt;if&lt;/span&gt; (!&lt;span class="kwrd"&gt;string&lt;/span&gt;.IsNullOrEmpty(defaultPage) &amp;amp;&amp;amp; !&lt;span class="kwrd"&gt;string&lt;/span&gt;.IsNullOrEmpty(currentPage))&lt;/pre&gt;&lt;pre class="alt"&gt;            {&lt;/pre&gt;&lt;pre&gt;                &lt;span class="kwrd"&gt;if&lt;/span&gt; (currentPage.ToLower() == defaultPage.ToLower())&lt;/pre&gt;&lt;pre class="alt"&gt;                    &lt;span class="kwrd"&gt;return&lt;/span&gt; &lt;span class="kwrd"&gt;true&lt;/span&gt;;&lt;/pre&gt;&lt;pre&gt;            }&lt;/pre&gt;&lt;pre class="alt"&gt; &lt;/pre&gt;&lt;pre&gt;            &lt;span class="kwrd"&gt;return&lt;/span&gt; &lt;span class="kwrd"&gt;false&lt;/span&gt;;&lt;/pre&gt;&lt;pre class="alt"&gt;        }&lt;/pre&gt;&lt;pre&gt;    }&lt;/pre&gt;&lt;pre class="alt"&gt;}&lt;/pre&gt;&lt;/div&gt;
&lt;style&gt;
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode, .ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode pre
{font-size:small;color:black;font-family:consolas, &amp;quot;Courier New&amp;quot;, courier, monospace;background-color:#ffffff;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode pre
{margin:0em;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .rem
{color:#008000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .kwrd
{color:#0000ff;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .str
{color:#006080;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .op
{color:#0000c0;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .preproc
{color:#cc6633;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .asp
{background-color:#ffff00;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .html
{color:#800000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .attr
{color:#ff0000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .lnum
{color:#606060;}
&lt;/style&gt;

&lt;style&gt;
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode, .ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode pre
{font-size:small;color:black;font-family:consolas, &amp;quot;Courier New&amp;quot;, courier, monospace;background-color:#ffffff;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode pre
{margin:0em;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .rem
{color:#008000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .kwrd
{color:#0000ff;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .str
{color:#006080;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .op
{color:#0000c0;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .preproc
{color:#cc6633;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .asp
{background-color:#ffff00;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .html
{color:#800000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .attr
{color:#ff0000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .lnum
{color:#606060;}
&lt;/style&gt;

&lt;p&gt;&lt;br&gt;And the referenced Enum:&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;namespace&lt;/span&gt; codezeven.Social.WebControls
{
    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;enum&lt;/span&gt; MetaPropPageType
    {
        Default, None        
    }
}&lt;/pre&gt;
&lt;style&gt;
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode, .ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode pre
{font-size:small;color:black;font-family:consolas, &amp;quot;Courier New&amp;quot;, courier, monospace;background-color:#ffffff;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode pre
{margin:0em;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .rem
{color:#008000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .kwrd
{color:#0000ff;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .str
{color:#006080;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .op
{color:#0000c0;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .preproc
{color:#cc6633;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .asp
{background-color:#ffff00;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .html
{color:#800000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .attr
{color:#ff0000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .lnum
{color:#606060;}
&lt;/style&gt;

&lt;p&gt;From here you can just layer your own control on top, to output just the values you would like from SharePoint:&lt;/p&gt;
&lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System;&lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; codezeven.Social.WebControls;&lt;/pre&gt;&lt;pre class="alt"&gt; &lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;namespace&lt;/span&gt; codezeven.Social.WebControls&lt;/pre&gt;&lt;pre class="alt"&gt;{&lt;/pre&gt;&lt;pre&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; SiteMetaManager : MetaManager&lt;/pre&gt;&lt;pre class="alt"&gt;    {&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;protected&lt;/span&gt; &lt;span class="kwrd"&gt;override&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; CreateChildControls()&lt;/pre&gt;&lt;pre class="alt"&gt;        {&lt;/pre&gt;&lt;pre&gt;            MetaData.Add(&lt;span class="str"&gt;&amp;quot;SharePointWebTitle&amp;quot;&lt;/span&gt;, currentWeb.Title);&lt;/pre&gt;&lt;pre class="alt"&gt; &lt;/pre&gt;&lt;pre&gt;            &lt;span class="kwrd"&gt;switch&lt;/span&gt; (PageType)&lt;/pre&gt;&lt;pre class="alt"&gt;            {&lt;/pre&gt;&lt;pre&gt;                &lt;span class="kwrd"&gt;case&lt;/span&gt; MetaPropPageType.Default:&lt;/pre&gt;&lt;pre class="alt"&gt;                    MetaData.Add(&lt;span class="str"&gt;&amp;quot;SharePointWebTemplate&amp;quot;&lt;/span&gt;, currentWeb.WebTemplate);&lt;/pre&gt;&lt;pre&gt;                    MetaData.Add(&lt;span class="str"&gt;&amp;quot;SharePointWebDescription&amp;quot;&lt;/span&gt;, currentWeb.Description);&lt;/pre&gt;&lt;pre class="alt"&gt;                    &lt;span class="kwrd"&gt;break&lt;/span&gt;;&lt;/pre&gt;&lt;pre&gt;                &lt;span class="kwrd"&gt;case&lt;/span&gt; MetaPropPageType.None:&lt;/pre&gt;&lt;pre class="alt"&gt;                    &lt;span class="kwrd"&gt;break&lt;/span&gt;;&lt;/pre&gt;&lt;pre&gt;                &lt;span class="kwrd"&gt;default&lt;/span&gt;:&lt;/pre&gt;&lt;pre class="alt"&gt;                    &lt;span class="kwrd"&gt;throw&lt;/span&gt; &lt;span class="kwrd"&gt;new&lt;/span&gt; ArgumentOutOfRangeException();&lt;/pre&gt;&lt;pre&gt;            }&lt;/pre&gt;&lt;pre class="alt"&gt; &lt;/pre&gt;&lt;pre&gt;           &lt;span class="kwrd"&gt;base&lt;/span&gt;.CreateChildControls();&lt;/pre&gt;&lt;pre class="alt"&gt;        }&lt;/pre&gt;&lt;pre&gt;    }&lt;/pre&gt;&lt;pre class="alt"&gt;}&lt;/pre&gt;&lt;/div&gt;
&lt;style&gt;
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode, .ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode pre
{font-size:small;color:black;font-family:consolas, &amp;quot;Courier New&amp;quot;, courier, monospace;background-color:#ffffff;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode pre
{margin:0em;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .rem
{color:#008000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .kwrd
{color:#0000ff;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .str
{color:#006080;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .op
{color:#0000c0;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .preproc
{color:#cc6633;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .asp
{background-color:#ffff00;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .html
{color:#800000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .attr
{color:#ff0000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .lnum
{color:#606060;}
&lt;/style&gt;

&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Then via a feature add it in as a Delegate control with something like this:&lt;/p&gt;
&lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Control&lt;/span&gt; &lt;span class="attr"&gt;Id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;AdditionalPageHead&amp;quot;&lt;/span&gt; &lt;/pre&gt;&lt;pre&gt;&lt;span class="attr"&gt;Sequence&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;50&amp;quot;&lt;/span&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="attr"&gt;ControlClass&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;codezeven.Social.WebControls.BlogMetaManager&amp;quot;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="attr"&gt;ControlAssembly&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;codezeven.Social, Version=1.0.0.0, Culture=neutral,&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;PublicKeyToken=0fec8ae58e85e93e&amp;quot; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;style&gt;
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode, .ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode pre
{font-size:small;color:black;font-family:consolas, &amp;quot;Courier New&amp;quot;, courier, monospace;background-color:#ffffff;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode pre
{margin:0em;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .rem
{color:#008000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .kwrd
{color:#0000ff;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .str
{color:#006080;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .op
{color:#0000c0;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .preproc
{color:#cc6633;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .asp
{background-color:#ffff00;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .html
{color:#800000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .attr
{color:#ff0000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .lnum
{color:#606060;}
&lt;/style&gt;

&lt;p&gt; &lt;/p&gt;
&lt;p&gt;This will then produce something like the following in the top of each page (ok, so my demo data is not ideal! &amp;lt;grin&amp;gt;):&lt;/p&gt;
&lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;meta&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;SHAREPOINTWEBTITLE&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;content&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Setup's Again&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;meta&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;SHAREPOINTWEBTEMPLATE&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;content&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;BLOG&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;meta&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;SHAREPOINTWEBDESCRIPTION&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;content&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;This is a really long description just to see if it comes across ok.&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;style&gt;
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode, .ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode pre
{font-size:small;color:black;font-family:consolas, &amp;quot;Courier New&amp;quot;, courier, monospace;background-color:#ffffff;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode pre
{margin:0em;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .rem
{color:#008000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .kwrd
{color:#0000ff;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .str
{color:#006080;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .op
{color:#0000c0;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .preproc
{color:#cc6633;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .asp
{background-color:#ffff00;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .html
{color:#800000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .attr
{color:#ff0000;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .alt
{background-color:#f4f4f4;width:100%;margin:0em;}
.ExternalClass659BB316914C411DB399410EE6E459DC .csharpcode .lnum
{color:#606060;}
&lt;/style&gt;

&lt;p&gt;&lt;br&gt;And after performing a Full Crawl, you will find the following new “Crawled Properties”:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/114/image_4_2DCB513B.png"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/114/image_thumb_1_2DCB513B.png" width="406" height="190"&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;After mapping them to equivalent Managed Properties, and using our useful &lt;a href="http://www.codeplex.com/MOSSSearchCoder"&gt;SearchCoder&lt;/a&gt; tool, you can see the result here:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/114/image_6_2DCB513B.png"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/114/image_thumb_2_2DCB513B.png" width="475" height="106"&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/114/image_8_2DCB513B.png"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/114/image_thumb_3_2DCB513B.png" width="477" height="246"&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;There is a downside, these properties only change in the Index after a Full Crawl (or when the page changes, though never really bottomed that out as it lost its real benefit at that point). This was a deal breaker for me, but no problem for Robin. Anyway, that’s it, hope it helps!&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=hkWsi9Stxy0:4E8oQHeycXE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=hkWsi9Stxy0:4E8oQHeycXE:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=hkWsi9Stxy0:4E8oQHeycXE:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=hkWsi9Stxy0:4E8oQHeycXE:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=hkWsi9Stxy0:4E8oQHeycXE:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=hkWsi9Stxy0:4E8oQHeycXE:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Mon, 07 Dec 2009 08:07:44 GMT</pubDate></item><item><title>#spc09 Notes: Introduction to Service Applications</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/10/20/spc09-notes-introduction-to-service-applications.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/10/20/spc09-notes-introduction-to-service-applications.aspx</guid><description>&lt;div class="ExternalClass69847D21E1664C6F8AB1EC59266B742A"&gt;&lt;p&gt;This is one in a series of notes I will be making while attending the SharePoint Conference in Vegas. These are not intended to be complete, polished, edited blog posts. Its simply the highlights, as I saw it, from the sessions I attended.&lt;/p&gt; &lt;ul&gt; &lt;li&gt;New, flexible, extensible services architecture that can be used by developers&lt;/li&gt; &lt;li&gt;Overview&lt;/li&gt; &lt;ul&gt; &lt;li&gt;What is a Services Application? An Application Server Tier feature that performs the useful function of providing data or processing resources to SharePoint features.&lt;/li&gt; &lt;li&gt;Search is a good example of a Services Application&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Service Application&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Configured logical instance of a service&lt;/li&gt; &lt;li&gt;Provides data or computing resources&lt;/li&gt; &lt;li&gt;Comes with a Administration interface&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;How is a Service Application used&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Features, for example Web Parts use these application&lt;/li&gt; &lt;li&gt;You associate a web application with a service application&lt;/li&gt; &lt;li&gt;This is done via a proxy&lt;/li&gt; &lt;li&gt;Associations done by Admins, can be changed anytime&lt;/li&gt; &lt;li&gt;This a much like SSP’s, but this has been further simplified&lt;/li&gt; &lt;li&gt;Can be grouped for administrative reasons “Service Application Proxy Group”&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Service Workflow&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Brower –&amp;gt; Web Front End –&amp;gt; eg. Search Page –&amp;gt; (Software load balancer) –&amp;gt; Application Server –&amp;gt; returns&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;2007 versus 2010&lt;/li&gt; &lt;ul&gt; &lt;li&gt;SSP is where we were&lt;/li&gt; &lt;li&gt;The old services are still there BUT they are no longer grouped together in an SSP, they all operate independently&lt;/li&gt; &lt;li&gt;There are also a lot more services now, 20 or more.&lt;/li&gt; &lt;li&gt;The platform for building these services is now open&lt;/li&gt; &lt;li&gt;Services applications are supported in Foundation (WSS), though different SKU’s will come with different service applications&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Whats new? Framework&lt;/li&gt; &lt;ul&gt; &lt;li&gt;There is no more SSP administration site, Central admin and Powershell&lt;/li&gt; &lt;li&gt;Greater flexibility, Services can been assigned to Web Apps&lt;/li&gt; &lt;li&gt;Software Load Balancer and fail over (load balancer can be replaced by a third party load balancer)&lt;/li&gt; &lt;li&gt;Cross Farm support&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Share to anyone and consume from anywhere&lt;/li&gt; &lt;li&gt;WCF based communications&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt; &lt;li&gt;Whats new? Security&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Everything is based on Claims based authentication&lt;/li&gt; &lt;li&gt;Intra server communications is based on WCF communications&lt;/li&gt; &lt;li&gt;Supports SSL&lt;/li&gt; &lt;li&gt;Each application uses its own database, and optionally own application pool&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Multi-Tennancy&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Application level security protects the information in one Service Application from another. So it adds an application security boundary within a database and within an application pool.&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Application Directory and Load Balance Service Application&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Responsible for sharing the list of available services to other applications&lt;/li&gt; &lt;li&gt;Discovery mechanism.&lt;/li&gt; &lt;li&gt;This is really seriously cool stuff. You can now effectively deploy farms that are dedicated to specific tasks. A search farm for example.&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;PowerShell is everywhere: “Can use PowerShell for pretty much everything”&lt;/li&gt; &lt;li&gt;By Default all service applications are associated with all web applications, associations are not direct but through a proxy. This can then be configured.&lt;/li&gt; &lt;li&gt;Farm Admins have access to all Service Application, but you can delegate permissions to a specific user for a specific service.&lt;/li&gt; &lt;li&gt;Building Service Applications (this is what I have been waiting for)&lt;/li&gt; &lt;ul&gt; &lt;li&gt;The OOB service applications have been built on the same API developers can use&lt;/li&gt; &lt;li&gt;You get:&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Multi-Server Support&lt;/li&gt; &lt;li&gt;Fault Tolerant Round Robin Load Balancing&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Timer Job Support&lt;/li&gt; &lt;li&gt;Even the Load Balancer is extensible, very cool&lt;/li&gt; &lt;li&gt;Settings can be stored in the configuration Database, and you can add your own databases and manage them through SharePoint (integrates then for example with Backup/Restore)&lt;/li&gt; &lt;li&gt;Can create your own Central Admin pages&lt;/li&gt; &lt;li&gt;Lots of controls that can be reused&lt;/li&gt; &lt;li&gt;Can create your own PowerShell Commandlets&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Sample Topologies&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Seems to me that there are many, many topologies&lt;/li&gt; &lt;li&gt;Flexibility of the model though should make it something you design specifically to suit&lt;/li&gt; &lt;li&gt;Services Farm. Seems to me that this makes a lot of sense.&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=6Z9X4yGTF5U:ynSMkOURzXQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=6Z9X4yGTF5U:ynSMkOURzXQ:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=6Z9X4yGTF5U:ynSMkOURzXQ:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=6Z9X4yGTF5U:ynSMkOURzXQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=6Z9X4yGTF5U:ynSMkOURzXQ:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=6Z9X4yGTF5U:ynSMkOURzXQ:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Tue, 20 Oct 2009 09:20:09 GMT</pubDate></item><item><title>#spc09 Notes: Sandboxed Solutions</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/10/19/spc09-notes-sandboxed-solutions.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/10/19/spc09-notes-sandboxed-solutions.aspx</guid><description>&lt;div class="ExternalClassB083F199628741A992827B1D733BD02F"&gt;&lt;p&gt;This is the first of a series of notes I will be making while attending the SharePoint Conference in Vegas. These are not intended to be complete, polished, edited blog posts. Its simply the highlights, as I saw it, from the sessions I attended.&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Its all about balancing Security/Stability and Business Agility&lt;/li&gt; &lt;li&gt;Sandboxed solutions balance these two things out.&lt;/li&gt; &lt;li&gt;Sandboxed solutions should be the default approach to developing solutions on SharePoint. You build them this way UNTIL you hit a limitation you just cant get around.&lt;/li&gt; &lt;li&gt;Difficult to come up with a list that describe what you can do with Sandboxed Solutions:&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Content Types, Site Columns&lt;/li&gt; &lt;li&gt;Custom Action&lt;/li&gt; &lt;li&gt;Declarative Workflows&lt;/li&gt; &lt;li&gt;Event Receivers&lt;/li&gt; &lt;li&gt;Feature receivers&lt;/li&gt; &lt;li&gt;List Definitions, non-visual web parts&lt;/li&gt; &lt;li&gt;Site Pages&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;What is the Sandbox?&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Its a separate process where your solution runs&lt;/li&gt; &lt;li&gt;It works with a limited set of API, and have additional Code Access Security policies applied to it.&lt;/li&gt; &lt;li&gt;Solutions for the sandboxed are focused on the the Site Collection&lt;/li&gt; &lt;li&gt;All sandboxed solutions have detailed monitoring via the Central Administration&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Puts the power back into the hands of the IT Admin. &lt;/li&gt; &lt;li&gt;Separate process:&lt;/li&gt; &lt;ul&gt; &lt;li&gt;UserCodeService – Runs on each server in the farm which is allowed to host the sandboxed solutions.&lt;/li&gt; &lt;li&gt;Sandbox Worker Process – This is where the solution runs&lt;/li&gt; &lt;li&gt;Sandbox Worker Process Proxy - &lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Sandboxed solutions use a subset of Microsoft.Sharepoint&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Important: Missing Enterprise objects&lt;/li&gt; &lt;li&gt;I think there are some great solutions to be built, but this list did look quite limiting.&lt;/li&gt; &lt;li&gt;CAS Policy limits allow a solution assembly to load, use the SP OM. Cannot touch any external resources. &lt;/li&gt; &lt;ul&gt; &lt;li&gt;There is a Full Trust Proxy, this is possible but it is tightly controlled&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt; &lt;li&gt;Solution Gallery&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Document Library for SharePoint Sandboxed Solutions&lt;/li&gt; &lt;li&gt;Empowers the Site Collection administrators to chose what solutions they need.&lt;/li&gt; &lt;li&gt;Resource quotas can lock down the amount of server resource a solution can use&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;The binaries are in 14\Usercode&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Web.Config in this folder includes the reference to the CAS Policy&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;To Visual Studio there is no difference between a Sandbox solution and a Farm solution. &lt;/li&gt; &lt;ul&gt; &lt;li&gt;The actual changes to the files is minimised, just an AssemblyInfo.cs change&lt;/li&gt; &lt;li&gt;“AllowPartiallyTrustedCallers” is set for Sandboxed Solutions&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Sandbox Architecture&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Execution manager, runs on the front end and brokers requests through to the “Back End” systems which are hosting the Host Services. Host Services spins up the required worker processes, which then use the WorkerProcess proxy, which then makes the real calls to the OM&lt;/li&gt; &lt;li&gt;Wonder what the overall performance impact is of this?&lt;/li&gt; &lt;li&gt;The worker processes can be shut down if they start to do bad things, isolating the disaster&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Code Access Security&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Cannot access any resources out of the Sandbox&lt;/li&gt; &lt;li&gt;Uses an API Blocklist, this means the Farm Administrator can further lock down the API’s that can be used. This does not mean you can change the basic subset, this limit will always be there.&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Full-Trust proxy is the way you break out to do more in your applications&lt;/li&gt; &lt;ul&gt; &lt;li&gt;It is a fully trusted piece of code you can call in your applications&lt;/li&gt; &lt;li&gt;Full Trust proxy does just a specific task, for example, read from ERP systems&lt;/li&gt; &lt;li&gt;Create a class that inherits from a SPProxyOperationsArgs (this just passes arguments) –&amp;gt; Goes in the GAC&lt;/li&gt; &lt;li&gt;Then another using SPProxyOperation, this does the job –&amp;gt; goes in the GAC.&lt;/li&gt; &lt;li&gt;From your sandboxed solution you then call it.&lt;/li&gt; &lt;li&gt;Once you have written these, then you need to register them with SharePoint&lt;/li&gt; &lt;li&gt;The idea here is to create a set of trusted API’s that can be leveraged by all SharePoint developers.&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Sandbox solution execution can be load balanced across the farm.&lt;/li&gt; &lt;ul&gt; &lt;li&gt;You can also setup a dedicated set of servers whose job is to run the sandboxed solutions&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Solution Validation&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Administrators can block solutions&lt;/li&gt; &lt;li&gt;Can create a “Solution Validation” object which then interrogates the solutions.&lt;/li&gt; &lt;li&gt;Very interesting, this is pretty sophisticated stuff.&lt;/li&gt; &lt;li&gt;Solution Validators inherit from SPSolutionValidator&lt;/li&gt; &lt;li&gt;Could check things like:&lt;/li&gt; &lt;ul&gt; &lt;li&gt;location of files&lt;/li&gt; &lt;li&gt;can validate based on many properties of the package, and everything in it.&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Deployed as a Farm Level solution&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Solution Monitoring&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Resource points can be used to manage the resources on the server. &lt;/li&gt; &lt;li&gt;If a solution uses too many resources, then it is stopped for the day&lt;/li&gt; &lt;li&gt;Helps to identify expensive solutions&lt;/li&gt; &lt;li&gt;There are 14 measures in all, they have different units of measurement of course, these are boiled down to the resource points&lt;/li&gt; &lt;li&gt;You set points across the various measurements&lt;/li&gt; &lt;li&gt;This is done per site collection&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=2zMVDfhS_kE:flZT5nq9IFA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=2zMVDfhS_kE:flZT5nq9IFA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=2zMVDfhS_kE:flZT5nq9IFA:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=2zMVDfhS_kE:flZT5nq9IFA:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=2zMVDfhS_kE:flZT5nq9IFA:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=2zMVDfhS_kE:flZT5nq9IFA:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Mon, 19 Oct 2009 17:06:33 GMT</pubDate></item><item><title>#SPC09 Notes: Visual Studio Development Overview</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/10/19/spc09-notes-visual-studio-development-overview.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/10/19/spc09-notes-visual-studio-development-overview.aspx</guid><description>&lt;div class="ExternalClassF6C3A7ED038F48439F2B55D508620D02"&gt;&lt;p&gt;This is the first of a series of notes I will be making while attending the SharePoint Conference in Vegas. These are not intended to be complete, polished, edited blog posts. Its simply the highlights, as I saw it, from the sessions I attended.&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Tools are designed to make development for SharePoint a LOT easier and a LOT more productive&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Supports Sandboxed and Farm solutions&lt;/li&gt; &lt;li&gt;Provides a number of Project and Item Templates&lt;/li&gt; &lt;li&gt;Provides a number of Visual Designers&lt;/li&gt; &lt;li&gt;Provides a number of Workflow improvements&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Templates&lt;/li&gt; &lt;ul&gt; &lt;li&gt;You are going to generally start with an empty project and then add the items you need as you need them&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Solution Types&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Farm Solutions = What we have today&lt;/li&gt; &lt;li&gt;Sandboxed Solutions = Site Solutions&lt;/li&gt; &lt;li&gt;This can be changed whenever you like&lt;/li&gt; &lt;li&gt;When creating the project you specify a debug site&lt;/li&gt; &lt;li&gt;Intellisense filtering stops you seeing things you can use when in Sandboxed mode. HOT&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Item Templates&lt;/li&gt; &lt;ul&gt; &lt;li&gt;These are not complete (wonder what is missing?)&lt;/li&gt; &lt;li&gt;Can use an empty template for those&lt;/li&gt; &lt;li&gt;Seems to include the most popular items&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;DEMO 1&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Showed a workflow&lt;/li&gt; &lt;li&gt;This does look nice in the demo, hard to note it&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Deployment&lt;/li&gt; &lt;ul&gt; &lt;li&gt;There is some logic in the deployment process which will detect any existing assets which might conflict with a new version. For example old web part files. This can be set to Automatic, or you can have it prompt you.&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Event receivers&lt;/li&gt; &lt;ul&gt; &lt;li&gt;There is a template for these&lt;/li&gt; &lt;li&gt;Wizard based creation, builds our the xml files for you&lt;/li&gt; &lt;li&gt;Certainly makes things a little qucker,&lt;/li&gt; &lt;li&gt;F5 to deploy when done. Nice&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;BDC Designer&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Looks sophisticated, and very graphical&lt;/li&gt; &lt;li&gt;You do not ever need to see the ADF XML file. Interesting.&lt;/li&gt; &lt;li&gt;Read/Write, full CRUD support&lt;/li&gt; &lt;li&gt;VS would be used over SPD because you cant write code in SPD&lt;/li&gt; &lt;li&gt;VS could support scenarios like pulling data into one list from multiple sources&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Development Continuum&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Slide that demonstrates that:&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Visio and SPD and important and export between them&lt;/li&gt; &lt;li&gt;SPD –&amp;gt; VS occurs via the WSP&lt;/li&gt; &lt;li&gt;You can save your Site as a WSP file&lt;/li&gt; &lt;li&gt;Great for Functional designers to be working with the Developers&lt;/li&gt; &lt;li&gt;Great for Mock-ups. HOT&lt;/li&gt; &lt;li&gt;This includes workflows&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Visio can be used to design the Workflows, but you need to get them into SPD to make them real workflows. From there they can go back and forth.&lt;/li&gt; &lt;li&gt;Once you send it to VS for coding, then you cannot go back again. &lt;/li&gt;&lt;/ul&gt; &lt;li&gt;DEMO&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Showing how a WSP can be imported&lt;/li&gt; &lt;li&gt;Created a SPD workflow in a site –&amp;gt; Saved it as a WSP.&lt;/li&gt; &lt;li&gt;Finds all the declarative artefacts for importing&lt;/li&gt; &lt;li&gt;This pulls in lots of stuff!&lt;/li&gt; &lt;li&gt;You can then pick and choose, so you are going to want to pull in only the custom bits, not all the standard content types and fields. &lt;/li&gt; &lt;li&gt;Identifies all your dependencies.&lt;/li&gt; &lt;li&gt;In the end the two custom lists that were created in the site that was saved to a WSP are transformed into new features. This could get seriously out of hand with Farm features, but I guess no big deal for Sandboxed solutions&lt;/li&gt; &lt;li&gt;Like the way this is going, think there is lots of potential here for increasing developer agility&lt;/li&gt; &lt;li&gt;You can actually set multiple startup projects! (I think with VS2008 even?)&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Project System&lt;/li&gt; &lt;ul&gt; &lt;li&gt;This has been completely revamped in VS 2010&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Server Explorer&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Has SharePoint connections&lt;/li&gt; &lt;li&gt;Supports connections to multiple site collections&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Feature Designer&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Graphical way to build a feature&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Add items that are available&lt;/li&gt; &lt;li&gt;Activation dependencies&lt;/li&gt; &lt;li&gt;Looks like this is how you can re-organise your projects&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;They have worked hard to ensure you dont have to get your hands dirty with XML.&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Package Designer&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Works in a similar way&lt;/li&gt; &lt;li&gt;Focused at the feature level&lt;/li&gt; &lt;li&gt;All drag and drop&lt;/li&gt; &lt;li&gt;Options for adding other assemblies&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Packaging Explorer&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Single view, tree view, of a single package&lt;/li&gt; &lt;li&gt;lets you drill into it&lt;/li&gt; &lt;li&gt;Each project in a solution gets one package&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Mapped Folders&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Provide a project folder where you can store images and layouts pages&lt;/li&gt; &lt;li&gt;Effectively this is just a nicer way to manage your images and layouts pages&lt;/li&gt; &lt;li&gt;Helps guide people down best practice for solution artefacts. HOT&lt;/li&gt; &lt;li&gt;DONT use 12 Hive use SharePointRoot instead.&lt;/li&gt; &lt;li&gt;Sandbox solutions dont have a filesystem of course.&lt;/li&gt; &lt;li&gt;You can create your own mapped folders, you get Images and Layouts by default.&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Creating your own SharePoint Items for VS Projects could be fun&lt;/li&gt; &lt;li&gt;You will have the ability to define exactly what happens when you perform a deployment, this is slick too.&lt;/li&gt; &lt;li&gt;Visual Studio is very extensible, if anything is missing, you can code it in yourself&lt;/li&gt; &lt;li&gt;Worked hard to make GUID managing much easier, they use replaceable tokens in lots of places.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=XcPyOa0Mq5E:S8MHyZyuLlw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=XcPyOa0Mq5E:S8MHyZyuLlw:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=XcPyOa0Mq5E:S8MHyZyuLlw:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=XcPyOa0Mq5E:S8MHyZyuLlw:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=XcPyOa0Mq5E:S8MHyZyuLlw:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=XcPyOa0Mq5E:S8MHyZyuLlw:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Mon, 19 Oct 2009 15:24:54 GMT</pubDate></item><item><title>#SPC 09 Notes: Developer Overview</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/10/19/spc-09-developer-overview.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/10/19/spc-09-developer-overview.aspx</guid><description>&lt;div class="ExternalClass1494EDF7C95C4315B38B891B24B17499"&gt;
&lt;p&gt;This is the first of a series of notes I will be making while attending the SharePoint Conference in Vegas. These are not intended to be complete, polished, edited blog posts. Its simply the highlights, as I saw it, from the sessions I attended.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Started with a review of the types of applications that are built on SharePoint.&lt;/li&gt;
&lt;li&gt;SharePoint 2010 can be install on Windows 7 or Vista SP1&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Both SharePoint Foundation Server (was WSS) or SharePoint 2010&lt;/li&gt;
&lt;li&gt;Still requires you to be running 64bit&lt;/li&gt;
&lt;li&gt;This is for development only, so single server, non-production, etc.&lt;/li&gt;
&lt;li&gt;There is an Install Guide in the SDK (Beta coming in November) this replaces the Prereqs installer that works on the Server OS’s&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;Visual Studio 2010 integration is the tightest integration ever.&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Lots of “SharePoint Aware” designers (Web Parts for example)&lt;/li&gt;
&lt;li&gt;Package and Deploy&lt;/li&gt;
&lt;li&gt;Can view SharePoint site via the Server Explorer&lt;/li&gt;
&lt;li&gt;TFS integration&lt;/li&gt;
&lt;li&gt;Sandbox support, WSP Import (nice)&lt;/li&gt;
&lt;li&gt;BDC becomes BCD (Business Connectivity Services)&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;SharePoint Designer 2010&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Will remain free&lt;/li&gt;
&lt;li&gt;Looks to be seriously beefed up and also simplified. Seems to have removed or hidden many of the FrontPage functionality hangovers.&lt;/li&gt;
&lt;li&gt;Workflow Designer&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;Developer Dashboard&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Very hot&lt;/li&gt;
&lt;li&gt;Is turned on by demand, and provides real time feedback on the performance of your code.&lt;/li&gt;
&lt;li&gt;Beta 2 will require manual steps in order to activate it (STSADM/Powershell command)&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;DEMO 1&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Visual Studio –&amp;gt; Build a Web Part&lt;/li&gt;
&lt;li&gt;Farm Solution = To current approach to solution building&lt;/li&gt;
&lt;li&gt;Site Solution is the new Sandboxed stuff.&lt;/li&gt;
&lt;li&gt;Demo uses the VS Toolbox to graphically build a web part.&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Uses a UserControl&lt;/li&gt;
&lt;li&gt;I think this is nice, interesting to see how much I will actually use this&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;LINQ for SharePoint (Was almost expecting an applause on this one!)&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;SPMetal works like SQLMetal&lt;/li&gt;
&lt;li&gt;LINQ looks hot&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;F5 kicks off the browser with “Add Web Part Page” &lt;/li&gt;
&lt;li&gt;Web Part Page is going to be a depreciated, pretty much Wiki pages do it all now. (Wiki pages do have a Web Part Zone, but does not display it)&lt;/li&gt;
&lt;li&gt;Dashboard provides LOTS of detail&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;Platform Services&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;BCS is the new name for Business Data Catalog&lt;/li&gt;
&lt;li&gt;Read/Write access to data&lt;/li&gt;
&lt;li&gt;Comes with SharePoint Foundation now, NICE.&lt;/li&gt;
&lt;li&gt;Office clients can then take the data offline (wonder how conflicts are managed)&lt;/li&gt;
&lt;li&gt;SQL, Web Services&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;DEMO 2&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Connecting the BCS to a Web Service&lt;/li&gt;
&lt;li&gt;SharePoint Designer is the primary place to do this, can also do it in Visual Studio&lt;/li&gt;
&lt;li&gt;With VS you can connect it through to a .NET type&lt;/li&gt;
&lt;li&gt;Generate the CRUD operations for you&lt;/li&gt;
&lt;li&gt;Explorer that helps you define these objects, and then you can write any custom mechanisms for performing the CRUD operations&lt;/li&gt;
&lt;li&gt;IISRESETS will not be going away (not that I was expecting it)&lt;/li&gt;
&lt;li&gt;Connect it through to lists using “External Content Types”&lt;/li&gt;
&lt;li&gt;the result is that the external data looks exactly like a list.&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;SharePoint List Improvements (most interesting to me)&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Can create relationships between lists, with cascades…(WOW)&lt;/li&gt;
&lt;li&gt;This is piggy backing on SQL functionality&lt;/li&gt;
&lt;li&gt;Validation support, Excel like formulas&lt;/li&gt;
&lt;li&gt;Lookup to multiple columns, nice&lt;/li&gt;
&lt;li&gt;Automatically create indexes where they make sense (for example on lookups)&lt;/li&gt;
&lt;li&gt;Demonstrated a 220,000 item lists, (dont be afraid of large lists)…hmmmm I’m not sure this is really as big a deal as it is. Querying the data is still the important bit. Throttling will block queries that are made for large numbers of items (configurable)&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;XSLT for Views&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Bit of CAML bashing, its not really that bad.&lt;/li&gt;
&lt;li&gt;CAML does not go away, but views will now be done with XSLT&lt;/li&gt;
&lt;li&gt;CAML mostly used for Queries (wonder where the LINQ/CAML overlap is)&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;DEMO 3&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;List definition obviously become more complex now, wonder how your average SharePoint user will feel about that.&lt;/li&gt;
&lt;li&gt;Demonstrates the cascading functionality&lt;/li&gt;
&lt;li&gt;Column validation looks hot, got an applause&lt;/li&gt;
&lt;li&gt;Lists will indeed become much better for creating applications&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;Accessing Data in Lists&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Lots of new options&lt;/li&gt;
&lt;li&gt;Server OM (as we have now)&lt;/li&gt;
&lt;li&gt;New: Client OM –&amp;gt; Runs on the desktop&lt;/li&gt;
&lt;li&gt;New: REST API’s –&amp;gt; ATOM response&lt;/li&gt;
&lt;li&gt;New: LINQ and all LINQ goodness&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Supports Joins and Projections&lt;/li&gt;
&lt;li&gt;Will dramatically reduce run time errors, moving them to compile time&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;
&lt;li&gt;Client Object Model&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Different to the Server OM&lt;/li&gt;
&lt;li&gt;Promotes the batching of commands, so different to Server OM, but will be familiar&lt;/li&gt;
&lt;li&gt;Almost full access to site based functions, but not server operations (maybe some limited) you use this “ExecuteQuery” function to perform the operations you line up, nice.&lt;/li&gt;
&lt;li&gt;.Net assembly, Silverlight and Javascript files (Very HOT)&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;REST API&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Supports ADO.NET Data services&lt;/li&gt;
&lt;li&gt;SP2010 also installed ADO.NET services as these are what the REST API’s are built on&lt;/li&gt;
&lt;li&gt;SharePoint becomes an ADO data service. Thanks to REST. HOT&lt;/li&gt;
&lt;li&gt;Seems to come in mostly on the LISTDATA service&lt;/li&gt;
&lt;li&gt;Demonstrates querying by URL, smart stuff.&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;DEMO 4&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Builds a Windows Forms application&lt;/li&gt;
&lt;li&gt;Adds a data source, service reference –&amp;gt; connects to LISTDATA&lt;/li&gt;
&lt;li&gt;Binds a Grid on to the SharePoint List&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;Event Improvements&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Project Template&lt;/li&gt;
&lt;li&gt;New After-Synchronous event&lt;/li&gt;
&lt;li&gt;Site Scoped events&lt;/li&gt;
&lt;li&gt;Web Creation Events&lt;/li&gt;
&lt;li&gt;List Creation events&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;Workflow Improvements&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;This is a really long slide&lt;/li&gt;
&lt;li&gt;SharePoint Designer has an improved design service&lt;/li&gt;
&lt;li&gt;Integration between SPD – VS&lt;/li&gt;
&lt;li&gt;Browser base visualisations, HOT&lt;/li&gt;
&lt;li&gt;OOB workflows can be fully customised.&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;DEMO 5&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Build a really quick workflow is VS&lt;/li&gt;
&lt;li&gt;Creates a Sequential Workflow&lt;/li&gt;
&lt;li&gt;Can create a “Site” or a “List” workflow, Site Workflows do not require a list.&lt;/li&gt;
&lt;li&gt;VS has a very visual designer&lt;/li&gt;
&lt;li&gt;Got your standard drag and drop workflow design, nice, but the devil is in the detail&lt;/li&gt;
&lt;li&gt;Adds an “Initiation form”, this is just a web form&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;SharePoint Service Applications&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;If a job is too big for the Code Behind, make it a service application&lt;/li&gt;
&lt;li&gt;SSP –&amp;gt; Service applications&lt;/li&gt;
&lt;li&gt;Developers can create new services&lt;/li&gt;
&lt;li&gt;WCF knowledge nice to know here&lt;/li&gt;
&lt;li&gt;Includes: &lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;WS/Database provisioning&lt;/li&gt;
&lt;li&gt;Settings Store&lt;/li&gt;
&lt;li&gt;and much more…&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;
&lt;li&gt;Ribbon and Dialog Framework&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;A number of elements available for use by developers:&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Ribbon is context sensitive&lt;/li&gt;
&lt;li&gt;Status bar&lt;/li&gt;
&lt;li&gt;Notification area&lt;/li&gt;
&lt;li&gt;Dialog Framework&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;These are all JS based, all AJAXy&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;Silverlight&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Media Player – HOT&lt;/li&gt;
&lt;li&gt;Beyond Media scenarios, I’m not really much of a Silverlight fan&lt;/li&gt;
&lt;li&gt;Could be nice to smooth over the upload process&lt;/li&gt;
&lt;li&gt;There is a client API for this&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;Flexible Deployment&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Sandbox Solutions - HOT&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Designed to strike a balance between business Agility and Security and Stability&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;Site Collection based&lt;/li&gt;
&lt;li&gt;Limited API Access&lt;/li&gt;
&lt;li&gt;Monitored&lt;/li&gt;
&lt;li&gt;Deployed remotely to a solution gallery (a lot like a document library)&lt;/li&gt;
&lt;li&gt;Does no end up anywhere on the server filesystem&lt;/li&gt;
&lt;li&gt;Easy deployment&lt;/li&gt;
&lt;li&gt;This has some pretty profound implications&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;DEMO 6&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Sandbox solutions come with alternative VS deployment config&lt;/li&gt;
&lt;li&gt;Create a web part –&amp;gt; Adds a label control which displays all the sites and all the lists&lt;/li&gt;
&lt;li&gt;Tries to do some bad stuff in the code –&amp;gt; Creates a big loop&lt;/li&gt;
&lt;li&gt;Packages it, and then goes to upload manually (very smart stuff)&lt;/li&gt;
&lt;li&gt;Solution gallery lives in Site Settings&lt;/li&gt;
&lt;li&gt;Adds the web part&lt;/li&gt;
&lt;li&gt;When the loop goes for too long, then it hits a resource limitation&lt;/li&gt;
&lt;li&gt;Resource monitoring which can set limits, and creates a series of metrics around the performance of various applications&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;eg. Resource Usage.&lt;/li&gt;
&lt;li&gt;Clear this is functionality driven by Microsoft Online requirements&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;In my view this is the most significant new feature in the product&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;SharePoint Online&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Supports Sandboxed solutions&lt;/li&gt;
&lt;li&gt;Supports BCS&lt;/li&gt;
&lt;li&gt;It becomes a development platform&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;Upgrade and Packaging&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Upgrade callouts for features – HOT&lt;/li&gt;
&lt;li&gt;Test your SP2007 code before running on a SP2010 server, SHOULD be ok, but needs to be tested&lt;/li&gt;
&lt;li&gt;WSP is the unified packaging approach&lt;/li&gt;&lt;/ul&gt;
&lt;li&gt;TFS&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Bit light on, will need to check out the specific session.&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=b_fY1RgPJjw:sNQjT8hCmCA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=b_fY1RgPJjw:sNQjT8hCmCA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=b_fY1RgPJjw:sNQjT8hCmCA:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=b_fY1RgPJjw:sNQjT8hCmCA:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=b_fY1RgPJjw:sNQjT8hCmCA:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=b_fY1RgPJjw:sNQjT8hCmCA:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Mon, 19 Oct 2009 13:58:00 GMT</pubDate></item><item><title>Get Your Demos While They Are Hot! Blog Central, Discussions Central, TunnelPoint and Produshare</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/10/14/get-your-demos-while-they-are-hot-blog-central-discussions-central-tunnelpoint-and-produshare.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/10/14/get-your-demos-while-they-are-hot-blog-central-discussions-central-tunnelpoint-and-produshare.aspx</guid><description>&lt;div class="ExternalClassDE0AEB22838D401B8315193947A08123"&gt;&lt;p&gt;As mentioned &lt;a href="http://community.zevenseas.com/Blogs/Daniel/Lists/Posts/ViewPost.aspx?ID=106"&gt;before&lt;/a&gt;, next week, zevenseas is heading to Las Vegas for the SharePoint Conference. Given its a week of “Show and Tell” we are coming fully equipped to demonstrate any of the three product releases we made this year. &lt;/p&gt; &lt;p&gt;&lt;a href="http://demo.zevenseas.com"&gt;Blog Central&lt;/a&gt;&lt;br&gt;Discussions Central (released this week)&lt;br&gt;&lt;a href="http://community.zevenseas.com/Blogs/Daniel/Lists/Posts/ViewPost.aspx?ID=90"&gt;TunnelPoint&lt;/a&gt; – &lt;a href="http://www.tunnelpoint.com"&gt;http://www.tunnelpoint.com&lt;/a&gt; &lt;br&gt;&lt;a href="http://www.produshare.com"&gt;ProduShare&lt;/a&gt;&lt;/p&gt; &lt;p&gt;If you have an interest in any of the above, and have 5 minutes to spare, drop me an email &lt;a href="mailto:daniel@zevenseas.com"&gt;daniel@zevenseas.com&lt;/a&gt; or send me a tweet @danmc and lets be sure to find some time. I’ll even pay for the beer or coffee!&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=pK69GgQLJhs:v3nl2XkmlYw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=pK69GgQLJhs:v3nl2XkmlYw:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=pK69GgQLJhs:v3nl2XkmlYw:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=pK69GgQLJhs:v3nl2XkmlYw:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=pK69GgQLJhs:v3nl2XkmlYw:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=pK69GgQLJhs:v3nl2XkmlYw:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Wed, 14 Oct 2009 00:03:15 GMT</pubDate></item><item><title>Assembly Free solution Contest with Cash prize</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/10/02/assembly-free-solution-contest-with-cash-prize.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/10/02/assembly-free-solution-contest-with-cash-prize.aspx</guid><description>&lt;div class="ExternalClassBAA377949A5D4243A70890DC698F8045"&gt;
&lt;p&gt;Readers of this blog will know that we have been spending a lot of time recently exploring the potential of SharePoint solutions that can be installed without touching the server. &lt;/p&gt;
&lt;p&gt;There are our two cloud based service:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://community.zevenseas.com/Blogs/Daniel/Lists/Posts/ViewPost.aspx?ID=91"&gt;TunnelPoint&lt;/a&gt; – &lt;a href="http://www.tunnelpoint.com/"&gt;http://www.tunnelpoint.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.produshare.com/"&gt;ProduShare&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;And the solution we have released:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://community.zevenseas.com/Blogs/Daniel/Lists/Posts/ViewPost.aspx?ID=98"&gt;Team Status (Twitter for SharePoint)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://community.zevenseas.com/Blogs/Daniel/Lists/Posts/ViewPost.aspx?ID=99"&gt;Timesheet&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;To encourage the development of more “Assembly Free Solutions” we have decided to kick off a little contest. If you have a good idea for an assembly free solution, and have ninja-like Javascript and Web Service skills then put something together and send it through to &lt;a href="mailto:hans@zevenseas.com"&gt;hans@zevenseas.com&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;First prize is EUR 500 cash, and we promise to showcase each of the solutions here on our blogs. &lt;/p&gt;
&lt;p&gt;To get started take a look at our existing solutions&lt;/p&gt;
&lt;p&gt;&lt;a href="http://community.zevenseas.com/Blogs/Daniel/Lists/Posts/ViewPost.aspx?ID=98"&gt;Team Status&lt;/a&gt;&lt;br&gt;&lt;a href="http://community.zevenseas.com/Blogs/Daniel/Lists/Posts/ViewPost.aspx?ID=99"&gt;Timesheets&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;And take a look at the following JS libraries:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://darrenjohnstone.net/2008/07/22/examples-for-the-sharepoint-and-office-live-javascript-api/"&gt;Darren Johnston's JS API&lt;/a&gt;&lt;br&gt;&lt;a href="http://spservices.codeplex.com/"&gt;JQuery Library for SharePoint Web Services&lt;/a&gt; by &lt;a title="Sympraxis Consulting LLC" href="http://www.sympraxisconsulting.com/"&gt;Sympraxis Consulting LLC&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;There are obviously a whole stack of Terms and Conditions, &lt;a href="http://community.zevenseas.com/blogs/hans"&gt;Hans&lt;/a&gt; has these over on his blog &lt;a href="http://community.zevenseas.com/Blogs/Hans/archive/2009/10/02/produshare-non-assembly-contest.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=1hNsHOe2jIE:NcFBb7zw4AU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=1hNsHOe2jIE:NcFBb7zw4AU:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=1hNsHOe2jIE:NcFBb7zw4AU:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=1hNsHOe2jIE:NcFBb7zw4AU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=1hNsHOe2jIE:NcFBb7zw4AU:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=1hNsHOe2jIE:NcFBb7zw4AU:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Fri, 02 Oct 2009 06:12:00 GMT</pubDate></item><item><title>Web Page Thumbnails in Your SharePoint Lists</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/10/02/web-page-thumbnails-in-your-sharepoint-lists.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/10/02/web-page-thumbnails-in-your-sharepoint-lists.aspx</guid><description>&lt;div class="ExternalClass909E67345A1C406BBE74D692FF1F4460"&gt;&lt;p&gt;I have been slow in posting on a very cool new community solution &lt;a href="http://community.zevenseas.com/blogs/mark"&gt;Mark&lt;/a&gt; published a few weeks back. Its called “&lt;a href="http://community.zevenseas.com/Blogs/Mark/archive/2009/08/07/screenscraper-create-your-screenshots-within-your-sharepoint-list.aspx"&gt;ScreenScraper&lt;/a&gt;” and when installed to a list it will:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Take in a URL&lt;/li&gt; &lt;li&gt;Go out to the web&lt;/li&gt; &lt;li&gt;Take a screen shot of the web page&lt;/li&gt; &lt;li&gt;Save it as an attachment to the original list item&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;Combined with our free &lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/ViewPost.aspx?ID=59"&gt;Tagged Links&lt;/a&gt; solution, it means you will never lose that cool web site again. &lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/107/image_4_01BFB920.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/107/image_thumb_1_01BFB920.png" width="314" height="151"&gt;&lt;/a&gt;  &lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/107/image_6_01BFB920.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/107/image_thumb_2_6CCE36AC.png" width="244" height="148"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt; &lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/107/image_8_6CCE36AC.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;margin-left:0px;border-top:0px;margin-right:0px;border-right:0px" title="image" border="0" alt="image" align="right" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/107/image_thumb_3_6CCE36AC.png" width="122" height="139"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h2&gt;&lt;a href="http://www.zevenseas.com/go.aspx?SCREENSCRAPER=DOWNLOAD"&gt;Download ScreenScraper&lt;/a&gt;&lt;br&gt;&lt;/h2&gt; &lt;p&gt;&lt;strong&gt;Or Try it yourself (&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/ViewPost.aspx?ID=39"&gt;walkthrough here&lt;/a&gt;):  &lt;br&gt;&lt;/strong&gt;&lt;a href="http://fishtank.zevenseas.com/sites/Tagged%20Links/TaggedLinks/AllItems.aspx"&gt;Tagged Links&lt;/a&gt;&lt;br&gt;Username: DemoUser &lt;br&gt;Password: DemoUser &lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=r0TT2fgYLFk:n7qKIjYlzYM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=r0TT2fgYLFk:n7qKIjYlzYM:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=r0TT2fgYLFk:n7qKIjYlzYM:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=r0TT2fgYLFk:n7qKIjYlzYM:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=r0TT2fgYLFk:n7qKIjYlzYM:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=r0TT2fgYLFk:n7qKIjYlzYM:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Fri, 02 Oct 2009 02:46:54 GMT</pubDate></item><item><title>I’ll Be At SharePoint Conference 2009</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/10/02/i’ll-be-at-sharepoint-conference-2009.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/10/02/i’ll-be-at-sharepoint-conference-2009.aspx</guid><description>&lt;div class="ExternalClass0FC69DC432CF4946881D3169643F78FF"&gt;&lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/106/image_2_3DBF3A9A.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:block;float:none;margin-left:auto;border-top:0px;margin-right:auto;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/106/image_thumb_3DBF3A9A.png" width="242" height="138"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Along with the whole zevenseas team (&lt;a href="http://community.zevenseas.com/blogs/mark"&gt;Mark&lt;/a&gt;, &lt;a href="http://community.zevenseas.com/blogs/robin"&gt;Robin&lt;/a&gt; and &lt;a href="http://community.zevenseas.com/blogs/hans"&gt;Hans&lt;/a&gt;). Looking forward to seeing you there! &lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=SuW-72tqwi8:xjJJGvW1Y2c:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=SuW-72tqwi8:xjJJGvW1Y2c:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=SuW-72tqwi8:xjJJGvW1Y2c:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=SuW-72tqwi8:xjJJGvW1Y2c:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=SuW-72tqwi8:xjJJGvW1Y2c:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=SuW-72tqwi8:xjJJGvW1Y2c:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Fri, 02 Oct 2009 02:06:21 GMT</pubDate></item><item><title>SharePoint Saturday Copenhagen</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/08/12/sharepoint-saturday-copenhagen.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/08/12/sharepoint-saturday-copenhagen.aspx</guid><description>&lt;div class="ExternalClass6C962FAD80DC444697FECE9D40EAFA41"&gt;&lt;p&gt;I will be heading over to Copenhagen next week for the SharePoint Saturday that is being hosted there by &lt;a href="http://www.sharepointevolved.com/default.aspx"&gt;Isaac Stith&lt;/a&gt; (@MrIsaac) and &lt;a href="http://www.it-selskabet.com/"&gt;Jens Nørgaard&lt;/a&gt; (@SharePointDK). I’m really looking forward to it as they have pulled together a great bunch of people including: &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.zimmergren.net/default.aspx"&gt;Tobias Zimmergren&lt;/a&gt;&lt;br&gt;&lt;a href="http://keutmann.blogspot.com/"&gt;Carsten Keutmann&lt;/a&gt;&lt;br&gt;&lt;a href="http://sharepointsearch.com/cs/blogs/notorioustech/default.aspx"&gt;Christopher Even&lt;/a&gt;&lt;br&gt;Henrik Nordtorp&lt;br&gt;&lt;a href="http://workplacemanagement.spaces.live.com/default.aspx?wa=wsignin1.0&amp;amp;sa=827796418"&gt;Marianne van Wanrooij&lt;/a&gt;&lt;br&gt;Michael Noel&lt;br&gt;&lt;a href="http://www.sharepointmadscientist.com/default.aspx"&gt;Mike Watson&lt;/a&gt;&lt;br&gt;Sarju Raja&lt;br&gt;&lt;a href="http://shikharagarwal.wordpress.com/"&gt;Shikhar Agarwal&lt;/a&gt;&lt;br&gt;&lt;a href="http://www.sharepointusecases.com/"&gt;Toni Frankola&lt;/a&gt;&lt;br&gt;&lt;a href="http://www.wictorwilen.se/"&gt;Wictor Wilen&lt;/a&gt;&lt;/p&gt; &lt;p&gt;I’m looking forward to presenting the following session: &lt;strong&gt;SharePoint, the Social Computing Platform &lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;em&gt;An in-depth look at using SharePoint to build “Social Applications”. Want to build YouTube for your organisation? Flickr? Delicious? Want to create your own Facebook style Newsfeed? This session will demonstrate how one company has done just that, and how you can do it inside your organisation.&lt;/em&gt;&lt;/p&gt; &lt;p&gt;Its a free event, however if you are planning to attend it is recommended you sign up over here: &lt;a href="http://www.sharepointsaturday.org/copenhagen/"&gt;http://www.sharepointsaturday.org/copenhagen/&lt;/a&gt;&lt;/p&gt; &lt;p&gt;See you there!&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=1lbTyMZQtrU:FFuVxPAcrno:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=1lbTyMZQtrU:FFuVxPAcrno:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=1lbTyMZQtrU:FFuVxPAcrno:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=1lbTyMZQtrU:FFuVxPAcrno:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=1lbTyMZQtrU:FFuVxPAcrno:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=1lbTyMZQtrU:FFuVxPAcrno:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Wed, 12 Aug 2009 08:13:10 GMT</pubDate></item><item><title>Keystrokes as a non-renewable Resource</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/08/07/keystrokes-as-a-non-renewable-resource.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/08/07/keystrokes-as-a-non-renewable-resource.aspx</guid><description>&lt;div class="ExternalClassF4952A4EC2E946E88A8673A2997DE73A"&gt;&lt;p&gt;Next time you are writing a document, a report or replying to an email, stop! Stop and think about what you would do with those letters if you had only a limited number of keystrokes left in your fingers. Pretend for a second, that the keystrokes you type are a resource that will not be replenished, that we are running out, and when we do, they are gone forever. &lt;/p&gt; &lt;p&gt;Thinking like this will get you thinking in terms of maximising value. How can I maximise the impact of the knowledge I’m creating? How can I transmit it to the people who can benefit from it most? How can I save the non-renewable keystrokes of others who might be working on the same problems? How can I keep this knowledge working, perhaps even after I have stopped?&lt;/p&gt; &lt;p&gt;To me, this is a powerful way of thinking about the knowledge we are inevitably creating from the moment we sit in front of our computers, until the moment we turn them off. Of course it goes further than us as individuals. Capturing, organising and, most importantly, sharing the knowledge we create is one of the greatest challenges facing organisations today. &lt;/p&gt; &lt;p&gt;&lt;strong&gt;Being great at getting the right knowledge to the right people can be a significant competitive advantage. &lt;/strong&gt;&lt;/p&gt; &lt;p&gt;I’ve seen an enormous number of attempts to solve this problem. In fact, my first role at Microsoft was the unenviable task of demonstrating how you can build collaborative applications using Outlook and Exchange that rivaled those created in Lotus Notes. Over the years it has been called “Knowledge Management”, “Collaboration”, “The New World Of Work” and “KM 2.0”. Throughout this, its always had the same goal, how do you move the knowledge and experience from one person to another. &lt;/p&gt; &lt;p&gt;For the first time in the 13 years or more I’ve been working in this area I’m seeing a new approach emerge, one that I think, might just work. Its an approach that starts from the bottom and works its way up. Its an approach which is informal, unstructured, decentralised and direct, but most importantly its an approach that people actually want to participate in. &lt;/p&gt; &lt;p&gt;&lt;strong&gt;Its Blogging, where the KM bus dropped us off.&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;I can already hear the skepticism, and make no mistake, I shared it when I started down this path now 18 months ago. It was a healthy skepticism though, one that was informed by the &lt;a href="http://blogs.msdn.com/danielmcpherson"&gt;blogging experience&lt;/a&gt; I enjoyed at Microsoft. I learned then that there was a huge number of people who actually wanted to share their knowledge, all they were waiting for was an easy platform upon which to do it. &lt;/p&gt; &lt;p&gt;Looking back now its clear to me that a blogging platform for people inside the organisation would be just as valuable as the blogging platform I’m using to share this knowledge with you right now. Blogging has not only worked on the internet, but its informal, unstructured, decentralised and direct approach has undermined an entire industry. There just has to be something to it. &lt;/p&gt; &lt;p&gt;&lt;strong&gt;Ask yourself a question. Is it as easy for someone in my organisation to publish a page to the intranet as it is for them to reply to an email?&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;If your answer is “no” then with every minute that passes you are wasting a non-renewable resource, keystrokes, which are the currency of knowledge, are going a wasting. &lt;/p&gt; &lt;p&gt;Head over to &lt;a href="http://demo.zevenseas.com"&gt;http://demo.&lt;a href="http://www.zevenseas.com"&gt;zevenseas&lt;/a&gt;.com&lt;/a&gt; and take a look at what an employee blogging platform built on SharePoint could look like. There are people in your organisation right now who want an easier way to share their knowledge, to grow their reputations and make deeper connections with their peer groups.&lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/104/image_2_2B87C017.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:block;float:none;margin-left:auto;border-top:0px;margin-right:auto;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/104/image_thumb_2B87C017.png" width="490" height="271"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;When you have taken the test drive, drop an email to &lt;a href="mailto:hans@zevenseas.com"&gt;hans@zevenseas.com&lt;/a&gt; for more information. &lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=2lTQmGqIjPI:ckBRhhJD7aM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=2lTQmGqIjPI:ckBRhhJD7aM:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=2lTQmGqIjPI:ckBRhhJD7aM:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=2lTQmGqIjPI:ckBRhhJD7aM:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=2lTQmGqIjPI:ckBRhhJD7aM:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=2lTQmGqIjPI:ckBRhhJD7aM:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Fri, 07 Aug 2009 07:27:01 GMT</pubDate></item><item><title>Employee Blogging Using SharePoint: Blog Central</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/07/28/employee-blogging-using-sharepoint-blog-central.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/07/28/employee-blogging-using-sharepoint-blog-central.aspx</guid><description>&lt;div class="ExternalClass88950E1FDFCD402E8BE169184BFF9835"&gt;&lt;p&gt;It gives me great pleasure to announce the release of our of first enterprise product for SharePoint.&lt;/p&gt; &lt;h2 align="center"&gt;Blog Central&lt;/h2&gt; &lt;p align="center"&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/103/image_2_000147A1.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/103/image_thumb_000147A1.png" width="535" height="296"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p align="left"&gt;I have had the great pleasure of working with a small group of early adopter customers on the functionality and feature-set and we have now matured it to the point where we have a V1.0.&lt;/p&gt; &lt;p align="left"&gt;While writing and designing software like this is obviously something I enjoy immensely, what I’ve enjoyed even more is watching blogging take off inside the enterprise. This experience has convinced me that providing people with a platform upon which they can share their knowledge, their experience and in the process grow their reputation, is where the real innovation in Knowledge Management is going to come from over the coming years. &lt;/p&gt; &lt;p align="left"&gt;If you are wondering if a blogging platform, built on SharePoint, could help people in your organisation share their knowledge more effectively, answer this one simple question:&lt;/p&gt; &lt;p align="left"&gt;&lt;strong&gt;Is it as easy today for people to publish a web page to the intranet as it is to write an email?&lt;/strong&gt;&lt;/p&gt; &lt;p align="left"&gt;If the answer to that question is no, then 2009 is about time it became that easy. Email is the enemy, the ease of email is what is keeping knowledge locked away, and blogging is the alternative. It makes it easy for people to turn what through email, is an answer for one, to an answer for everyone.&lt;/p&gt; &lt;p align="left"&gt;&lt;strong&gt;For me, its useful to think of keystrokes as a non-renewable resource.&lt;/strong&gt;&lt;/p&gt; &lt;p align="left"&gt;What would you do if the world were running out of keystrokes? How can you maximize the benefit of every word you write? The benefits should be clear to everyone. By sharing your knowledge you make others better, you make the organisation smarter, and of course, you are able to grow your own reputation. &lt;/p&gt; &lt;p align="left"&gt;Blog Central is the first in what will be a range of solutions designed to make SharePoint better at connecting knowledge and people. If you would like to know more, take a look at our demo site here:&lt;/p&gt; &lt;p align="left"&gt;Blog Central: &lt;a href="http://demo.zevenseas.com"&gt;&lt;strong&gt;http://demo.&lt;/strong&gt;&lt;a href="http://www.zevenseas.com"&gt;&lt;strong&gt;zevenseas&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;.com&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;&lt;strong&gt;Or contact &lt;/strong&gt;&lt;a href="mailto:hans@zevenseas.com"&gt;&lt;strong&gt;hans@zevenseas.com&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt; &lt;h2&gt;&lt;/h2&gt; &lt;h2&gt;Key Features&lt;/h2&gt; &lt;p&gt;The following section describes the key features offered by Blog Central.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Post Aggregation&lt;/strong&gt; &lt;ul&gt; &lt;li&gt;Blog Post Home Page page where people can see what people are posting across the entire organisation &lt;li&gt;Tag Cloud representing what people are blogging about and providing a quick filter  &lt;li&gt;Ability to sort blog posts based on number of:&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Comments &lt;li&gt;Views &lt;li&gt;Published Date&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Support for RSS feeds&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;Provisioning and Directory&lt;/strong&gt; &lt;ul&gt; &lt;li&gt;Provides a place where people can request a new blog (with approvals)&lt;/li&gt; &lt;li&gt;Blog directory supporting custom metadata&lt;/li&gt; &lt;li&gt;Ability to sort blogs based on total number of:&lt;/li&gt; &lt;ul&gt; &lt;li&gt;Posts&lt;/li&gt; &lt;li&gt;Comments&lt;/li&gt; &lt;li&gt;Views&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;Search&lt;/strong&gt; &lt;ul&gt; &lt;li&gt;Specialised search page designed to make it easier to find blog posts&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;Blogs&lt;/strong&gt; &lt;ul&gt; &lt;li&gt;Based on the Standard SharePoint Blog Template &lt;li&gt;One click email subscribe/unsubscribe  &lt;li&gt;Information panel that displays the blog owners, posts, views and comments.  &lt;li&gt;Included support for tags on blog Posts, and a blog specific Tag Cloud &lt;li&gt;Web parts that display “Most Recent”, “Most Discussed” and “Most Viewed” posts.&lt;/li&gt; &lt;li&gt;Detailed and customisable View tracking&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=7LOTFPReyCE:J9be-eyaPuw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=7LOTFPReyCE:J9be-eyaPuw:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=7LOTFPReyCE:J9be-eyaPuw:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=7LOTFPReyCE:J9be-eyaPuw:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=7LOTFPReyCE:J9be-eyaPuw:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=7LOTFPReyCE:J9be-eyaPuw:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Tue, 28 Jul 2009 08:17:25 GMT</pubDate></item><item><title>Mark, Joel and TunnelPoint on “This Week In SharePoint”</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/06/21/mark-and-joel-on-“this-week-in-sharepoint”.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/06/21/mark-and-joel-on-“this-week-in-sharepoint”.aspx</guid><description>&lt;div class="ExternalClassF410A615C0E94D978163CAA81F90ED8B"&gt;&lt;p&gt;&lt;a href="http://www.endusersharepoint.com/?cat=234"&gt;Mark Miller&lt;/a&gt; (of &lt;a href="http://www.endusersharepoint.com"&gt;the End User SharePoint blog&lt;/a&gt;) and &lt;a href="http://www.sharepointjoel.com/default.aspx"&gt;Joel Oleson&lt;/a&gt; have combined for a weekly “This Week In SharePoint” broadcast. We were really pleased to find a discussion of &lt;a href="http://tunnelpoint.com/"&gt;TunnelPoint&lt;/a&gt; in their latest show.&lt;/p&gt; &lt;p&gt;Head on over to view/listen to it here: &lt;a title="http://www.endusersharepoint.com/?p=1770" href="http://www.endusersharepoint.com/?p=1770"&gt;http://www.endusersharepoint.com/?p=1770&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=bkc-2kt_jxc:m97RZ7svbBc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=bkc-2kt_jxc:m97RZ7svbBc:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=bkc-2kt_jxc:m97RZ7svbBc:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=bkc-2kt_jxc:m97RZ7svbBc:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=bkc-2kt_jxc:m97RZ7svbBc:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=bkc-2kt_jxc:m97RZ7svbBc:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Sun, 21 Jun 2009 11:07:00 GMT</pubDate></item><item><title>Updated: Search Coder</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/06/10/updated-search-coder.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/06/10/updated-search-coder.aspx</guid><description>&lt;div class="ExternalClassF3F7B26DFFB84E869175DDAA6FC86DCC"&gt;&lt;p&gt;On a recent project we worked on, we leveraged search pretty heavily, using it to do all the cross-site aggregation heavy lifting. As a result we got a lot of use out of the SearchCoder tool we released last year. We are at the point now where we are looking at driving out additional performance improvements, and to do that we decided to extend the SearchCoder with some new features.&lt;/p&gt; &lt;h3&gt;&lt;a href="http://mosssearchcoder.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=14061"&gt;DOWNLOAD&lt;/a&gt;&lt;/h3&gt; &lt;h2&gt;Support For The Search Web Service&lt;/h2&gt; &lt;p&gt;The initial support is pretty basic, with the intention being that it provides you with a quick way to execute a Full Text SQL query against the SharePoint Web Service. &lt;/p&gt; &lt;p&gt;The functionality that helps you build the query graphically still needs an OM connection to a SharePoint Site, but once you have that query you can issue it via the OM or the Web Service.&lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/101/image_2_27E116E8.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/101/image_thumb_27E116E8.png" width="184" height="115"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;The nice bit about using the Web Service is that it means that you can, with care, test various queries against the production Query Servers and Indexes. Important as often the only place you have such a big index is in production. &lt;/p&gt; &lt;h2&gt;Performance Instrumentation&lt;/h2&gt; &lt;p&gt;Included in the tool is a quick and dirty way to get an average query time for a specific query. Basically, you create your query, test that its working, specify over how many iterations you would like to average, and click a button. The result is something like this:&lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/101/image_4_27E116E8.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/101/image_thumb_1_27E116E8.png" width="381" height="397"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Its pretty basic, but it does the job. I’m going to do a write up on some of the very interesting results we have seen, so stay tuned (pun intended!)&lt;/p&gt; &lt;h2&gt;&lt;/h2&gt; &lt;h2&gt;Change Log Report&lt;/h2&gt; &lt;p&gt;This version also includes a first step into providing a way to expose the SharePoint Search Change Log. The Change Log is the list used by the SharePoint indexer to determine just what work it should do. All you do is enter in a number of minutes, and it will tell you which items the indexer will think has changed in that period. &lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/101/image_6_27E116E8.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/101/image_thumb_2_27E116E8.png" width="244" height="118"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;This need some serious extension to really be useful, but its a start!&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=o8UQcCB_TsQ:2QENDZEYXw0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=o8UQcCB_TsQ:2QENDZEYXw0:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=o8UQcCB_TsQ:2QENDZEYXw0:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=o8UQcCB_TsQ:2QENDZEYXw0:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=o8UQcCB_TsQ:2QENDZEYXw0:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=o8UQcCB_TsQ:2QENDZEYXw0:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Wed, 10 Jun 2009 11:58:40 GMT</pubDate></item><item><title>See you at DevDays NL</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/05/27/see-you-at-devdays-nl.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/05/27/see-you-at-devdays-nl.aspx</guid><description>&lt;div class="ExternalClass424D1DD4D3B847758D7031B88E2C3C23"&gt;&lt;p&gt;I’m lucky enough to be presenting at &lt;a href="http://devdays.nl/"&gt;DevDays&lt;/a&gt; on Friday, my topic is:&lt;/p&gt; &lt;h3&gt;&lt;strong&gt;Building a Social Computing platform with SharePoint&lt;/strong&gt;&lt;/h3&gt; &lt;p&gt;&lt;br&gt;&lt;em&gt;An in-depth, technical look, at using SharePoint to build highly scalable “Social Applications” for the Enterprise. Need a blogging solution? Want to build YouTube for your organisation? Flickr? Delicious? Like to create your own Facebook style Newsfeed? This session will case study how one organisation has done just that and the lesson they learned. &lt;/em&gt;&lt;/p&gt; &lt;p&gt;Please do drop by and say hello if you are attending as well. See you Friday.&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=rMhh7Br5hxs:flBWBnv2dL8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=rMhh7Br5hxs:flBWBnv2dL8:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=rMhh7Br5hxs:flBWBnv2dL8:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=rMhh7Br5hxs:flBWBnv2dL8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=rMhh7Br5hxs:flBWBnv2dL8:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=rMhh7Br5hxs:flBWBnv2dL8:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Wed, 27 May 2009 13:16:14 GMT</pubDate></item><item><title>New version of our “Assembly free” Timesheet Application</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/05/18/new-version-of-our-“assembly-free”-timesheet-application.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/05/18/new-version-of-our-“assembly-free”-timesheet-application.aspx</guid><description>&lt;div class="ExternalClass2FCC580B1D2F4FDF8D8767F9519E92C7"&gt;&lt;p&gt;I just a little more work into our &lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/ViewPost.aspx?ID=85"&gt;original “Assembly Free” SharePoint solution&lt;/a&gt; designed to make it easy to complete Time Sheets in SharePoint. &lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/99/image_2_1CCC028F.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/99/image_thumb_1CCC028F.png" width="501" height="174"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Here are the additional features we have added:&lt;br&gt;1) Improved the overall look and feel&lt;br&gt;2) Selecting a client automatically pre-fills the client for the remaining days&lt;br&gt;3) Empty days are no longer posted to the Calendar&lt;br&gt;4) A check is now made to ensure you select a starting Monday in the Calendar&lt;br&gt;5) Basic validation is made before you can submit time&lt;/p&gt; &lt;p&gt;Install it now (remember, its only a Site Template):&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;a href="http://www.zevenseas.com/go.aspx?Timesheet=Download"&gt;Download&lt;/a&gt; the Site Template.  &lt;li&gt;Open a site collection where you would like to create the Timesheet subsite.  &lt;li&gt;Click on “Site Settings”  &lt;li&gt;Click on “Site Templates” under the “Galleries” heading.  &lt;li&gt;Click on the “Upload” button, and then select the previously downloaded “Timesheet.stp” file.  &lt;li&gt;When you have done that, click on “Site Actions” –&amp;gt; “Create”  &lt;li&gt;Click on “Sites and Workspaces”  &lt;li&gt;Give the new site a “Title” and a “Description”, then from the “Select a Template” section click on the “Custom” Tab.  &lt;li&gt;There you should find the new “Timesheet” site template, click on it an click on the “Create” button&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;Or we have also made an online version available for you to play with:&lt;/p&gt; &lt;p&gt;Demo Site: &lt;a href="http://demo.zevenseas.com/sites/AssemblyFreeDemos/TimeSheet/default.aspx"&gt;http://demo.zevenseas.com/sites/AssemblyFreeDemos/TimeSheet/default.aspx&lt;/a&gt;&lt;br&gt;Usernames: ZSHOSTED\teamstatus&lt;br&gt;Passwords: teamstatus &lt;p&gt;  &lt;p&gt;Feel free to enter in a timesheet yourself, add customers, go crazy, and don’t forget to let us know what you think!&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=NF_X3mmrTgA:AzBspMG8Qo0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=NF_X3mmrTgA:AzBspMG8Qo0:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=NF_X3mmrTgA:AzBspMG8Qo0:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=NF_X3mmrTgA:AzBspMG8Qo0:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=NF_X3mmrTgA:AzBspMG8Qo0:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=NF_X3mmrTgA:AzBspMG8Qo0:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Mon, 18 May 2009 11:40:37 GMT</pubDate></item><item><title>Release version of our “Assembly free” Team status Template</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/05/09/release-version-of-our-“assembly-free”-team-status-template.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/05/09/release-version-of-our-“assembly-free”-team-status-template.aspx</guid><description>&lt;div class="ExternalClass8AF14FB10E15455FB3E4BE0885B06B4E"&gt;&lt;p&gt;Finished adding a few more tweaks and bug fixes to our “Assembly Free” Team Status application. I think its solid enough to call it a V1.0, and the good news is that it now works on BPOS (Microsoft Online Services).&lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/98/image_2_07CA5E47.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/98/image_thumb_07CA5E47.png" width="569" height="249"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Remember, this is just a SharePoint Template, so anyone can install it on SharePoint anywhere! You DONT have to have access to the server.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Fixes and Enhancements:&lt;br&gt;&lt;/strong&gt;1) Added the name of the person who made the update, and a link to reply.&lt;br&gt;2) Prevent empty status message by disabling the “Update” button if the message box is empty.&lt;br&gt;3) Supports installation on BPOS (Microsoft Online Services)&lt;br&gt;4) Added the current user to the top of the page&lt;br&gt;5) Now supports account names with a ‘.’ in them (Thanks Oskar!). &lt;/p&gt; &lt;p&gt;As always, you can try it out for yourself by following these instructions:&lt;/p&gt; &lt;p&gt;Demo Site: &lt;a href="http://demo.zevenseas.com/sites/AssemblyFreeDemos/TeamStatus/default.aspx"&gt;http://demo.zevenseas.com/sites/AssemblyFreeDemos/TeamStatus/default.aspx&lt;/a&gt;&lt;br&gt;Usernames: ZSHOSTED\teamstatus, ZSHOSTED\teamstatus2, ZSHOSTED\teamstatus3&lt;br&gt;Passwords: (passwords are the same as username, eg. teamstatus, teamstatus2, teamstatus3 &lt;p&gt;  &lt;p&gt;&lt;a href="http://www.zevenseas.com/go.aspx?TeamStatus=Download"&gt;Download&lt;/a&gt; the new version now. If you are interested in integrating our Team Status application with Twitter, &lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/ViewPost.aspx?ID=97"&gt;take a look at my tutorial&lt;/a&gt; using &lt;a href="http://tunnelpoint.com/"&gt;TunnelPoint&lt;/a&gt; here. &lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=zsBi3qKlLiM:MgYosH1GoZM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=zsBi3qKlLiM:MgYosH1GoZM:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=zsBi3qKlLiM:MgYosH1GoZM:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=zsBi3qKlLiM:MgYosH1GoZM:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=zsBi3qKlLiM:MgYosH1GoZM:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=zsBi3qKlLiM:MgYosH1GoZM:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Sat, 09 May 2009 04:22:21 GMT</pubDate></item><item><title>Bringing TunnelPoint to the “Assembly Free” solution party</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/05/08/bringing-tunnelpoint-to-the-“assembly-free”-solution-party.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/05/08/bringing-tunnelpoint-to-the-“assembly-free”-solution-party.aspx</guid><description>&lt;div class="ExternalClass3BBCCE2B45744F378E848430FD8ACC13"&gt;&lt;p&gt;As you may have noticed, &lt;a href="http://www.zevenseas.com"&gt;zevenseas&lt;/a&gt; has been putting a lot of thought into building solutions that can be installed quickly and easily, &lt;strong&gt;by anyone&lt;/strong&gt;, on SharePoint, &lt;strong&gt;anywhere&lt;/strong&gt;! &lt;/p&gt; &lt;p&gt;Last week we released our &lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/ViewPost.aspx?ID=94"&gt;“Assembly Free” Team Status&lt;/a&gt; application, thanks everyone for the feedback, there is a new version coming in the next few days with some minor tweaks. The most important of those is support for BPOS (Microsoft Online Services). &lt;/p&gt; &lt;p&gt;After releasing this solution I got thinking about how we could make it even better by integrating it with Twitter. I didn’t have to think for long, because this is where &lt;a href="http://tunnelpoint.com/"&gt;TunnelPoint&lt;/a&gt;, our “&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/ViewPost.aspx?ID=90"&gt;BDC for SharePoint in the Cloud&lt;/a&gt;”, comes in.&lt;/p&gt; &lt;p&gt;With TunnelPoint added to the solution I was able to publish any messages added to an &lt;a href="http://demo.zevenseas.com/sites/AssemblyFreeDemos/TPConnected/default.aspx"&gt;instance of the Team Status&lt;/a&gt; application to a &lt;a href="https://twitter.com/assemblyfree"&gt;Twitter account&lt;/a&gt;, take a look at the result below:&lt;/p&gt; &lt;p align="center"&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_18_78574AC9.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_thumb_8_78574AC9.png" width="244" height="130"&gt;&lt;/a&gt;  &lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_20_78574AC9.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_thumb_9_78574AC9.png" width="244" height="144"&gt;&lt;/a&gt; &lt;br&gt;&lt;em&gt;On the left is Team Status in SharePoint, on the right is Twitter&lt;/em&gt;&lt;/p&gt; &lt;p&gt;How might this be useful? Well, imagine a team like zevenseas who wants to publish a stream of messages under a single unified Twitter account. You can use SharePoint to create your messages, and then TunnelPoint to send them over to Twitter. Nice.&lt;/p&gt; &lt;p&gt;The best bit of course is that the entire setup took me less than 5 minutes AND I didn’t have to go anywhere near my SharePoint server or ask anyone from the IT Department to help me! &amp;lt;grin&amp;gt;&lt;/p&gt; &lt;p&gt;Here is how I did it:&lt;br&gt;1) You must have an &lt;strong&gt;Internet Facing&lt;/strong&gt; SharePoint site, and an account with Administrator privileges.&lt;br&gt;2) &lt;a href="http://www.zevenseas.com/go.aspx?TeamStatus=Download"&gt;Download&lt;/a&gt; and Setup our “Assembly Free” twitter application, and start adding some messages.&lt;br&gt;3) Sign up for TunnelPoint here: &lt;a href="http://account.tunnelpoint.com/Registration.aspx"&gt;http://account.tunnelpoint.com/Registration.aspx&lt;/a&gt; then activate your account.&lt;br&gt;4) Sign up for a new Twitter account, or have an existing one ready.&lt;/p&gt; &lt;p&gt;This is where the fun starts, you will now have a Team Status site that looks something like this:&lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_2_78574AC9.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_thumb_78574AC9.png" width="469" height="206"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;After activating your account, Logging on to TunnelPoint and clicking on “My SharePoint” a screen that looks like this:&lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_4_78574AC9.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_thumb_1_78574AC9.png" width="464" height="169"&gt;&lt;/a&gt; &lt;br&gt;&lt;/p&gt; &lt;p&gt; &lt;p&gt;The next steps are (a) Telling TunnelPoint about our new Team Status site and then (b) Assigning the Twitter service to that site. Click on the “New” button to display the following screen:&lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_6_78574AC9.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_thumb_2_78574AC9.png" width="244" height="149"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;After entering all the information and clicking “Save”, you will have your site registered with TunnelPoint and ready to have services assigned to it:&lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_10_78574AC9.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_thumb_4_78574AC9.png" width="488" height="151"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt; &lt;p&gt;Click on the “MyServices” link at the top of the screen, this is where you specify the services you would like to assign:&lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_12_78574AC9.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_thumb_5_78574AC9.png" width="488" height="198"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;As you can see, one of the services listed is “Sent Twitter Update from SP List”, select this service and then click on the “New” button. &lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_14_78574AC9.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_thumb_6_78574AC9.png" width="490" height="263"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt; &lt;p&gt;Now, the standard “Team Status” list does not include all the columns you need to successfully run this service. Rather than making you do this manually, TunnelPoint can take care of it for you, click on the “Create additional fields in list for this service”. This will add two fields to the existing list “What are you doing?” and “Message Status”.&lt;/p&gt; &lt;p&gt;After entering in the Twitter account you want to publish to, select “Message” as the field that contains the message and “Message Status” as the field where you would like to store the Message Status. &lt;/p&gt; &lt;p&gt;When you are happy, click “Save”, and you are done. Head over to your Twitter account and refresh your timeline. It should look something like this:&lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_16_78574AC9.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/97/image_thumb_7_26449D82.png" width="244" height="243"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Before you go, &lt;strong&gt;try it out yourself&lt;/strong&gt;:&lt;/p&gt; &lt;p&gt;Demo Site: &lt;a title="http://demo.zevenseas.com/sites/AssemblyFreeDemos/TPConnected/default.aspx" href="http://demo.zevenseas.com/sites/AssemblyFreeDemos/TPConnected/default.aspx"&gt;http://demo.zevenseas.com/sites/AssemblyFreeDemos/TPConnected/default.aspx&lt;/a&gt;&lt;br&gt;Usernames: ZSHOSTED\teamstatus, ZSHOSTED\teamstatus2, ZSHOSTED\teamstatus3&lt;br&gt;Passwords: (passwords are the same as username, eg. teamstatus, teamstatus2, teamstatus3)&lt;br&gt;Twitter Account: &lt;a href="https://twitter.com/assemblyfree"&gt;https://twitter.com/assemblyfree&lt;/a&gt; (Note: it can take up to 15 mins to publish to Twitter)&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Or check out some of the other services&lt;/strong&gt;. It would be just as simple to set it up so that you received a text message with every new message added. Have Fun! &lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=vLWGpE7wgdE:-62pSU6Y920:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=vLWGpE7wgdE:-62pSU6Y920:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=vLWGpE7wgdE:-62pSU6Y920:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=vLWGpE7wgdE:-62pSU6Y920:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=vLWGpE7wgdE:-62pSU6Y920:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=vLWGpE7wgdE:-62pSU6Y920:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Fri, 08 May 2009 06:15:41 GMT</pubDate></item><item><title>zevenseas Tools Recap</title><link>http://community.zevenseas.com/Blogs/Daniel/archive/2009/05/04/zevenseas-tools-recap.aspx</link><guid isPermaLink="False">/Blogs/Daniel/archive/2009/05/04/zevenseas-tools-recap.aspx</guid><description>&lt;div class="ExternalClassEBE6B33F610F453A93F4DCAA1FF4EFD8"&gt;&lt;p&gt;Thought it might be a good time to put a short reminder post about some of the free tools we have released over the last 12 months or so, as it has been a while since we have written about some of them. Hopefully there is something in there for you!&lt;/p&gt; &lt;h1&gt;CodePlex Projects&lt;/h1&gt; &lt;p&gt;First up, there are our CodePlex projects, that come complete with source code.&lt;/p&gt; &lt;h2&gt;Web Parts&lt;/h2&gt; &lt;p&gt;&lt;a title="http://www.codeplex.com/zevenseas/Release/ProjectReleases.aspx?ReleaseId=15157" href="http://www.codeplex.com/zevenseas/Release/ProjectReleases.aspx?ReleaseId=15157"&gt;http://www.codeplex.com/zevenseas/Release/ProjectReleases.aspx?ReleaseId=15157&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;b&gt;Filter Web Parts&lt;/b&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Choice Filter Web Part - The zevenseas Choice Column Filter web part does three simple things: 1) It pulls the choices from a choice column, 2) Displays them in either a list of option buttons or a drop down, 3) Passes the value you select to other web parts via a connection - &lt;a href="http://community.zevenseas.com/Blogs/Daniel/archive/2008/07/09/announcing-the-zevenseas-choice-column-filter-web-part.aspx"&gt;More Information&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;b&gt;Web Parts&lt;/b&gt; &lt;ul&gt; &lt;li&gt;Quick Alert Web Part - The zevenseas Quick Alert web part allows a user to create an alert, on a specific list with just a single click. - &lt;a href="http://community.zevenseas.com/Blogs/Daniel/archive/2008/08/03/introducing-the-quick-alert-web-part.aspx"&gt;More Information&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;ul&gt; &lt;li&gt;AD ChangePassword Web Part - The zevenseas AD ChangePassword webparts allows users to change their Active Directory passwords. This is comes in handy when using an extranet scenario where users cannot change their password the regular way.. . - &lt;a href="http://community.zevenseas.com/Blogs/Robin/archive/2008/08/04/zevenseas-ad-changepassword-webpart-released.aspx"&gt;More Information&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;ul&gt; &lt;li&gt;QuickTask Web Part - The zevenseas Quick Task web part allows you to complete multiple tasks from a tasklist at once. Plus you can very quickly assign a task to someone by using the context menu. - &lt;a href="http://community.zevenseas.com/Blogs/Robin/archive/2008/11/09/quicktask-webpart.aspx"&gt;More Information&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;ul&gt; &lt;li&gt;CodePlex Statistics Web Part - Allows you to quickly display the download statistics for one or more CodePlex Releases - &lt;a href="http://www.zevenseas.com/go.aspx?CodeplexStatisticsWebPart=Information"&gt;More Information&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h2&gt;&lt;/h2&gt; &lt;h2&gt;SearchCoder&lt;/h2&gt; &lt;p&gt;&lt;a title="http://www.codeplex.com/MOSSSearchCoder" href="http://www.codeplex.com/MOSSSearchCoder"&gt;http://www.codeplex.com/MOSSSearchCoder&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Tools that helps you build, test and code solutions based around the SharePoint Search API. It includes a graphical tool, and an OM which abstracts SharePoint Search SQL.&lt;/p&gt; &lt;p&gt;&lt;img alt="MainPage.png" src="http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=MOSSSearchCoder&amp;amp;DownloadId=42069" width="349" height="307"&gt;&lt;/p&gt; &lt;h2&gt;Site Lifecycle Management&lt;/h2&gt; &lt;p&gt;&lt;a title="http://www.codeplex.com/zsLCM" href="http://www.codeplex.com/zsLCM"&gt;http://www.codeplex.com/zsLCM&lt;/a&gt;&lt;/p&gt; &lt;p&gt;The Lifecycle Management application is based on the original LCM tool of MS-IT but then slightly modified to be more '2007'ish ;) &lt;br&gt;So what does it do?  &lt;ul&gt; &lt;li&gt;Captures sitedeletions and makes a backup first before deleting the site or web.  &lt;li&gt;Gathers sites that are unused (using the Usage info, Last Content Modified Date and Last Security Modified Date)  &lt;li&gt;Actions can be taken on this &amp;quot;unused&amp;quot; sites, such actions are  &lt;ul&gt; &lt;li&gt;Mail the siteowner and informing them that their site is being unused  &lt;li&gt;Lock the site after a given period of time  &lt;li&gt;Delete the site after a given period time &lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/li&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;img alt="overunusedsites.png" src="http://community.zevenseas.com/Blogs/Robin/Lists/Photos/overunusedsites.png" width="491" height="190"&gt;&lt;/p&gt; &lt;h2&gt;Feature Blocker&lt;/h2&gt; &lt;p&gt;&lt;a title="http://www.codeplex.com/zsfeatureblocker" href="http://www.codeplex.com/zsfeatureblocker"&gt;http://www.codeplex.com/zsfeatureblocker&lt;/a&gt;&lt;/p&gt; &lt;p&gt;This is a solution that SharePoint administrators can use to block certain features (site/web/webapplication/farm) from being activated or deactivated by the user that accesses the Managefeatures.aspx page.&lt;br&gt;It adds a bit of javascript runtime on the managefeature.aspx page and disables the buttons of selected features.  &lt;p&gt;  &lt;p&gt;&lt;img alt="disabledPublishing.png" src="http://community.zevenseas.com/Blogs/Robin/Lists/Photos/disabledPublishing.png" width="486" height="104"&gt;&lt;/p&gt; &lt;h1&gt;Free Solutions&lt;/h1&gt; &lt;p&gt;Free and installable solutions.&lt;/p&gt; &lt;h2&gt;Tagged Links&lt;/h2&gt; &lt;p&gt;&lt;a title="http://community.zevenseas.com/Blogs/Daniel/archive/2008/04/13/tagged-links-walkthrough.aspx" href="http://community.zevenseas.com/Blogs/Daniel/archive/2008/04/13/tagged-links-walkthrough.aspx"&gt;http://community.zevenseas.com/Blogs/Daniel/archive/2008/04/13/tagged-links-walkthrough.aspx&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Social Bookmarking for SharePoint. It takes the standard “Links List” to a new level via browser integration, one-click tagging, advanced graphical views and global tags that allow you to define tags across an entire site collection. Take a look at the new “Walkthrough”.&lt;/p&gt; &lt;p&gt;&lt;img style="display:inline;margin-left:0px;margin-right:0px" title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/38/image_thumb_uUwdeA.png" width="401" height="121"&gt;&lt;/p&gt; &lt;h2&gt;The Link Conductor&lt;/h2&gt; &lt;p&gt;&lt;a title="http://community.zevenseas.com/Blogs/Daniel/archive/2008/12/02/free-solution-link-conductor-url-management-tool.aspx" href="http://community.zevenseas.com/Blogs/Daniel/archive/2008/12/02/free-solution-link-conductor-url-management-tool.aspx"&gt;http://community.zevenseas.com/Blogs/Daniel/archive/2008/12/02/free-solution-link-conductor-url-management-tool.aspx&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Provides a centralised link redirection service with statistics. This way you can put links like: &lt;strong&gt;http://&amp;lt;Your Site URL&amp;gt;/go.aspx?&amp;lt;Category&amp;gt;=&amp;lt;Action&amp;gt; &lt;/strong&gt;and ensure that they always go to the right place. &lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/62/image_16_23547F28.png"&gt;&lt;img title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/62/image_thumb_7_23547F28.png" width="451" height="110"&gt;&lt;/a&gt; &lt;/p&gt; &lt;h2&gt;Tags Web Part&lt;/h2&gt; &lt;p&gt;&lt;a title="http://community.zevenseas.com/Blogs/Daniel/archive/2008/12/24/free-solution-the-zevenseas-tags-web-parts.aspx" href="http://community.zevenseas.com/Blogs/Daniel/archive/2008/12/24/free-solution-the-zevenseas-tags-web-parts.aspx"&gt;http://community.zevenseas.com/Blogs/Daniel/archive/2008/12/24/free-solution-the-zevenseas-tags-web-parts.aspx&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Does what it says, but a picture says it better:&lt;/p&gt; &lt;p&gt;&lt;a href="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/69/image_2_3A205B2F.png"&gt;&lt;img title="image" border="0" alt="image" src="http://community.zevenseas.com/blogs/daniel/Lists/Posts/Attachments/69/image_thumb_680DADE7.png" width="244" height="113"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=Mpa7nyV0mz8:5cjhOxlpOS8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=Mpa7nyV0mz8:5cjhOxlpOS8:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=Mpa7nyV0mz8:5cjhOxlpOS8:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=Mpa7nyV0mz8:5cjhOxlpOS8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.zevenseas.com/~ff/blogs_daniel?a=Mpa7nyV0mz8:5cjhOxlpOS8:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogs_daniel?i=Mpa7nyV0mz8:5cjhOxlpOS8:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel McPherson</dc:creator><pubDate>Mon, 04 May 2009 12:39:57 GMT</pubDate></item></channel></rss>
