So Saturday saw the first of what I hope will be many SPRetreats. Andrew Woodward and Ben Robb organised a gathering of SharePoint peeps down at cScape’s London office. It’s been quite a while since I spent a day writing SharePoint code so was looking forward to getting back into the swing.
After a quick cuppa and helping to route Martin around the closed tube lines all ten of us sat in anticipation of SharePoint awesomeness.
The days challenge
The day was laid out into hour slots each focusing on repeating the same tasks but with better efficiency (muscle reflex memory style). Split into pairs and rotated every hour I was looking forward to working with some new acquaintances. Andrew and Ben ran through the challenge which was to produce a ‘cross sell’ webpart which displayed related news to the current page.
Into the sessions
Session One:
So the day began. Looking at the requirement my head was already filled with tens of questions. What was a news article? how many were produced per day? Was it publishing? How was the site structured? etc etc The Architect part of me obviously getting the upper hand to the dev part. So our pair called over the Product Owner Ben and we began to ask away. 20 minutes of the 60 later and we were now armed with enough information to make recommendations about a technical solution.
As always we began with the OOB functions, Summary Links and Content Editor were ruled out on the grounds of authoring overhead. CQWP was the next candidate, this seemed promising but its limitation to a site collection felt like a concern so I discounted this here. Next up was search, now this already felt in the right area, leveraging the core results webpart with custom xsl. Combine this with some custom development and we felt we had our recommendation…. maybe 30seconds before time as well 🙂
Show and tell was next, each pair spending 3 minutes or so explaining the last hours input. I must admit i was quite surprised to see all the other pairs had begun to crank out code solutions. Once we’d been around the room all pairs benefited from the information that had been gathered.
Session Two:
This session I paired up with an old colleague and we knuckled down into a design. Based on session one’s info we began with discussing some high level design. So we’d be using search, through a custom webpart and to allow the entire platform (Andrew threw in a curve ball of cross site collection querying) to benefit we decided the managed metadata service should be used for the item categorisation.
Several scribbles on the laptop later (they were really scribbles, the HP touchscreen really impressed) and we had our design. Making use of the new SP2010 Fluent UI to improve the usability and editing experience for the authors.
Show and tell revealed that the information my pair had gathered in session one had been put to good use as most pairs had turned their attentions to search based solutions, one even having something to show.
Session Three:
New partner and implementation began. Rather than jump straight into using the core results webpart custom code solutions were explored. After adding our column to a list we crawled the site and began to look into the search API. I’ve never used the search API directly so this was definitely a moment of uncertainty. Trying to find information about how to query for a managed metadata column really felt futile. It goes to prove how many rehashed blogs there are about the new features of SP2010 (put ‘Search API to query Managed metadata SharePoint 2010’ into google).
We eventually found some information only to discover that API call is deprecated since the demise of the SSP.
Show and tell revealed one pair had used the core results webpart as a base and already delivered a sound concept. That was where I planned to head next following my initial hunch.
Lunch:
Wandering around the corner to the park we all enjoyed the bright London sun and the food kindly laid on by Ben and Andrew.
Session Four:
This session we focused on trying to use the core results webpart. Unfortunately our pair spent an entire hour trying to get search configured to return the page data. so not much to report during the show and tell.
Session Five:
My partner for this session cheated a little by not deleting his previous solution so we spent the entire session researching the client object model in order to fully utilise the Fluent UI design created during session two. With limited success we managed to make some headway but failed to complete in time.
Retrospective:
Going around the room and gathering the feedback from the group. Some interesting thoughts around making the requirement more defined technically. This would avoid the situation where the first hour was spent on analysis getting us closer to the code reflex training concept. All agreed that the Saturday slot was a winner! Splitting the SPRetreat into streams Architect and Dev seemed to be a common suggestion as it was felt that this day had been a little unclear as to the focus and those of us who perform non dev roles hadn’t gone the dev route immediately.
Final Thoughts:
I loved this event! It was fantastic to work with people in other organisations, discuss ideas, explore new avenues of thinking and generally spend 8 hours coding. I think the next one will be even better an look forward to attending. I was hoping to learn more about unit testing in SharePoint context and hope that the next Dev focused event gives me more opportunity.
Thanks again for Andrew and Ben for taking time to organise it and for the other nine SharePoint guys who attended making for a cracking time.