Related topics

Microsoft's Office 2013 app-maker cloud drenches developers

Visual Basic macros are dead! Long live JavaScript macros!

It was in 1994 that Microsoft declared Office a development platform, and released the Office Developer’s Kit 1.0 for coders to turn out useful utilities.

Using Visual Basic and COM automation, programmers could control Office applications using software. Automating, say, document editing in heavyweights Word and Excel in the fragile and resource-constrained environment of Windows 3.1 was unwieldy, but in some scenarios was a great timesaver.

In 2003, the company came up with Visual Studio Tools for Office, in which COM automation was wrapped with .NET libraries, allowing Office to be controlled using C# and other .NET languages. Microsoft also came up with a variety of methods for extending Office: templates, COM add-ins, Smart Tags, Action Panes, custom ribbon tabs, and more.

Then there is Visual Basic for Applications (VBA), the macro scripting language that will not die. Lightweight and effective, VBA still exists in Office 2013, the new release currently in preview.

The problem with all these odds and sods is that they run in the client and (VBA macros aside) have complex dependencies. They do not translate well to the cloud-with-device model, in which Office may be running on a locked-down Windows RT ARM tablet or in the browser on an Apple iPad using Office Web Apps.

Hiya Napa: Is Microsoft's Office cloud IDE an island paradise?

Enter Apps for Office, yet another model for Office development, but this time using web technology. A new-style app runs in an embedded browser object, either within an Excel spreadsheet or alongside a document in a Task Pane, or alongside an email in Outlook 2013. The app is coded in HTML and JavaScript, and communicates with the current document via a JavaScript API. Many of the methods are asynchronous. These apps run either in the Office 2013 locally installed applications, or in the browser using Office Web Apps. Office Web Apps are a feature of workplace collaboration tool SharePoint, Office 365 or online storage system SkyDrive.

Programmers can get started with Apps for Office by signing up for an Office 365 developer pass. One advantage of this approach is that you can use Napa - Microsoft’s cloudy IDE for Office and SharePoint client apps. Napa is itself an app, and once installed you can create a new App for Office in a couple of clicks.

Napa is a simple affair, but it does support syntax highlighting, code completion, error highlighting, and search and replace. More importantly, it makes deployment for testing a snap. Hit the run button, and Napa packages and deploys the app to your Office 365 SharePoint and lets you launch it in the relevant Office application, such as Word or Excel, or in the browser for a pure SharePoint app.

Frustration comes baked in

Sponsored: Designing and building an open ITOA architecture