Google+

Skip to content

 
   Main News Page

Web Page Development Heavyweight Rematch

Posted:

Allaire's ColdFusion and Microsoft's Active Server Pages (ASP) are two high-end tools contesting for market share in the professional Web application development arena. Last December, we gave the championship belt to ASP's integrated development environment (IDE), Visual InterDev 1.0, on the strength of its superb database tools and its short learning curve. In the summer, Microsoft came out with Version 6.0 of Visual InterDev. Now this month's release of ColdFusion 4.0 sets the stage for a rematch in this battle of the heavyweights.

After working with both development environments, we found that Visual InterDev excels in management of the site development process and scripting. But ColdFusion Studio, Allaire's IDE for ColdFusion, has the edge over Visual InterDev with respect to HTML coding and basic database integration. This time, ColdFusion's improved coding tools and database connectivity features make it the overall winner.

ColdFusion and ASP consist of two primary parts that work together to produce server-parsed HTML— an IDE and an application server. Pages created by the IDE consist of a mixture of HTML and proprietary tags, or script code. When a user requests a page, a special application server evaluates the code and delivers the resulting HTML page to the user.

Both products let you create pages manually, using textual HTML tags, or visually, with a graphical user interface. In both cases, you can use third-party tools instead of the vendor's bundled IDE to build Web applications. For example, Elemental Software's Drumbeat provides a simple approach to creating ASPs, while NetObject's Fusion provides options for ColdFusion and ASP integration.

Development environments
The core aspect of ColdFusion Studio and Visual InterDev is their HTML editing capability. Both editors provide a passable WYSIWYG design mode based on Microsoft's DHTMLEdit component, which requires you to install Internet Explorer 4.01.

We suggest avoiding visual development mode. Code generated in both products' visual mode may not comply strictly with HTML specifications. Worse yet, Visual InterDev often outputs logical tags such as <STRONG> when you press a bolding button. Logical tags don't guarantee a particular visual representation such as bolding under different browsers.

Fortunately, if you hand-code a page and later edit it in a visual mode, both products preserve most formatting and style. This lets you use visual tools to make quick edits. Still, many developers will probably stick to code editing to produce pages. When it comes to coding, the two products look superficially similar. Both support raw text entry, navigation of a page's HTML tag tree and tag inspection dialogs that let you modify attributes.

ColdFusion Studio, based on Allaire's popular HomeSite editor, is one of the best HTML coding editors available. ColdFusion 4.0 supports on-the-fly typing validation and includes a validation tool to provide document type definition conformance and basic syntax checking. Unfortunately, ColdFusion's on-the-fly validator is far from perfect and catches only basic errors. For example, <H1 BOGUS="FALSE"> validates during on-the-fly validation, but it is caught by the validation tool.

Visual InterDev's coding editor, on the other hand, lacks any code validation capabilities. It is also missing many other basic HTML editing features that professional Web developers want, such as the simple ability to force tags to be entered in uppercase rather than lowercase.

Both products can display a tag tree that lets you inspect tag attributes and events, but ColdFusion Studio does the job better. In ColdFusion Studio you can group tag attributes alphabetically ascending or descending, categorized by type or categorized by version, and you can even add custom tags and attributes. Visual InterDev sorts tag properties in only basic ways and focuses on a Microsoft browser-specific view of HTML.

ColdFusion Studio supports a number of languages in addition to HTML and its own ColdFusion Markup Language, including Handheld Device Markup Language and Synchronized Multimedia Integration Language, which is used in RealMedia's G2 products. Visual InterDev lacks immediate support for other languages. While it is extensible, it's not easy to add support for new tags.

Adding tags and attributes to ColdFusion Studio is extremely easy for even a casual user via Visual Tool Markup Language (VTML), which provides facilities to include tag-editing dialogs. The ability to add new languages makes it easy to add Extensible Markup Language (XML) capabilities to ColdFusion Studio. Visual InterDev does not easily support the addition of new tag sets or XML vocabularies but can be extended using an associated software development kit.

Both products now support Cascading Style Sheets (CSS), although neither does so particularly well. ColdFusion Studio's CSS editor is a separate program, and moving between it and Studio is clumsy. Visual InterDev is integrated slightly better and provides many style-sheet properties directly within its tag inspector.

Unlike ColdFusion Studio, Visual InterDev provides themes and layouts, leveraging both CSS and HTML to apply a consistent look to many pages. While this feature is well-designed, it seems more appropriate for a mass-market Web design application, such as FrontPage; the high-end site designers who are likely to use Visual InterDev may disdain such features as fluff.

Because of its flexibility in tag editing, its attention to coding details and cross-browser HTML support, ColdFusion Studio is better at raw HTML page editing, but Visual InterDev excels at site development and programming. Visual InterDev provides powerful site diagramming and link management tools. We found it easy to visually locate link problems and build site structure with Visual InterDev. ColdFusion's link management utility works only on a page-by-page basis, and ColdFusion lacks site diagramming.

Both tools provide support for team-based source code control for site development using Microsoft's Visual Source Safe. Both products also use the concept of a project to control groups of files and to allow easy deployment to staging and production servers. One particularly helpful feature of Visual InterDev is its support for local and remote development of entire sites. While you could accomplish similar tasks with ColdFusion Studio, it would require manually downloading sites and using source code control to synchronize files. Visual InterDev also includes a task list manager to store to-do information that may be useful when building a complex site.

Scripting vs. tagging
Philosophically, ColdFusion Server and Active Server Pages take different approaches to creating dynamic content, though both can be used to create dynamic Web pages from a mixture of HTML and proprietary tags or scripting code.

ColdFusion uses a set of proprietary tags, such as <CFQUERY>, to create dynamic pages. In the past, developers criticized ColdFusion because its tagging approach, in which programming structures are enclosed in HTML-style tags, was clumsy for certain tasks.

Rather than proprietary tags, Active Server Pages uses scripts in a Web page - generally VBScript or Microsoft's variant of JavaScript, called Jscript. That gives Active Server Pages the flexibility inherent in a full-fledged scripting language. On the downside, script code is mixed with HTML tags, which can be messy to maintain. Often, a lot of VBScript is required to perform tasks for which ColdFusion provides a single proprietary set of tags.

ColdFusion 4.0 offers new scripting capabilities using the <CFSCRIPT> tag. Additionally, ColdFusion Markup Language has been extended to provide associated arrays, case and switch statements and error handling, which make coding applications less clumsy than before. In short, with ColdFusion 4.0, Allaire provides the best of both worlds— easy, tag-oriented dynamic pages for simple tasks and script use when more complex coding is required.

Visual InterDev has tried to combat complexity by forgoing proprietary tags altogether and adding some simple drag-and-drop components, called design time controls. With these, binding data items to database connectivity, building site navigation and adding logic to form controls is fairly straightforward, though the underlying complexity is significant, particularly when you're trying to integrate a database with a Web site.

For example, it took us only two custom tags and a SQL statement to develop a simple phone directory application in ColdFusion. With Visual InterDev, we generated nearly 100 lines of ASP code, not counting all the included files referenced. This may not seem to matter because both programs generate their own code, until you consider that someone is going to have to extend or maintain the generated code.

In many ways, Visual InterDev is more of a traditional programmer's tool than ColdFusion Studio. It has significant support for building JavaScript- and VBScript-based pages and provides a feature called IntelliSense, which can complete script statements and provide syntax tips. The product also provides a script-outline feature that makes it easy to modify client- and server-side objects. In this sense, Visual InterDev embraces the document object model style of DHTML much more than does ColdFusion Studio.

Visual InterDev and ColdFusion Studio now support complex debugging as well as powerful SQL query-building tools to ease database integration. This is a welcome improvement for Web developers struggling to debug applications in which half the logic runs on the server and the other half in the browser.

Serving the applications
As for the application servers themselves, ColdFusion Server now is ahead of ASP, thanks primarily to performance improvements and reliability features such as clustering. Allaire's new version of the application server addresses performance and scalability issues on almost every level. To improve database access speed, the Enterprise version of the ColdFusion server now supports not only Open Database Connectivity database connections, but also OLE databases and native drivers for Oracle and Sybase, as well as stored procedures.

To address scalability, ColdFusion's Enterprise Edition supports server load balancing using Bright Tiger Technologies' ClusterCATS software, which ships as part of the product. Setting up a ColdFusion cluster is simple. An update for the application server, due in January, should provide failover support as well.

Wrap-up
You don't need to choose between ASP and ColdFusion. You can use both products on a single site, although you can't run them on the same page. ASP is an NT-centric environment (although ChiliSoft provides support for ASP on other servers), while ColdFusion Server runs on NT, Solaris and soon, Linux.

The best approach may be to exploit the strengths of each product. Visual InterDev provides numerous site management features that ColdFusion Studio lacks. ColdFusion excels at database connectivity, and ColdFusion Studio is hands-down the better tag editor. Fortunately, you can use ColdFusion Studio as the default editor within the Visual InterDev environment.

For many, the choice of one technology or another boils down to familiarity or personal preference. Internet-oriented developers coming from an HTML tagging environment will find ColdFusion Studio more comfortable than Visual InterDev. Visual Basic programmers building Microsoft-specific intranet applications will find Visual InterDev and ASP more familiar. While it used to run a strong second, Allaire's new release puts ColdFusion Server and ColdFusion Studio ahead of ASP and Visual InterDev in nearly all respects.

Originally published on Network World, Published: November 23, 1998.

About PINT

Headquartered in San Diego since 1994, PINT Inc. (http://www.pint.com ) is a nationally recognized interactive Web agency providing web strategy, interactive design, development, user experience, analytics, search marketing, and optimization to global companies and institutions. PINT founder Thomas Powell is the author of eleven best-selling industry textbooks on HTML and Web design. Clients include San Diego Chargers, ViewSonic, Hewlett-Packard, Allergan, Biogen Idec, UCSD, Linksys, Scripps Health, and USC. For updates and information about PINT and the Web, please subscribe to the PINT blog at http://blog.pint.com and follow PINT on Twitter at http://twitter.com/PINTSD