This is one installment in a series 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 Marc Anderson. I'm a SharePoint consultant and I do other stuff but pretty much everything I do is SharePoint so, I say it that way. I have my own little company outside Boston with Julie Turner called Sympraxis Consulting.
Well, it's a little varied, right? I never did the service side stuff and that was actually sort of an election on my part. I saw some interesting things that I could do in other ways, plus I had some clients where deploying stuff to the server was just never gonna happen. So, we came up with other ways to do things and that's where the development on the client's side came from doing things like data view web parts, which actually execute on the server but we can work on from the client. That whole sort of set of tool usage came from necessity as much as anything else. Plus, I really like the way we could make some really useful stuff that was right in front of people.
Well, I'll be honest, I don't use it really at all. The good thing is I went to the first developer kitchen, which we do talk about these things even though we don't talk about what happens in them necessarily. I got to see some of the early versions of things, got to understand what the tooling was, got to understand sort of how it was going to be built, which changed some of my approaches to things. I was just at a dev kitchen so, I've seen where it is. What I struggle with is a use case for it in the work that I do with my clients. I tend to build full page applications or at least applications that take over the majority of the page so, a web part itself doesn't really have much interest to me unless that web part can expand and take up a lot more space. We're doing a lot of things that will be able to be turned into SPFx things later. We're developing towards that but we're not actually using the SPFx to put stuff into client instances.
I think it's an excellent starting point. I think SPFx is the right answer. I think that Microsoft is finally catching up to a way of development that the rest of the world as been doing for quite sometime. I'm incredibly bullish on it, which sounds sort of silly given that I just said that I don't use it but I'm incredibly bullish on the way their approaching developing with SharePoint now. I think this is the right way to go. I think it provides a better UX. I think its gonna change the way we think about building solutions for the better for end users, which is actually the point, it's not about the developers. I think its an awesome thing. I'd love to see it keep going, I wanna see where it heads. It's a version one, version ones don't have to be bad and this one isn't but it only does a certain amount of things and we'll see more.
I think the road map is good in that it's hitting the things most people want. I think they're doing a good job of prioritizing use cases and understanding what people will use next so, that's good. I also think that in some cases they're sort of missing the boat. Give us something for our full page app, that to me should have been part of the first release. I think probably there's some confusion what that even means and we'll get that straightened out. I think that what's there is great but again, let's keep going.
Its interesting, it's not a development answer, it's a we can do better stuff for end users. We can put that functionality right on the glass. I talk a lot about this at sessions at conferences, the reason that client side development is good is not some sort of language you use prejudice or religion on my part. I think we can build better solutions. I think that SharePoint developers are going to have to learn how to build those better UXs.
Right now I call it overwrought, it's very complicated to look at and to use. I'd love to see something like an SPFx Lite and I don't know what that exactly looks like. I don't know if it takes Typescript out or it make the build process more straightforward or whatever. I talk a lot about the spectrum of people who build stuff in SharePoint, everything from somebody whose just adding columns to a list to hardcore server developers, there's a lot of room in between and I think that SPFx can help address the needs of some of the people in the middle.
It sort of follows from what I said about SPFx Lite, I think that the learning curve to get to the way that SPFx is constructed right now, its not insurmountable but you really do have to work. Anytime you start with a new paradigm you've got some climbing to do and I think that a lot of people coming from the traditional SharePoint development world are gonna struggle with that. Good training is always a good thing. Training only gets you so far, you really have to shift your mindset, the Malcolm Gladwell's 10,000 hours doesn't happen without 10,000 hours passing, right? We can't get to a tipping point until we tip. I think that we need to think about ways to socialize and facilitate that learning curve as fast as possible. This stuff is not going away, even if they decide SPFx sucks lets do the 17th development model it's going to be client side, I'll say that flat out. I don't think they'll ever go back to a server side model on Office 365 or SharePoint, I just don't think it'll ever happen. We have to make that shift, we have to get everyone along on that train.
I do think that client side development for SharePoint is here to stay, that's not going away. We can't read tea leaves the way we used to be able too. Road maps used to be secret, now they're not secret but they don't go out as far so, we really can't predict. I'd love to say, "I understand where they'll be in five years." but, good lord, nobody does, right? They don't know, Microsoft doesn't know. What I think we will see is more and more functionality being brought into this development method, more and more capabilities. I'm hoping that we start to see some third party libraries showing up, I built that SP serves library to fill a gap that I saw and some tooling that I found useful. I think we'll see the same thing with SPFx, we'll see a good ecosystem build up around it. I think there's much more potential for that.
I think we should all be thinking about the fact that its not Microsoft only here, we can see what they're doing, we can augment it. We have to work with them to do things like can you open source the generator so that we can actually see what we can add to it. Can we come up with a plug and play or extensibility model, let's add that Angular yeoman template, lets add the view yeoman template, whatever. Let's help them understand that we need to step to the side of their React stuff and be able to build well with whatever frameworks we want and potentially in different tools than Visual Studio Code. I've tried to do a little SharePoint Framework stuff with WebStorm and it actually sort of works. I think we'd like to see all of that kind of stuff broaden out and I think that's what we'll see over the next year or two.
Remember there are a couple of goals here, one is to bring the server side developers into the client side development world. Another is to bring a whole world of developers who've been doing this stuff for a long time to SharePoint without saying, "Oh my god, what is this mess." We need to make that the mess isn't there when we bring them. All of those pieces together, I'm hoping, the story will just get better and better.
I think one exciting thing here, is that a lot of people have client side solutions in their SharePoint environments all ready whether they know it or not. We've got these power users/citizen developers, some of them are copying and pasting from blogs like mine, some of them are really writing code that turns into useful solutions. If we can start to find those solutions, not to beat these people up, but to enable them more and understand how they're building things and help them understand how to move toward this more industrial strength way of developing with the SharePoint Framework. I'm not saying we're going to get those power users to use the SharePoint Framework, that's probably not the right idea. But if we can think about how we help those people get to where they can and then pick up what they're doing has, I hate the term professional developers, but people who do this stuff all day long, and take them to the right end point.
I actually asked Jeff Teper, a couple days ago, "What's the story with citizen developers with this?" and I was so happy to hear him say that he wants to see the same thing. He wants to see those citizen developers be able to go to an IT like organization and get more assistance, to me that's a huge problem. I think the really cool thing is that if we can help people, and this is part of the community thing, if we can help people to think about developing in a way that lets them get towards the SPFx way of doing things then we can start bundling and packaging and deploying stuff that's already there in a more robust way so, that we have better solutions that can roll out faster that can be more available to end users to accomplish better business goals because that's the whole point. All this foofaraw about what tools where using and stuff is irrelevant if the end users don't get something out of it that makes their work go better. So, I'm psyched for that part.
Did you like this installment in the series? Let us know what you think in the comments below and share it on social media!