3rd Party apps and services that we used to build SP24 on SharePoint

This post is part of a series of posts about the SP24 Virtual SharePoint Conference:

SP24 was a free, virtual, SharePoint Conference that took place on April 14th and was then replayed on May 16th. It lasted for 24 hours and featured 98 SharePoint sessions from the world’s best and most famous speakers. We opened our virtual doors to nearly 8000 SharePoint professionals from a mind blowing 193 countries! (I am really proud we reached so many countries as this was one of our major goals when we set out).

Now that the conference is over, I am now trying to share as much information about it as time permits, partly to share this unique experience, but also so I don’t forget it! I had always fancied writing a book, but knew I wouldn’t have the patience to do it, so for me, SP24 was my book.

The SP24 Conference site was built on SharePoint Foundation 2013 hosted by Fpweb.net and required a lot of custom development to provide the features we needed to run a virtual conference. As we obviously wanted to minimise the amount of development we did, we looked to other products and services to fill in the functionality gaps we had identified. Here’s a list of what we ended up using.

 

Extradium – User Management in SharePoint based in SQL

To run a virtual conference you need a way for users to sign-up, log-in and manage their profiles etc. You also need a way to manage users, do password resets and update their details etc. There was absolutely no way we could build all this from scratch so we turned to Raphael Londner (CEO of Riolinx) who develops a very cool FBA Extranet product called Extradium for SharePoint. Extradium did everything we wanted and more!

I would also like to take this opportunity to say thanks to Raphael! He not only allowed us to use his product, but also helped out in many other ways as an active team member. In fact, his 2nd major focus was to integrate CometChat (a fully featured PHP chat app) into SharePoint so that logged in users could chat with each other and the speakers! 


DocRead – Gets users to read and confirm documents in SharePoint

docread-for-sharepoint1F928C07F54D

I was delighted to find a lot of uses for DocRead on SP24. DocRead allows you to assign key documents / list items to SharePoint groups, audiences, users and AD Groups. Using DocRead we were able configure documents such as the ‘Conference Guide’ to go out to ‘all attendees’ and the ‘Speakers Recording Tips’ to the ‘Speakers Group‘. The most beautiful part about the whole process (if I say so myself), is what we often refer to as ‘SmartMove’. Once you set a document to be assigned to a ‘Required Audience’, you can sit back, chill out and do something more interesting! As soon as new people get put into the group (which happened automatically with Extradium), DocRead will assign new Reading Tasks to those users. It will also give them a set number of days to complete the task before automatically sending a reminder! (To see this in action, sign up for a free account at SP24 and we will allocate you some reading to do without lifting a finger).


DocSurvey – Test understanding and get forms filled

docsurvey-for-sharepoint

DocSurvey is an enhanced SharePoint Survey that allows you to create quizzes and also add video / images to questions. The really powerful part occurs when DocSurvey is configured against the same document as DocRead. This turns into a very useful workflow! By simply doing this it means that when the user comes to confirm the document they can also be required to pass a test (or fill in a survey). If you have set a pass rate and they don’t achieve it they fail the test and they can’t confirm or complete the task! In fact, this is exactly what we used to get Speakers to not only agree to the Speaker terms of SP24 but also allowed us to gather all the information we needed from them. This was again a big time saver.

>> Watch our SP24 Video


SPCAF – Warns you about issues with your custom code!

spcaf

As we had to develop a substantial amount of code (more than we originally expected) to make SP24 work as we wanted, we needed to make sure that we didn’t have any security leaks, used only SharePoint Foundation features and and also followed best practices. To help find these issues early, we utilized the SharePoint Code Analysis Framework (SPCAF) developed by my co-organizer Matthias Einig. It’s good to work with people who have excellent products 😉

I can honestly say that this allowed us to find and fix issues before we even got to the testing phase, saving us a lot of troubleshooting time. Because much coding for SP24 involved JavaScript, Matthias also slipped me a copy of the latest beta (v5), which checks about 150 JavaScript/CSOM coding practices as well as the normal 400 plus rules for full trust SharePoint solutions.

>> If you develop code in SharePoint grab a trial


CometChat – A chat browser-based Chat Application

chat-for-sharepoint

Ok we had to buy this one, but it cost so little you barely notice it! Cometchat is built using PHP and allows you to do pretty much everything you want in a chat client. We didn’t buy the full ‘Rolls Royce’ solution as we were worried about the performance overhead of running all those extra goodies in our SharePoint Farm. However, we ended up moving it to Azure anyway simply because we had some free MSDN credits and it’s a no brainer to spread the load of all these services.

If you want to see CometChat in action (within SharePoint), go to any Session Room and look to the right for the chat window. Raphael did an amazing job for us as he was able to get it all seamlessly integrated with the Extradium log-on.

>> CometChat Site


BindTuning.com – templates that allow you brand SharePoint

bindtuning-themes

BindTuning offer pre-baked templates that allow you to brand SharePoint. We pretty much based the look and feel of the white site on on of their templates. Stefan Bauer then optimised the CSS simply to strip out all the styles we didn’t need. This lowered the overall size of the CSS file going over the wire.

>> Check out the themes


Kendo UI  – set of HTML 5 controls to build pages

kendo-widgets

If you are a developer and haven’t checked out Kendo UI – you should! It’s really very cool. It’s built by Telerik and is basically a suite of widgets all built using HTML 5.0 and CSS (no server code at all). They have everything from grids, to sliders. In particular I took advantage of the tab strip, notifications and grid extensively. 

>> Read about Kendo UI


Kendo MVVM – javascript framework which reduces code

kendo-mvvm

Along with the widgets described above they also have their own MVVM Framework which is similar to Knockout. For SP24 I considered using Knockout and AngularJS but plumped for Kendo MVVM in the end. The main reason being that I didn’t know any of them in-depth and Telerik’s MVVM framework obviously works really well with their own widgets. After using, it I would recommend it, it’s really simple and removes the need for all of that plumbing code to set and monitor the data in the HTML.

>> MVVM Documentation


SignalR – push “messages” down to browsers

signalr

You may not know, but SignalR literally saved the first SP24 conference. We discovered a CloudFlare caching configuration on sessions that had to be re-scheduled. Literally the week before the conference, I had learnt SignalR, wired it into the Session Room, hosted it on Azure and created an Admin page to remote control the session rooms. The intent at that time was to use it for live sessions, where we had a connectivity problem with the Speaker. In this instance I wanted to be able to swap out the live feed with the video back up without having to tell people in the chat room to do a full page refresh. As it turns out we used SignalR to push down messages to the player a whole lot more than we expected (including the Keynote). This is worth a whole blog post on it’s own as it really is a story to tell!

>> SignalR Site


CloudFlare.com – a CDN that saves I/O on SharePoint

cloudflare

In the weeks running up to the conference, our big worry was scale. We were getting lots of sign-ups and the ‘buzz’ surrounding SP24 grew. We needed to make sure that it would scale. One of the biggest challenges for SharePoint Foundation boxes can simply be dealing with a large number of I/O requests. For that I mean things like transferring images, js, css, pages, documents and all the other goodies from the SP database down the clients browser. In Foundations big brother, you can easily take advantage of blob caching and page output caching, but this wasn’t available to us. In my search for a solution I discovered Cloudflare.com which acts effectively like a reverse proxy in front of SharePoint. All you need to do is point your DNS to Cloudflare.com’s nameservers and it will then intercept every request. In a few clicks you can easily get it to cache and compress most assets such as JavaScript, CSS, Images and also JSON files in our case.

WARNING! Although, it does an amazing job at protecting SharePoint (up to 60% of all requests for us), it does have periods where it’s on “go-slow”. It’s also very easy to ‘over cache’ something, so take care on what and when you cache.

>> CloudFlare Site


Windows Azure – Cloud services that can scale really easily!

azureI know the description is only a drop in the ocean of what Windows Azure can do. This was pretty much my first time using Windows Azure properly. (Late to the party or what!). I have got to say, sometime MS produce applications / services that are lacking and sometimes they produce very sweet ones. I think Azure is amazing! We used it to host CometChat on a VM and on the big day we were able to pump up the box size in seconds.

We also used their Cloud Services for all of the SignalR code. The most impressive thing for me (being a developer), is the speed with which it deploys. It really is very cool and I am so excited about starting to move the DocRead and DocSurvey engines to it this summer!

>> Get free trial of Azure


Visual Studio Load Testing – performance testing

load-test

We also used Visual Studio Load Testing to hit SP24 with some serious load and were able to utilise test agents hosted in Azure. I wasn’t actually involved in any of this set-up but please have a chat with Jasjit Chopra from Penthara Technologies for more information as he led this area.

>> Read more about loading testing

 


Fpweb.net – host SharePoint in a Private Cloud!

network
Finally, last but certainly not least comes Fpweb.net. Fpweb.net hosted the entire platform for us and also ended up scaling it to a very hefty 3 Server Farm ready for the big day. I have to say that although they donated the entire Farm to the SP24 cause, they still treated us as a paying customer. Their support engineers are both knowledgeable and extremely helpful. The whole way through the relationship has been amazing and without Fpweb.net SP24 wouldn’t have happened! So, if you are looking to move part or all of your business to a Private Cloud and require a greater degree of customization than perhaps Office 365 can offer – get in touch with the folks at Fpweb.net!!


That’s all folks!

I hope this post helps you get some background into how we put SP24 together! As always, any questions please post a comment below.

Cheers
Mark