Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

M365 Saturday Sydney 2019 - Dispelling the Office Add-in Stigma

53 views

Published on

Let's face it Office Add-ins have a bad reputation of being unstable, performance hogs and a challenge to deploy. I'm here to explain how the modern add-ins model has drastically changed the landscape. We will discuss stability, performance, deployment, capability and opportunity. It's time to look again at using add-ins to increase productivity.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

M365 Saturday Sydney 2019 - Dispelling the Office Add-in Stigma

  1. 1. M365 Saturday Sydney@CameronDwyer Dispelling the Office Add-in Stigma Cameron Dwyer | MVP | OnePlace Solutions
  2. 2. M365 Saturday Sydney@CameronDwyer Event Sponsors
  3. 3. M365 Saturday Sydney@CameronDwyer The Huge Potential of Add-ins • Impressive user base size • Keep users focused and in context • Minimise context switching • Not an additional application 180M Office 365 Monthly Active Users 400M Outlook.com Users 1B Office App Downloads on Android
  4. 4. M365 Saturday Sydney@CameronDwyer So why don’t we see huge add-in usage? • Historically VSTO/COM gained a bad reputation • They were universally painful to work with • Office worked on all devices, add-ins didn’t
  5. 5. M365 Saturday Sydney@CameronDwyer The modern add-in model to the rescue Cross platform Web technologies Modern distribution
  6. 6. M365 Saturday Sydney@CameronDwyer Modern add-in anatomy XML Manifest HTML Page
  7. 7. M365 Saturday Sydney@CameronDwyer Add-in shown in mini web browsers
  8. 8. M365 Saturday Sydney@CameronDwyer DEMO: Add-in Anatomy
  9. 9. M365 Saturday Sydney@CameronDwyer How does this modern approach fix things? Modern Model Old VSTO / COM Model
  10. 10. M365 Saturday Sydney@CameronDwyer • Slow start up • General slowdown of host app • Slow and hanging on shutdown • Dynamic ribbon menus Host App Performance OldVSTO/COMModel
  11. 11. M365 Saturday Sydney@CameronDwyer • Add-in manifest does not contain code • No custom code runs at host start-up • Custom code only runs when user wants to use add-in • Runs in sandboxed browser/iframe Host App Performance ModernModel
  12. 12. M365 Saturday Sydney@CameronDwyer • Freezing, hanging and crashing • Synchronous events not completing • Unmanaged code, memory leaks • Leaving objects in invalid state Host App Stability OldVSTO/COMModel
  13. 13. M365 Saturday Sydney@CameronDwyer • Add-in code is isolated from host app • Add-in framework monitors add-in CPU/Memory usage • Events where code runs are async “after” events • Modal interaction are not allowed Host App Stability ModernModel
  14. 14. M365 Saturday Sydney@CameronDwyer DEMO: Prevent Modal Interactions
  15. 15. M365 Saturday Sydney@CameronDwyer • Add-ins are installed with full-trust • Read/write access to Office document • Read/write access to all files • May access other running apps Permissions OldVSTO/COMModel
  16. 16. M365 Saturday Sydney@CameronDwyer Permissions ModernModel • Sandboxed similar to websites • Very limited access to host OS/device • Host application exposed only through Office.js • Different permission levels Read/Write/ReadWrite
  17. 17. M365 Saturday Sydney@CameronDwyer • Add-ins only ran on Windows versions of Office • Technology stack would only work on Windows • COM late 90’s / VSTO 2003 • Office is now on Mac, Online, iOS and Android Supported environments OldVSTO/COMModel
  18. 18. M365 Saturday Sydney@CameronDwyer • Windows • Mac • Online (web) • iOS (iPhone & iPad) • Android (phones and tablets) Supported environments ModernModel
  19. 19. M365 Saturday Sydney@CameronDwyer • Limited technology options .Net / COM • Tech lag • Steep product specific learning curve • Visual Studio IDE • Microsoft development stack Development environment OldVSTO/COMModel
  20. 20. M365 Saturday Sydney@CameronDwyer • Web standard technologies • Use any scripting framework (Angular, React, Vue) or none • Use any IDE • Use any toolchain • Easy for existing web developers to build Office add-ins Development environment ModernModel
  21. 21. M365 Saturday Sydney@CameronDwyer • Installed per user / per machine • Complex roaming & multiple users • Pre-requisites • Add-ins not loading (going missing) Deployment OldVSTO/COMModel
  22. 22. M365 Saturday Sydney@CameronDwyer • Public Store exposed in-app • No installation of code • Add-in is associated with the user (roams) • Automatic updates to add-ins • Governance options Deployment ModernModel
  23. 23. M365 Saturday Sydney@CameronDwyer DEMO: Add-in Deployment
  24. 24. M365 Saturday Sydney@CameronDwyer • Breadth of API functionality • Ability to extend UI in more places • More synchronous (before) events • Richer integration with other resources on the PC • Offline Scenarios where VSTO/COM beats modern
  25. 25. M365 Saturday Sydney@CameronDwyer Try out some modern add-ins
  26. 26. M365 Saturday Sydney@CameronDwyer camerondwyer.com @CameronDwyer

×