Web Interfaces - Why They Will Prosper | WebReference

Web Interfaces - Why They Will Prosper

current pageTo page 2

Web Interfaces - Why They Will Prosper

In part one of Web Interfaces - What's Really Missing, we looked at some of the key issues confronting Web interfaces, particularly from the PC or desktop developer point of view. The Web Interface was found wanting in 6 key areas:

  1. Is more difficult to code to due to lack of uniformly implemented standards.
  2. Has security and reliability vulnerabilities when using scripting and rich components.
  3. Has runtime performance issues relative to the desktop.
  4. Is becoming outmoded in Forms controls and HTML.
  5. Has richness of GUI component disadvantages relative to PC and PDA based applications.
  6. Has difficulty in coding/managing stateless protocol and divergent I/O requirements of desktop, kiosk, PDA, mobile phone, etc. - the "on Any device" 6As of Computing requirement.
Despite these difficulties, the Web Interface is still the interface of choice for organizational development. This can be attributed to some key advantages of the Web interface:

  1. It's simple to learn and remember.
  2. Relatively easy to develop for - cost of entry for useful results is low.
  3. It offers superior navigation and menuing capabilities over desktop alternatives.
  4. It has superior cross platform portability with low server-side proprietary lock-in.
  5. It embraces a wide range of skills and participants in the development process.
The question is whether these advantages and technologies will be enough to ensure the continued prosperity of the Web interface.

Web Interface - Casualty of War

The first two disadvantages of the Web Interface are directly attributable to intellectual property wars. Microsoft vs. Netscape in the Browser wars added many billions of man-hours to Web development due to incompatible HTML, DOM, CSS, and JavaScript implementations. Even today there are billions of lines of code that read "if (NS) doThis(); else if(IE) doThat() ; else doDefault();". Fortunately, the wars ended 4 years ago and all sides have pledged to uniformly implement standards. The problem is that Microsoft stopped updating Internet Explorer 3 years ago well short of compliance on JavaScript, CSS, HTML, and DOM standards. And to make things worse, Microsoft will not update its browser until Longhorn comes out in 2005-2007.

 The second great Web war (Microsoft vs. Sun's Java), resulted in a major loss to Web developers and the Web interface. Many of the six issues with Web interfaces are solved by the cross-platform capable Java applets, JavaBeans, and Weblets (IBM Java interface technology). But Microsoft declared Java programma-non-grata in its browser and has effectively stifled the flourishing of Java in the Web client world. However, IT organizations and end-users are also responsible for this situation; even though Internet Explorer hasn't been updated in 3 years (and has fallen well behind the Mozilla and Opera browsers in standards compliance, performance plus range of features and unfettered support of Java), IE has gained market share.

Now Microsoft will argue that Web developers haven't lost out, citing vigorous competition in the rich component market with QuickTime, Flash, the Real Player vs. the Microsoft Media Player. Microsoft will also cite its compliance with new standards, particularly in the XML arena. Additionally, Redmond will argue that ASP.NET has added VB.NET and C#.NET as powerful, new languages that Web developers can incorporate into their any browser client (but running exclusively on Windows 2000x clients and servers). But the bottom line is this - smart Web designers add 20-30% to their Web development bids when a client insists on having a cross browser/cross platform system. To make matters worse, when Microsoft becomes belligerent it can cause problems reminiscent of Murphy's Law.

Unfortunately, Redmond's hostilities towards the Web interface are beginning to emerge. For example, Redmond continues to resist providing an "Adhere_to_Web_Standards" toggle for BizTalk, Front Page, Visual Studio and other Web development applications (which would allow users to choose to target for Windows-only or broad cross platform usage with confidence). Also, Internet Explorer won't be updated until Longhorn (the next Windows version) is introduced, likely in 2006. After the Dot.Com bust this ignores an eon of new Web technology. And having lost a $500 million suit to Eolas Technologies and the University of California, Microsoft is rushing through an update to Internet Explorer which has as side effects major corrective work for web developers using Java applet, Flash and other plug-ins (the judgment is on appeal and re-examination of the patent is also taking place).

In the wake of this decision, (and the rapid but restricted update to IE), Microsoft declined to be interviewed. To summarize, Web developers may have to put on their old browser war helmets as Redmond trots out the Smart Client as an alternative to the Web interface.

IT Critical Success Factor: Interoperability

Acting as a counterweight to any "proprietary-only-for-best-performance" software vendors is the trend towards interoperability and application integration. For the past five years, this theme has been at the top of the list of Gartner's CIO Annual Survey and CIO Magazine's Strategic Review, usually in several variations. EAI-Enterprise Application Integration and BPR-Business Process Repurposing are the current calling cards. But whatever the name, organizations can ill-afford rip and replace efforts and must be able to capitalize on existing systems and extend them to their internal/external customers. To do so, a cross platform Web interface is considered a key activating ingredient.

But the Web Interface will continue to prosper only if it can be adapted to deliver integrated and interoperable systems. Fortunately, W3C, OASIS, OMG, ECMA and a host of other standards bodies are developing new standards that work well with the Web Interface. XML offers a suite of data interoperability tools, such as XSD-XML Schema Definition (for defining XML data layouts), XSLT-eXtensible Stylesheet Language Transformations (for formatting and translating to and from XML data resources), and XQuery (a query language that has been designed to be broadly applicable across a variety of XML data sources). These tools integrate well with relational databases and a variety of other data formats. XML is fast becoming the data interchange format of choice for a broad set of applications ranging from Microsoft's new InfoPath tool to enterprise application server/database systems from IBM, Oracle, Sybase, Sun and others. The foundation for greater data interoperability and integration is taking root.

This is important because XForms and SVG are being combined to deliver device independent forms display and processing capabilities. This penetrates to the heart of the argument against the Web interface - that it's getting long in tooth, and doesn't allow for rich media experiences on a variety of devices. XForms alone will address both cross platform and device independent forms processing issues. SVG-XML Scalable Vector Graphics allows for GUI-based buttons, calendars, calculators, etc. to be developed. Corel's Smart Graphics Studio is one example of this direction of development. Most importantly, HTTP/HTML/XHTML are the backbone transport mechanisms, making them client and server choice independent.

Rich Media Explosion

In addition to XForms and SVG (for automating rich media), XML also offers MathML-Markup (for Mathematical Formula and other special notation), SMIL 2-Synchronized Multimedia Integration Language (for video and multimedia control), and X3D (for 3D graphics modeling). But browser-based rich forms and media processing is not limited to XML solutions. Macromedia's Flash has prospered as multimedia delivery mechanism for four reasons:

  1. It claims 97% browser presence, partly because it's delivered as a default install on IE, Netscape and other major browsers.
  2. The Flash plug-in is able to compress and store fonts, animations, vector and bitmap graphics plus video and activating script code more efficiently than any other tool on the market.
  3. The Flash output format, .SWF, has been adopted by a host of 3rd party tool vendors such as Adobe, Corel, Ulead, ToonBoom and others.
  4. Flash runs natively in browsers on all versions of Windows, Mac, Linux plus a host of PDA and mobile devices. In short, Macromedia Flash is the closest software available to deliver Anytime, Anywhere, Any device output portability. The only other application that comes close is Adobe Acrobat, but it doesn't support animation, video, audio, nor is its on-board scripting as good as Flash.
However, Acrobat has some unique features, including on-board indexing, bookmarks, and search functions. In addition, Acrobat files can contain sophisticated authorization and permissions capabilities and allows reviews and commentary to be entered. Finally, Acrobat has expanded its encryption and compression capabilities. A sampling of other rich format plug-ins include: ViewPoint MetaStream, the Real Player, Apple QuickTime and Cult3D. All have deep market penetration and offer diverse rich media experiences frequently under user-scripted control.

However, rich media are going in three directions. Some, like Flash and Acrobat, increasingly use HTTP and HTML a transport mechanism to get their plug-in invoked; then access most browser screen handling operations directly. Macromedia's new Flex development system extends that further, using Web Service calls to server based processing. A second group of applications (such as SVG and Viewpoint), rely on close interaction through Javascript to set the stage; then they interact with the user (but still remain largely subservient to HTML controls - which Flash continues to support). Finally, a third approach uses the Web to invoke a standalone application on the client - Microsoft's new InfoPath and Real's RealOne.

The bottom line is that rich media is in a state of flux. It's not certain whether it will continue to be:

  1. Part of the Web interface (as in the case of Java applets and old style Flash animations).
  2. To supplant the interface and literally take over most of the browser interactions but still rely on HTTP/HTML transport and security mechanisms or to some combination, or…
  3. To rely on the browser for initial call and then handle their operations directly.
Surprisingly, the Web interface actually gains by having these developer choices available; for the reason that Web interface remains one of the simplest and easiest to develop with, while at the same time supporting robust enterprise caliber developments if necessary. In summary, since the Web interface is so easy to develop for and support, option 1 will remain a viable development choice for some time to come. In addition, options 2 and 3 still call on option 1 services.

current pageTo page 2

Created: June 2, 2003
Revised: November 12, 2003

URL: http://webreference.com/programming/javascript/j_s/column4/1