I am truly inspired by the direction Microsoft has taken in recent times with the move to iterative development, open tooling and open source. At its core Office 365 is a suite of services providing OOTB experiences and a set of APIs ready for consumption. The experiences will satisfy many of the requirements for Portals, Intranets and fundamental productivity needs like File Management, Search and Sharing.
However, when you need to extend capability and customize, the ecosystem is really opening up. Microsoft will continue to focus on developing OOTB experiences but the Office 365 Developer’s world just became way more interesting!
During The Future of SharePoint event (May 4th 2016) the new SharePoint Framework was announced. We’re yet to get our hands on this Framework but we already know a lot about what it will involve:
- Modern client-side development
- It will focus on lightweight web and mobile patterns
- Microsoft will use the same SharePoint Framework for development
Here is what your Office 365 development world might look like:
The SharePoint Framework and a commitment to make more OOTB experiences open source is a further extension of Microsoft’s open stance on source code. We’ve seen a great community build up around the Office Patterns and Practices (PnP) group as well as open source solutions like Matter Center for Office 365.
As a consulting organization working on client projects it is not always straightforward to embrace open source. Ultimately most code we write will be owned by our clients and it will be at their discretion whether we utilize open source. There are huge benefits to be gained from working with open source and it’s great that we’ll now be able to do this with SharePoint Online and Office 365. Here are some core benefits to open source:
- Cost – Providing there is a good fit, starting from a common foundation will be more cost effective than starting from scratch.
- Completeness – Ultimately open source is likely to solve common problems better than a completely custom approach. Engaging thousands of users and developers in solving a problem is more likely to yield a comprehensive solution.
- Quality – Linus’ Law, named after Linus Torvalds, the creator of Linux says that “given enough eyeballs, all bugs are shallow”; or more formally: “Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix will be obvious to someone.”. Open source will almost always have more “eyeballs”.
- Security – The implementation of security by obscurity can be a risky business. How can a client be sure that a system is truly secure unless the source can be adequately reviewed? Open source can put more eyeballs on to an implementation to identify holes and thereby offer the opportunity to fix vulnerabilities.
- Assurance – Working with open source ensures that commonly accepted patterns and practices will be adopted on a project. This will give a client greater assurance that their solution can be maintained as individual developers move on and off of projects.
A great early indicator of how open source is working with the Office 365 is the Office Patterns and Practices (PnP) group. It is hosted by Microsoft but is a community effort complete with a GitHub repository.
Since Perficient started to engage with PnP we have seen a steady increase in membership and attendance on the monthly call. During the May 2016 call I was very proud to see four Perficient names recognized in the top contributions for the month. I think this is a sign of times to come with SharePoint development. It’s great to be part of it!