This is one installment in our series “In Own Words” by Voitanos asking experienced SharePoint developers to share their thoughts on the new development model for SharePoint - the SharePoint Framework. In this series, we ask each person a series of questions and let them share their thoughts.
I’m Wes Hacket. I’m the CTO at Addin365, productivity and Office 365 product company in the UK. I’m also an Office Sever and Services MVP for the last four years.
So I first got into SharedPoint in 2006 working on pre-release MOSS, and I’ve been doing 2010, 2013, and then as soon as 2013 was available in Office 365, building lots of solutions, enterprises, products and stuff for Office 365, and our product company basically specializes in 365 only.
So I was one of the fortunate few that saw the Framework when it was just an idea on a whiteboard, nearly two years ago now, and then was involved with Dev Kitchen One, February last year, so we got to see all the new ideas and Framework. Really, I’ve been working with the product team on and off all lessons Feb last year building pre-release, and then announcing when it went to public preview, helping the community, supporting the community, and getting started, and now UX is building stuff for customers.
You should know what the SharePoint Framework that I use because Web Parts were the first thing to arrive, they really remind me of Visual C# Web Parts way back when for 2010. It’s a Web Part container built with a particular technology that you sort of put your experience right into the middle of. So now what we’ve got is a React container that you can put your code into the middle of the Web Part, and then Microsoft is taking care of bootstrapping that into the page. So, it’s a good first start; I think it will be quite exciting to see where the team take that implementation, the extension points and beyond the Web Part box, if you like, in terms of allowing us to extend that modern UI that they’ve been delivering over the last twelve months.
The thing that strikes me about SharePoint Framework roadmap is the velocity. Never before have Microsoft been so open and so fast. So as a SharePoint Dave that’s trying to get on the train to keep up, you’ve got to learn new technologies; WebPack, Yeoman generators, all these things that, as a normal SharePoint developer coming from an enterprise background, you’re kind of not familiar with, so it’s that velocity, and the roadmap support is kinda their view of how they’re gonna modernize the whole of the SharePoint UI, and there are some really interesting pieces, but then there’s still some big chunks missing. So provisioning still, we’re reliant on PMP to do provisioning, and we’ve also got some challenges around branding. You know, a lot of people still wanted to, you know, big arty design treatments to SharePoint sites, and there are some pretty big gaps in those areas at the moment.
If I was king for the day, the one thing I would add is I would address the balance between the amount of effort and implementation on React versus Angular. For three years, the Microsoft marketing team spent a lot of effort getting us to build SPARS, add-ins using Angular, and we’ve kind of been left behind with the push for React. I mean I understand Microsoft want to use React, and the Framework is agnostic to a point, but it’s sometimes more problematic to use anything other than React to do some of the extensibility.
I think I would sort of look at a bit higher level and make sure that we don’t overspread the amount of customization we can do to the platform. I think the community, in general, is looking to replicate the development surface they had available to them from on-prem days. And there are some questions that I’ve seen, there’s some commentary that I’ve seen, about, “I want to extend it like this, I want to do that, I want to take over the UI,” and the product teams themselves are saying “to make it fast, to make it secure, to make it future-proof, we need to control a lot of that experience.” The cloud is giving you the agility and the speed, and it comes with the drawback that you don’t necessarily have the extensibility to the UI that you wanted it. So that for me is sort of the key area.
Just a lack of documentation. You know, really good, solid, enterprise examples. There’s a lot of Hello World, there’s a lot of contributions in PMP, and those guys have done a great job of getting us to a baseline, but we really need solid enterprise guidance, you know, how do we make sure we’re doing auth the right way, how do we make you know, cuz we’re moving from server side to client side, we need to make sure we’re not exposing tokens; we need to make sure we’re taking advantage of the right models for security, and also, there’s not a huge amount of information about how we can leverage the data-loss prevention and the rights management EMS sweet, alongside our customer implementations, cuz we now have to be cognizant of two factor auth. All of the DLP PCs, when we build Web Parts, we don’t want to be the ones leaking data.
I think that SharePoint Framework is gonna enable some of the business use-cases to be solved, so the fact that we can start building Web Parts now, that we can put on TeamGroup site, is really beneficial to a lot of enterprise organizations. The future that they have already said they’re gonna talk about publishing and making sexy pages, so we’re bound to see that. But I think, really, for me, it’s still limited because it’s just SharePoint. You know, we’ve got Office 365, it’s 17 or so services, teams, groups, exchange. You know, there’s no single extensibility point anymore; we’re just focused on SharePoint with a SharePoint Framework, and I think that will effectively ring fence it, because our company is not just looking at SharePoint as the place to put things; Teams is a really obvious one, but there are other scenarios where you put extensibility; the office clients is a great example. So SharePoint Framework has its place; it gives us the ability to do a lot of things that we need as an enterprise and as an ISV for products, but it isn’t the whole story in Office 365.