Archive for the ‘SharePoint’ Category
Tuesday, May 4th, 2010



mainlogo

We are proud to announce the world’s first SharePoint Retreat!

The first event is taking place in London on Saturday 10th July. Don’t delay places are filling up fast with a limit of 16 people.

Register for SharePoint Retreat London in London, United Kingdom  on Eventbrite 

The aim of SharePoint Retreat is to help developers practice the fundamentals of software development, but like all things in the SharePoint community we intend to keep this SharePoint focused, so developers practice the fundamentals of SharePoint development

What is SharePoint Retreat?

The idea is not our own, more information can be found about the original Code Retreat at http://www.coderetreat.com/ – we have just given it a SharePoint flavour. 

It has a simple objective:  provide a day-long event that is focused on practicing the fundamentals of SharePoint development.

Why SharePoint Retreat?

We want to bring SharePoint development to the fore, to make developers want to work with SharePoint and to show that doing SharePoint development does not mean you have forego any plans to become a software craftsman.

How does it work?

A group of SharePoint developers – That means you! - gather at the Retreat with laptop in hand ready to code.

  • Problem:  TBC – the problem will be SharePoint related and can vary between Retreats
  • Retreat lasts from 9am until 5pm followed by SharePint
  • Each coding session will last 1 hour
  • Each session coders will pair program

Some rules!

  • code is deleted after each session,  its about learning the techniques and not getting code samples
  • Encourage techniques like TDD where appropriate
  • programming pairs are swapped at each session

on the day

  • 9:00 – 9:30 Intro to the day
  • 9:30 – 10:30 session 1
  • 10:30 – 10:45 retrospective
  • 10:45 – 11 :45 session 2
  • 11:45 – 12:00 retrospective
  • 12:00 – 1:00 Lunch – with brown bag presentations
  • 1:00 – 2:00 session 3
  • 2:00 – 2:15 retrospective
  • 2:15 – 3:15 session 4
  • 3:15 – 3: 30 retrospective
  • 3:30 – 4:30 session 5
  • 4:30 – 5:00 wrap up
  • 5:00 – late ShareFood and SharePint

in the sessions

session 1 and 2

The area of SharePoint may be unfamiliar to some people, others may have done something like it before.  The aim of the first two sessions are to allow people to understand how they are going to approach the problem and what the final solution could look like.  Some pairs may try and implement it, others will spike out ideas and try to solve specific challenges.

At the retrospectives each pair will have a few minutes to discuss what they did and any problems they could not solve.

Lunch

During lunch the coders get to sit back and relax whilst the facilitator demonstrate techniques or ideas in a couple of short brown bag sessions.

session 3, 4 and 5

continue with the problem and looking to refine some of the scenarios and techniques.  The aim is to learn and practice techniques that will improve the knowledge and experience of the coders.  If you don’t complete the problem it’s not an issue – if you complete the problem then look for new challenges or refine the techniques.

After the event

Any gathering of SharePoint people and you are likely to find a SharePint – the facilitator will find a suitable venue for people to unwind, drink beer and SharePint – hopefully more SharePoint people will be in the area so that they can brag about the new found talents.

What Next?

If you can be in London on Saturday 10th July 2010, you’re a SharePoint developer and you fancy spending a day with other like-minded people honing you development skills.   Sign up.

This first event is limited to 16 coders – so be quick.  

If you fail to make the first 16, put your name down on the waiting list.   We do ask that people who have signed up but for whatever reason can’t make it please make the space available to others.

How Much?  – Its Free :)

Best of all this is a community activity,  we are funding this event through sponsorship in order that we can provide the places to coders F.O.C

The sponsors for this inaugural event are

cScape Logo

providing the venue and internet access – and Ben Robb

21apps Inspire Community

providing the food – and Andrew Woodward

Wednesday, April 14th, 2010



Did you hate SSPs in SharePoint 2007?

Have you heard about the new Services Architecture in SharePoint 2010?

Did you attend Andrew Connells session at SPC09 and came away wondering why 1+1 was so complex?

Do you want to go to a dev session but by Wednesday lunchtime think a 400 deep dive is going to be too much?

Either way I have a great session lined up that will focus on the core parts of building a service application and discussion around when you should/shouldn’t approach it.  

DD114 – Building Service Application

Wednesday 21st April

11:45 am to 12:45 am

Developer Track

SharePoint 2010 has undergone a number of major improvements in the way the core services are architected. In this session we will explore some of these changes looking at the services provided with SharePoint, understand the reasons for the changes to the architecture and also the complexity that this can introduce. We will take a deep dive into the core framework and classes that enable developers to create custom service applications; Provide you with an understanding of how to create a new service application but most importantly when service applications are the right or wrong design choice. You should leave the session with an understanding of how the core service applications are designed, how to approach creating of your own services and also the knowledge to evaluate your own requirements and make informed decisions about when to and when not to create a service application

clip_image001

Wednesday, April 14th, 2010



If you have been following my blog, twitter feeds and perhaps visited previous sessions I’ve done, then you will know that I am a very big advocate of Unit Testing – and have made it a personal goal to raise awareness and break down the challenges faced in doing this for SharePoint.

This time I am joining forces with the SharePoint Cowboy, Eric Shupps, to show you some of what you should know,  but also we have some exciting demo’s that you won’t want to miss.

If you understand Unit Testing,  want to learn more or just interested to see us battle it out on stage you have to attend:

DD107 – Unit Testing SharePoint

Tuesday 20th April

10:00 am to 11:00 am

Deep Dive 400 Track

Defining a successful unit testing strategy is a key component in the SharePoint software development lifecycle. In this session we will explore the various options for insuring adequate code coverage for custom SharePoint solutions, examine several different methods and tools for creating and executing unit tests, and discover tips and tricks for working with various test frameworks. There will also be a lively discussion regarding the value of implementing methodologies such as Test Driven Development and numerous real-world examples of the benefits unit testing can provide within custom SharePoint solutions

 

clip_image001

Monday, March 15th, 2010



One of the challenges with unit testing SharePoint projects is the need to fake the calls into SharePoint.  If you are a regular reader of my blog you will have seen examples of how I have been doing this using Typemock Isolator. 

Microsoft have their own isolation framework called moles.  A more accurate descripition would be isolation through detours and stubs.  Moles was developed to support Pex white box testing and one interesting development from within the team has been Behaviours.  Behaviours are really a way to model the thing you want to isolate for the test without needing to define every isolation point. 

Isolatation frameworks (regardless of technology) can result in brittle code, test code that is very tightly linked to the production code.   A simple change from List.GetItems() to List.Items[""] will cause the test to fail.

One of the samples provided with Pex is the modelling of SharePoint Behaviour that will make it much easier for people to be able to create robust tests with minimal or no additional isolation code needed.   Part of the work we are doing is to drive out the things that need to be modelled and reporting these to the Pex team.  It is not going to be easy to model the whole of SharePoint from day one,  however it should be possible to cover the areas most used.

This is where I would like some help.     Do you have any code that you use often,  code that you would like to unit test that takes a long time to isolate and that end up being brittle?

Please post examples here in the comments and we will try to get as much covered as possible.

Monday, February 8th, 2010



Normally I refrain for doing simple reposts of other people blogs,  however having read the post SharePoint’s Sasquatch Memory Leak by Todd Carter I just had to help get the information out to as many people as possible.

We are all being good developers and running SPDisposeCheck regularly on our code to make sure we don’t leak memory,  however for some we still experience spiralling memory leaks that seem untraceable.  until Todd’s post that is.

Rather than hang around here you MUST read it now,  and if your experiencing issues and have SPDisposeCheck’d your application to within an inch of it’s life with no success on controlling memory you will want to implement the workaround as soon as possible.

Big Thanks to Todd find Big Foot :)

Monday, December 7th, 2009



Disclaimer:  I don’t work for Mindsharp or Combined Knowledge, but I do guest teach the developer course.

Had a great week attending Combined Knowledge’s first public beta of the SharePoint 2010 developer course,  in fact it was the first running of this course anywhere in the world!

The course was held in what I think is a great venue,  the board room in Ullesthorpe – I really like teaching here as this is a permanent setup so you know you have everything you need including lots of white boards << these are essential.  This week was slightly different on the food front as they were into the December Xmas menu,  no longer did we get the famous ‘Rice and Chips’ that Todd Bleeker is so keen on – instead we got a full choice from the bar menu,  I recommend the chicken and warm bacon salad starter.

Back to the course; you might be asking  ‘Why this course and not the Ignite Training?’ 

I have to say I am very impressed with Microsoft in the amount of information and training being provided this early in the delivery cycle,  if you compare this to what we had for 2007 and even worse what we didn’t have in 2003 you will know that they have really put the effort in.

So why did I not do the Ignite Training?  – Simple answer could be I missed the boat; and this is not untrue (double negative to make it sound better :S), but the real answer is that I am planning to guest teach this course for Combined Knowledge and it is a great way for me to feedback on what does/doesn’t work from an attendee’s perspective and help shape the course that people will get over the coming years  (the 2003 course is still being taught, so anything fixed now has a long time to live).

The course was being taught by Gary Yeoman,  long time trainer with Combined Knowledge and real world consultant when not training.  Attending the course were myself,  James Fisk, Adrian, David, Ian, Stephan (from Switzerland), Rehan and Ruth – plus we had the honour of having Todd Bleeker (the course author) taking a very active role throughout the week.

Big Topic or Lots of Topics

SharePoint in 2007 was a big product,  sure Windows SharePoint Services (WSS V3) wasn’t quite as big as MOSS but from a developers perspective there was a lot to cover.  Things in 2010 just get bigger.   To quote Todd  (and it may not have been word for word)

Custom Field types were probably the hardest thing you had to do in SharePoint 2007.  In 2010 there are lots of things that are more complicated.  however the great tools in Visual Studio 2010 help here a lot!

What I’m trying to say is we had a lot to cover and Gary was adopting a JIT based approach to some of the slides :)

If you skip the sleeping!

There are 24hours in a day (8 for work, 8 for sleep and 8 for yourself).  Based on this schedule there really is no way that there would be a beta SharePoint 2010 developer course with the depth of information and labs that people expect of a Combined Knowledge course for people to attend.   So how was this solved?

Well if your Todd Bleeker you make the call that you can adopt the following pattern 6 x 1/2 hour sleep and 21 hours work (per day, everyday)!   Yes Todd has been doing the Uberman sleep pattern (a form of polyphasic sleep) for the past 17 weeks – and he is amazingly still sane and took a very active role during the week.  Although on one occasion we returned after a break to see a pair of feet sticking out from under a desk which were attached to Todd fitting in one of his 1/2 hour sleeps! 

It was suggested at the start of the course that every student should also adopt this if they were to be able to get through the content we wanted to cover,  thankfully other attendees like to have some ‘down’ time to recuperate. 

‘Down’ time == ‘SharePint’  :)

The Course

Being a beta course, and the first real proper teach ever, and based on the Beta 2 release that only dropped a few weeks ago it was expected that the labs would be a little rough and ready.   This couldn’t have been more wrong! The new format adopted with microlabs,improved consistency and the result of many hour of hard work has paid off in droves.  

We were all experienced SharePoint 2007 developers so we could skip any of the usual ‘What’s an SPWeb’ type discussion and head straight into some deep dives.

The course covered a lot of detail including

  • - Powershell and how to extend it
  • - A tour of VS2010 and the new SharePoint tools
  • - Extending VS2010
  • - Event Models – with focus on what’s new and improved
  • - Deployment scenarios
  • - Sandboxed and Farm Solutions
  • - Workflow
  • - SharePoint Designer <<   YES SharePoint Designer is really a useful dev tool in 2010
  • - Developer Dashboard
  • - and many many more

What stood out?

In truth SharePoint 2010 was the real star, including the great new tools in VS2010 (although the very poor story around Unit Testing is tainting my views here).

What I did get at the end of the course was a feeling that I just want to get out and start teaching it,  to start sharing the great new things that caused me so many long days in the past.  

I am looking forward to when I can run my first class and spend time working through your ideas, problems and solutions.

I’m excited about developing for SharePoint 2010. 

If I can offer one tip for now,   ‘always start with a Sandboxed solution first’

Sunday, November 15th, 2009



At the recent SharePoint Conference in Vegas I took a few minutes out to talk to Gil Zilberfeld of Typemock about what 21apps is doing with SharePoint and what I see as the next steps in the community regarding SharePoint development.

Looking at what areas I see as being a focus in the SharePoint development space,  how I will continue to push TDD but will also, now that people are starting to talk about good SharePoint development practices, start to look at the wide picture – looking at how we complement the Unit Tests with integration tests,  looking at ways to automate use acceptance tests and generally looking at ways to make the code better so that testers can focus on the scenarios and complex tests rather than dealing with the ’stupid bugs’.

Original post on Typemock Blog

Sunday, November 8th, 2009



The past month seems to have been a complete blur,  so much new information to take in so many great people to meet and yet so many more that I wanted to spend more time with.

Listening

The SharePoint Conference 2009 (SPC09) in Vegas was, to put it simply,  AWESOME!  Seven thousand people in one place all buzzing with excitement about the new features in SharePoint 2010.   Although I had the privilege of playing with some of the bits before the event,  it really was at the event that you’re understanding as to the size of the investment,  the amount of improvements and the amount of information and knowledge that we are going to have to take in over the coming months and years became clear.  If you thought SharePoint 2007 was a big product – ‘you ain’t seen nothing yet!’  It was also great to be part of the Worlds Biggest SharePint at the Eye Candy Bar – Kudos to Andrew Connell for putting this on.

Speaking

One of the things that I find the most enjoyable about being part of the SharePoint community is the opportunity to share my passion and knowledge.   I do like to speak (not for some personal gratification) but to be able to share all of the cool things that I have discovered.  Having such a great platform to talk about just makes it so much easier. 

MVP Open Day

The week after SPC09 I attended the UK and Ireland MVP Open Day in Reading.   This is a great opportunity put on my Akim and Vicki (MVP Leads) to say thanks for the work we do,  but more importantly a way for people of different disciplines and social networks to get together and socialise.   Timing for this event was great,  I was able to demonstrate SharePoint 2010 to a fairly big audience and from the feedback I got I think people were impressed.

SUGUK Manchester

On Tuesday 10th November Mark Stokes has arranged the first official North West SUGUK event where we will be talking about all things SharePoint 2010 and also getting feedback on what the community wants from the user group – it’s your opportunity to really have a say on how the community works in your area.    Currently the event is full,  if you still want to attend please respond to the post on SUGUK but we may have to have bouncers on the door :)     – needless to say we will be continuing the conversation over a SharePint after the event.

SharePoint Conference Slovenia

The 27th November sees the second Slovenia SharePoint Conference, having never travelled to this part of the world I thought it would be a great way to visit, enjoy some local beers over the obligatory SharePint.   The timing of the event is great as it allows people to get hands on with the SharePoint 2010 bits (hopefully they will be out by then).

Training

Having guest taught a number of SharePoint training courses for Combined Knowledge over the past few years,  and having spent time helping review the 2010 courses I am going to be in Ullesthorpe for the week of the 30th of November for the first SharePoint 2010 Beta Developer Track.  If you are looking for an early insight and training in the latest platform get in touch with Zoe and see if she can fit you in. 

SharePint

Do I really need to say anymore?   At any event or during ant trip I will be looking to take part or organise a SharePint where we can talk about SharePoint over a Pint.   I’m preferring good local brewed ales lately so recommendations always welcome :)

Having authored this post I think I really need to offer an apology as it does seem like a little bit of self promotion,  it is not meant to be – more like I’m going to be here, would love to meet up.

The End of 2009 is going to be the start of things to come in 21apps,  I am really excited about the changes taking place and look forward telling you more.   Rest assured that I will be blogging more technical stuff and providing more information on how to improve the way you develop your SharePoint projects.  

2009 has been good 2010 is going to be awesome :)

Monday, October 19th, 2009



The build up to this event has been growing,  it sold out with over 7400 people attending,  making this probably the biggest Microsoft Conference ever! 

2009-10-19 09-04-14.980 

This is probably the best social networking conference,  with the biggest beach party in Mandalay Bay hotel on Tuesday night..  with room for dancing (or to quote Tom Rizzo) to sway!

2009-10-19 09-08-31.954 

7.5 miles of network cabling to support the Wireless network :)

Steve Balmer takes to the stage in his usual enthusiastic style,  finally getting to take on the last thing from Bill Gates and present at a SharePoint conference.

Everything Microsoft are doing,  SharePoint is at the Center!

2009-10-19 10-07-16.395 

When can you get it?

Public beta will be shipped in November!  Releasing in the first half of next year.

SharePoint Evolution

Big talk on the successor to Groove with the use of SharePoint Workspace,   and looking forward at bringing SharePoint to the consumer market.

2009-10-19 09-24-38.140

A push for Rapidly Responding to Business needs,  with talk of end user ‘programming’ – the empowerment of the power users through tools like SharePoint Designer.

SharePoint Designer = ‘Learn It, Live It, Live It’

Using the new Business Connectivity Services and SharePoint designer you can now link backend systems to SharePoint an on into Office with no code.  Great example of using SharePoint external connector in Outlook so users see contacts as contacts and can edit in Outlook.

2009-10-19 09-27-45.159

Visual Studio tooling for SharePoint development has provided a ‘lot’ of feedback to Microsoft,  there is a ton of great enhancements to the tooling to make this much better with SharePoint tools in VS2010 out of the box.

SharePoint development supported on Windows 7 and Vista!

2009-10-19 09-37-11.839

Great out of the box integration with SharePoint explorer in Visual Studio. 

Now with VS2010 you can deploy directly with F5 debugging.  

Demo of the Developer Dashboard showing the code that is running, what SQL server queries have been run << this is sweet.

Sandboxed Solutions

The ability to do solution deployments through the UI,  with full control for usage on the database, processor and memory usage throttling. 

SharePoint Online

Moving the services into the cloud,  with the Sandbox solution support means it will have the capability to do most things. A real alternative to needing to do things on premise.

2009-10-19 09-47-05.556

SharePoint for Internet Sites

Options to do internet facing site either on premise, with partners or in the cloud.

2009-10-19 09-51-49.091

Product skus for internet facing

  • SharePoint for Internet Sites Standard and Enterprise Editions
  • FAST Search Server 2010 for Internet Business

2009-10-19 10-03-16.873

Some great additions to the WCM capabilities with 1-click page layouts changing on the fly, with the chrome shown in the editor.    Nice copy and paste office content from Office applications directly into the page. Spell checking in the box and in the editor.

Rich Search experience using Fast navigators,  I can see Fast search being a big thing in 2010.

SharePoint has Evolved

Sunday, October 11th, 2009



The numbers are in and I think this small sample really gives a good view as to the way people are approaching their SharePoint development projects.

Numbers taken from a one week poll asking people which build servers they used on their SharePoint projects.

CI Poll Results

It’s very clear from this that people are in one of 3 camps of almost identical size

  • Those using Team Foundation Server
  • Those that user another non Microsoft tool
  • Those that don’t do anything

Team Foundation Server

Installing and using, or developing against Microsoft SharePoint Server requires a fairly big commitment to the Microsoft technology stack, so the domination of Team Foundation Server is probably to be expected.

  • If your a big corporate user of SharePoint you most likely have a deal that includes TFS licenses
  • You have likely committed to Microsoft as the platform of choice across the board
  • If your a Microsoft Partner delivering products and solutions you will have a big investment in Microsoft licenses, and also a duty to adopt the MS recommended path
  • TFS is a good solution,  and it’s getting better in 2010

Non Microsoft Tools

I was surprised by the mix of Non Microsoft tools,  having looked at what you get for free and the costs for licensing beyond that I would have expected Team City to have a bigger following.  Perhaps the reason for not being higher is jetBrains being thought of a Java based?

I bundled CruiseControl and Cruise together,  in hindsight I should have split them as they are totally different products.   I will make the assumption that most are using CruiseControl as this was really one of the first decent automated build tools to target the .Net platform.  People have got to know it an have scripted automation for their non SharePoint projects already.

Final Builder I have always liked the look of;  I really do find the whole raw XML editing that we have to do in any build automation a bit like developing against SharePoint,  it’s ok but the tools really should be better than this.   Final Builder has a great product, but the cost per user is perhaps the barrier here.

Other

Some people had build servers but didn’t use it for SharePoint – would really count those as None.

Others listed the source repository (SVN) or scripting language (msbuild, nant) so I assume that the build is done manually using batch files rather than via a dedicated build server.

Also someone listed Hudson,  something I had personally never heard of, but will bundle with the Non Microsoft Tools.

None, we don’t have a build server

This was probably the biggest surprise to me,  and perhaps not the way you might think.  I was actually surprised that only 35% of people indicated that they did not have any form of build server for their SharePoint projects.  

Based on my years of doing consultancy gigs I found that the majority of companies that I went into to do work didn’t have anything even close to an automated build server.  Heck some don’t even have source control for the code!

So I can take a couple of things from this

  • People who don’t were too embarrassed to answer
  • SharePoint development has moved on significantly and most teams now have proper build servers
  • The readers of my blog are not representative of the wider SharePoint user base

 

Conclusion

CI Poll Results Numbers

There are still a lot of SharePoint teams out there that have yet to get the benefit from automating their builds,  who will undoubtedly be spending many hours manually putting things together the night before Go-Live.  

For these people, and those moving into SharePoint for the first time, there is a need to provide more information on why investing time in getting your automated build in from the start can make huge savings over the life of a project.  Providing walkthroughs on how to do this and some of the challenges you will encounter along the way.

Based on the feedback I could look at doing TFS first,  but I know that for teams with nothing setup yet this is going to be a big stumbling block.  Trying to convince you boss to roll out Team Foundation Server just so you can automate your SharePoint build is not an easy argument to have.   I will instead look at the options allowing you to get up and running quickly and more importantly without needing to get budget for licenses. 

I will start with Cruise,  and I will be dog fooding this for real on Project Aberdovey.  

Thanks to everyone who took the time to vote,  I would love to hear your own take on what the numbers mean to you and your experience with automating builds in SharePoint.