Manually Registering a SharePoint Add-In

After writing the Modern Development Lifecycle article I came to the realization that the article I mentioned for creating the client id and secret missed an important step. It missed how to create the application itself. So in this article we are going to create and permission an add-in so it is ready for our use. Continue reading “Manually Registering a SharePoint Add-In”

SharePoint Framework Release Candidate 0

In big news on the SharePoint development front, the SharePoint Framework reached release candidate 0 yesterday. What does this mean? Release candidate means that what we are seeing now in the SharePoint Framework is pretty close to what it’s going to look when it reaches general availability(GA). In looking through the release notes associated with this release, https://github.com/SharePoint/sp-dev-docs/wiki/Release-Notes-RC0, there are quite a few changes. Some of the changes are pretty major and will break any existing web parts that you may have created. So why would Microsoft do this? The reason is to perform some final cleanup of things that did not exist as they should in a polished project. They had to rename and move quite a few things. If Microsoft did not do this now it would probably not happen and there would be areas of conflict and confusion. You can tell the scope of how many different areas have changed by the update steps that are included in the release. Previous releases had a couple things that needed to be updated, while this release has 12 different steps of things that need to be updated. If you are doing SharePoint Framework development I highly suggest that you look through the release notes. The release notes will guide you through all the changes and Microsoft’s direction and thinking about the changes. Some of the most notable changes are:

Continue reading “SharePoint Framework Release Candidate 0”

Modern Software Development Life Cycle Part 1

I have been doing JavaScript development for many years now but it was always included as part of some other server side code that was easy to manage. When I started working on Office365 and doing 100% client side code I have struggled with the best way to manage the artifacts that are being created. With server-side code we just used Visual Studio and that would handle our connection to version control and a plethora of other tools to help us write better code. When things changed to working in Office365 I started out by adding the artifacts to a library in SharePoint and then editing them with SharePoint Designer. I know, I know, SharePoint Designer is not a good code editor but in regards to save performance, SharePoint Designer behaves better than anything else out there. The problem with this is that the code that I am creating is not stored in a centralized source repository. Also, if I wanted to get the code into the repository it was a manual effort to copy the files back to my machine and then check everything in. Dealing with multiple developers working on a project could be rather tricky since we were working on the exact same files. There have been times were changes have been temporarily lost due to a save that did not include the changes from other developers. Because of this I always make sure the library I am using has versioning turned on and sometimes I’ll require checkout depending on the likelihood of multiple devs working on the same files. Another problem with this approach is that there is no way to run any code improvement processes. If I want to use TypeScript for example, your code has to be on a local drive for the TypeScript compiler to do its thing. If you try to run it on a mapped drive through WebDav, TypeScript complains. There are also code tests, bundling, and minification that are tricky to run directly from a SharePoint library. With the introduction of the SharePoint Framework I have realized that I needed to figure out how to best handle the client-side pieces in regards to the Software Development Life cycle. This series of blog posts will cover those topics.

Continue reading “Modern Software Development Life Cycle Part 1”