Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
How we wrote our app for MS Office 2013 (lucidchart.com)
38 points by bhanks on March 28, 2013 | hide | past | favorite | 15 comments


If you're going to put up source (or in this case, XML), may I suggest two things?

(1) Please indent.

(2) Consider syntax highlighting. http://softwaremaniacs.org/soft/highlight/en/ will do it for you.


Thanks for the tips. Wordpress was being extremely uncooperative. Wasn't parsing <pre> or <code> properly. I will throw that .js script up on the next release. Thanks!


Have you found any significant increase in users from the "discoverability by being in the Microsoft App Store"? Also, any reason you didn't implement this as a classic COM plugin?

We wrote similar apps for Outlook 2013, but didn't see much traction. Also, compared to classic COM plugins (which are also still supported by 2013), the API is very limited. That combined with no backwards compatibility makes me think that it would have been better to implement this as a COM plugin for better coverage and functionality...


Any experience embedding an application into Excel?


It is a diagramming app so it is really more useful to add into a word doc or powerpoint. What use case were you thinking of for Excel?


I wasn't thinking about the LucidChart per say. I was wondering how an Web based-app could be intergrated into Excel such that a user was prompted to login and then import user specific data directly into a Excel spreadsheet range using an REST API.


Excel has had that capability forever. Excel VBA code had access to XmlHttpRequest as soon as Internet Explorer did, at version 5.0. XHR is a COM object that can be invoked from just about anywhere in Microsoftland. I was doing this in Excel way back in 2000.

Nowadays XHR is a bit limited as far as exception handling and other niceties you'd like for API calling. But Excel VBA can access anything through COM interop, such as a more robust C# library using .NET objects like HttpWebRequest.

Excel also has a notion of web queries, to populate a range by making an HTTP request and scraping a table out of the HTML. I think that existed as long ago as Excel 2000 and was brought out to the UI in 2007. It doesn't play well with websites requiring a login or a nontrivial click path, though. I have vague memories of wrestling with this, through the spectacular method of launching an IE window from Excel and relying on the MSHTML layer to share the login cookies between that and Excel!


*per se

I can't speak to Excel integration, but I think people are doing that.


Excel supports task pane and content apps. So for a task pane app like this, it would be possible to make the same app work in both Word and Excel by modifying the "Capabilities" part o the manifest file. All that needs to be added is the following tag: <Capability Name="Workbook"/>

If the user experience is appropriate, then apps typically work very well in both Word and Excel without any changes to the application code.


This whole "tabbed apps for MS Office" business looks interesting -- any tutorial anyone would recommend for getting started?


Microsoft's Development Center has a lot of good information on building apps as well as documentation on all the APIs.

http://msdn.microsoft.com/en-us/office/apps


This brings back memory of OLE/COM/ActiveX control.


This looks so much better than the vbscript API from the past. Is it as functional?


The Apps for Office API seems to be fairly limited right now to reading from a document and inserting text and images. For insertion, you can only insert data at the cursor point or replace currently selected text. There aren't yet options to move the cursor or insert more advanced document objects. (Although, the Outlook Mail apps are an entirely different story) I think the typical use cases that work well with this API are easier information retrieval while working on a document and inserting images or passages of text.


I was the program manager who worked on the Word APIs. The Javascript APIs were not meant to be a replacement for the power of VBScript. Instead, we optimized design for apps that could be used between various Office products. The only Word-specific APIs are around manipulating CustomXMLParts.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: