Is Office the ultimate app platform

Office is now available as an 'app' on all sorts of different devices including iOS, Android, Windows, MAC, Web Browsers and of course the classic Windows desktop

#Office #Apps

Wednesday 03 Feb 2016

This article was written on GitHub. You can raise issues, create pull requests or even fork the content... its open source

We all know what an app store is, don't we? We use them to fill our phones and tablets with all those lovely little apps. App stores are our 'go to' place to get the latest functionality for our device.

Also, we all know what Office is don't we?... Office is one of Microsoft's oldest products and has been around since 1990, that makes it 26 years old. As I write this article, I work with people who are younger than Office!

Office is now available as an 'app' on all sorts of different devices including iOS, Android, Windows, MAC, Web Browsers and of course the classic Windows desktop.

More than 1.2 billion people use Microsoft Office, by conservative estimates that is around twice as many people than use IOS.

On average, Office users spend 2-3 hours every day working inside Office applications. Can you think of any other platform (including web browsers) that get anywhere near that level of usage on a daily basis?

Microsoft Word, Excel, PowerPoint and Outlook consistently feature in the top 5 productivity apps for IOS and Android devices according to App Annie

In short, Office has a staggering user base across all sorts of devices and platforms. It gets more eyeballs than any other platform.

Did you know that Office has an app store?

Office does indeed have an app store.

Office has had an app store ever since the 2013 suite was released. The Office app store provides add-ins which enhance the capabilities of Office. One of my favourite examples is the Wikipedia add-in which lets you search for Wikipedia and insert content from Wikipedia directly from within Office, but there are many more highlights including Bing Translator, LinkedIn, Collins Dictionary, Nimble CRM, PayPal, Evernote, Docusign and many more.

The app store spans all Office products including SharePoint and Office 365 and you'll get a filtered view on the store depending on how you access it. For example, in Word you'll only see add-ins that are suitable for use in Word or you can see the whole store at store.office.com.

Like any app store, some are free, some have trials and in-app purchases. Some tie into a back-end services and some are paid-to-download. Like any store, there are great add-ins, good add-ins and not-so-good add-ins, but you’re sure to find something in there that makes those 2-3 hours a day you spend in Office more productive.

There are various types of add-in:

You can find out more about the various types of Office add-ins at the Office Developer Center

Did you know that Office 365 has a massive unified REST api?

Office 365 is Microsoft's cloud offering that compliments the Office client app products. Office 365 is based on a combination of Sharepoint Server, Exchange Server, Skype For Business, Yammer and OneDrive for Business.

The whole of Office 365 is accessible to developers via a single unified API. It’s a REST API, meaning you can call into it regardless of the technology, platform or language you are using. If your device can call HTTP, it can call the Office 365 API.

The Office 365 API is implemented as a 'graph' API. This means that it is very easy to traverse between entities in your code. For example you could take a user, then find the groups they are a member of, then look at a group, then look at another one of its members, then look at files they have access to and so on.

If you’ve ever done any development against Facebook's APIs, it’s the same idea.

Did you know that Office apps are written in Web Technologies?

One of the best things about the Office developer platform is that the underlying technology is pure web development; arguably the most popular and well understood form of development on the planet.

In 2007, Jeff Atwood wrote an article called "The Principle of Least Power" in which he made this increasingly true statement:

"any application that can be written in JavaScript, will eventually be written in JavaScript". Atwoods Law, Jeff Atwood, 2007

Add-ins in both Office and SharePoint are effectively iFrames to hosted web applications written in HTML and JavaScript. The web applications use a JavaScript library called Office.js or the Office 365 Graph API to get data in and out of Office.

Add-ins can be written in any web back-end stack (i.e. ASP.NET, PHP, Node.js, Python, Whatever), any front-end stack (plain HTML/CSS/JS, Angular, React, Knockout, Whatever) and can be hosted on any service provider (i.e. your own server, Rackspace, Azure, Amazon web services, Whatever). Ultimately anything that can produce HTML and optionally JavaScript is fine.

The only skills you need to be able to write an Office add-in are:

Also, because the apps are web applications, they can be easily updated and maintained using your regular web workflow.

All things considered ...

So when we add all these factors up, we have to ponder whether Office really is the ultimate app platform? Let’s consider some facts...

Convinced? ... get started at Dev.Office.Com

Resources

Got a comment?

All my articles are written and managed as Markdown files on GitHub.

Please add an issue or submit a pull request if something is not right on this article or you have a comment.

If you'd like to simply say "thanks", then please send me a so the rest of Twitter can see how awesome my work is.