Wednesday, January 7, 2009

Creating an API into any desktop application

I blogged today about what makes an application a legacy application (see link Below).

I am fanatical about Desktop Apps needing API's to increase productivity for users. You going to see me write a lot more about this in 2009 because I believe if there was ever a time for people to recognize that desktop API's can provide rapid and massive ROI, it's now.

I started questioning when and why developers stopped building API's into client (Fat or Thin) applications.

HLAPPI was created to enable mainframe applications to have an API and created significant productivity enhancements on the desktop. Around the same time, with similar benefits, Microsoft Office came out with DDE which was an API for Office apps. I am (was) a very experienced DDE programmer (eek). DDE was pretty bad and probably gave Desktop Application Integration a bad name (there was no error checking at all). MS OFfice came out a few years later with OLE which was a lot more robust. Then came Visual Basic Macro's for Office. DDE, OLE and VB are all desktop productivity API technologies that have been very widely used over the last 15+ years and there is no doubt, led the way in Office / Desktop Productivity.

Funny, all of these are in still in wide use today. However, enterprise users use more than just mainframe and office applications developed internally or packaged. Yet few of these other technologies support any other kind of API except POCAP (Plane Old Copy and Paste).

Imagine, any existing (old or new) desktop application being given it's own, "instant-on" API. Even if you don't own the application or have the source code to it! And better, unlike Visual Basic, you create the API yourself with a simple Drag and Drop Visual designer technology and better still, the API can be exposed as an SOA Web Service (REST or SOAP) so any other newer technology can consume and integrate it in minutes.

OpenSpan studio does just that. It opens up all of the 100's of 1000's of desktop applications running in the enterprise today, for integration. Once we give these applications their own API (which can be instantly), the power of integration and automation is yours for the taking. It might have taken over 15+ years to realize that API's in these applications are invaluable and key to productivity gains, but at least we are here now, finally with a working product that enables it.

What makes an application a legacy application?

No comments: