ESPC 2016 – SPFx workshop, keynote and hackathon summary
I had a pleasure participating on the European SharePoint Conference 2016 this year with quite a few things also on my own table. I was initially asked to deliver the day 3 developer keynote with fellow SharePoint Patterns and Practices Core team members and after accepting to take care of this, got plenty of additional things on my table as well, since simply don’t know how to say ‘no’. This is pretty much the story of my life, but this was really a fun week and definitely not regretting on accepting additional things as well.
- Tuesday – The Future of SharePoint is Now, Reinventing Content Collaboration with Dan Holme, Mike Ammerlaan and Chris McNulty
- Wednesday – Where Form Meets Function: Understanding Collaboration’s Cultural Fit with Christian Buckley and Benjamin Niaulin
- Thursday – What’s the future of SharePoint customizations? – by me, Erwin van Hunen and Paolo Pialorsi
Thursday’s keynote was really all around the developer story with SharePoint and where we are heading from a customization perspective. We had roughly 1200 attendees in the room and feedback was really great. Erwin and Paolo are both MVPs and also SharePoint PnP Core team members, so they are really well looped on what we do in engineering. This was also really fun thing to do with the three of us and it was nice to see that regardless of classic momentary network issues, everything went as planned. There’s always room for improvement, but let’s do that with the next setup.
We obviously covered the modern tool chain and and touched on numerous other development areas related on the SharePoint Online and on-premises. Key takeaways from the keynote in general were following:
- Future is bright for SharePoint developers
- SharePoint is a development platform
- Stay up to date with SharePoint Patterns and Practices
We also concentrated on the power of community and how everyone from the community can truly influence on the future of SharePoint by sharing their feedback and letting us in the engineering know what works and what doesn’t. Community influence to SharePoint roadmap has never been bigger and we truly want to help you where we can to achieve your business and technical objectives.
We absolutely also acknowledge that the modern SharePoint development model does require quite a lot of learning for existing SharePoint developers. This is something where we will try to also help as much as possible by providing training materials, guidance and samples. What’s though cool about the transition is that after you’ve done the leap for the modern technologies, you can use those learnings with other products as well, since modern SharePoint development is more and more aligning to industry standards by using web stack development tools and remote APIs.
You can find used presentation from the SharePoint PnP docs.com section.
Keynote demo 1 – Modern web parts and development experience
This demo was more around demonstrating the out of the box experience with modern out of the box web parts. Paolo showed how you can modify the modern pages and how to configure web parts using the modernized web part property pane. After the out of the box experience, he showed how developers have exactly the same control and modern development experience when they are implementing their own web parts.
We used following basic to-do web part as the sample implementation, which is available from the SharePoint GitHub repository . This sample was implemented by Chaks (Chakkaradeep Chinnakonda Chandran) while back as a reference sample for different client-side web part aspects.
- Modern pages will have fluent and significantly improved end user experience to customize them
- Modern web parts are fluent and reactive in the way you configure them
- You can take advantage of all the different advantages and improvements in the modern experience with your customizations – you have access on same APIs and readiness to implement similar experiences as with out of the box web parts
Keynote demo 2 – Modern web stack development with SharePoint
In this second demo, we wanted to show that even though SharePoint Framework is currently only available in SharePoint Online, you can start adapting modern web stack development tooling in on-premises. We have communicated that the SharePoint Framework will be supported in the SharePoint 2016 during calendar year of 2017, but you can actually already today adapt modern development tooling and libraries in on-premises.
Notice thought that even though we showed SharePoint 2010 in the demo (nerd factor), it has slightly different story than with 2013 and 2016 version, due the differences in the REST API implementation. 2013 and 2016 are pretty similar from the REST API implementation perspective, but in SP2010 you only had pretty limited remote API with listdata.svc based implementation. This means that any work you’ll do in SP2010, would require significant changes from data layer perspective, before it could be moving to newer versions.
- SharePoint Framework will be released also to SharePoint 2016 during calendar year of 2017
- SharePoint Framework will NOT be released to SharePoint 2013 or SharePoint 2010 versions
- You can use modern web stack tooling already today in your on-premises deployments
- Amount of refactoring needed to adapt SharePoint Framework in SharePoint 2016 or SP Online depends on your major SharePoint version
Guidance on starting to use modern web development practices with SharePoint on-premises is work in progress. We are targeting to provide generic guidance for SharePoint 2013 and SharePoint 2016 on this model, so that you can more easily adapt the modern tooling. We won’t be targeting SharePoint 2010 with this, due the remote API differences and limitations.
You can see initial status and what was shown in the keynote from following repository: https://github.com/VesaJuvonen/react-app. This is just initial work started with help of Chakkaradeep (Chaks) Chinnakonda Chandran (this is forked from Chaks initial work) and Waldek Mastykarz. Just to repeat the message one more time – this does not mean that SPFx would be landing to SP2013 or SP2010, but you can take advantage of modern web stack tool chain in those platforms as well, which will then make adoption of new platforms easier for you, when you are upgrading to newer versions.
Keynote demo 3 – Provisioning modern team sites with a bot using voice
Few weeks back we already got a nice Microsoft Bot Framework submission around the SharePoint Framework client-side web part samples from Gary Pretty. This really got the PnP team thinking around the different opportunities and possibilities with the bots. Objective of the demo was around demonstrating the integration opportunities cross different services in the Office 365 and how you can automate operations using the Microsoft Bot Framework.
In the demo, we used our custom bot called PnP SharePoint Manager in the Microsoft Teams from iPhone with voice. So basically we were able to command our bot to perform operations towards SharePoint Online using different devices and input options.
- There are interesting opportunities for the customizations when you combine the different services available with Office 365
- Microsoft Bot Framework is a great platform for modern experiences and for automating operations cross your cloud deployments
- SharePoint Online has powerful APIs, which we can use remotely from different services
Notice. If you are interested on this bot framework demo more detailed, you can find a recording of almost identical setup from the PnP Core Special Interest Group recording from 16th of November. You can also jump directly to the demo b using following link: Remote provisioning with Microsoft Bot Framework using Microsoft Teams or SharePoint Framework client-side web part.
SharePoint Framework Workshop
We started the ESPC with the pre-day conference around developing SharePoint Framework client-side web parts. This was a fun day together with Mike Ammerlaan (Microsoft) and Eric Overfield (PixelMil). We had roughly 90 attendees in the room and we walkthrough the modern SharePoint development experience together with the audience. Agenda consistent from topics like following.
- Introduction SharePoint Framework
- Building client-side web parts
- Office UI Fabric React
- Lifecycle and deployment options
- SharePoint and Microsoft Graph
- Webhooks in SharePoint
This year ESPC organized second annual SharePoint Hackathon as part of the conference. This session was hosted by Mike Ammerlaan and was also personally present to help with any questions around topics, which attendees were investigating or hacking. On the picture right , you can see how I concentrated on supporting the attendees in practice .
This was by far the best organized hackathon which have ever attended. ESPC organizers had ensured that we had cool swag for the attendees and we had our own waiter from hotel taking care of any requests around drinks or food. We had roughly 25 participants and all were highly committed on building something cool. Hackathon started on Tuesday evening around 6 PM with shared dinner and attendees or their teams where expected to submit their results as a video by Thursday morning 10 AM.
Submissions were really high quality and had different kind of technologies demonstrated in the context of SharePoint. Implementations varied from on-premises to SharePoint Online, using also mobile devices. Choosing a winner from these kind of submissions were really hard, but we could not give a Xbox unfortunately for all of them.
Winner team members were Andi Krüger and StephanKitzler-Walli. Guys demonstrated how to host and build SharePoint Framework style implementations in the on-premises using both farm solutions and add-in model as the underlying technique. Demonstration was really impressive and there was clearly a lot of time spent on making things happen.
Additional activities and notes
I also had one classic session to delivery by myself during the conference. This was around my not to use Feature Framework in SharePoint deployments for deploying assets or configurations to SharePoint sites. Key pointers of that session are following and you can also find slides for that below.
- Feature Framework is not flexible enough for managing your customizations – especially in maintenance cases where you’ll need to always fall back on code
- Start moving to remote API based approaches where suitable – with for example PnP Provisioning Engine
- There are multiple open source and commercial solutions available for replacing feature framework as the deployment tool for the assets and configurations
Would also like to thank the ESPC organizers on extremely well managed conference and also on the great speaker gifts. Each speaker got their very own personalized Lego figure. Here’s me, Erwin van Hunen and Markus Hintner hanging in the bar.
“Sharing is caring!”