This article was originally published on

As a staunch hand coder, I have honestly never been a major fan of the Dreamweavers and UltraDevs of the world. They have never been fast enough, the code has never been clean enough or laid out correctly, and the features and menus have always been far too cluttered and hard to use. Dreamweaver MX has changed my mind about many (but not all) of these concerns. Although I still prefer to write code myself, Dreamweaver offers a viable alternative.

So whether you’re a consultant who has earned your stripes as a long-time coder or you’re more comfortable with design applications, Dreamweaver will easily meet most of your needs—and then some.

MX on the scene
Macromedia’s Dreamweaver has been a trusted standby for Web developers since 1997. The newest iteration lives up to that standard. And by making Dreamweaver part of the relatively new Studio MX, Macromedia clearly wants to provide a product that meets the needs of designers and developers.

Macromedia has gone to great lengths to bring its products together into a single powerful suite of applications and servers. ColdFusion MX, the cornerstone of the MX platform, is the latest version of the popular Web application programming language. Dreamweaver is still very programming-language agnostic, but the latest version has stepped up with ColdFusion Focus, so you can incorporate ColdFusion code easily into your HTML pages.

Studio MX integrates several of Macromedia’s applications, including Dreamweaver MX, Flash MX, Fireworks MX, Freehand 10, and ColdFusion MX. Because Dreamweaver MX works closely with other Studio MX applications, you can provide nearly seamless interaction between design, graphics creation, and back-end programming.

Previous versions of Dreamweaver offered only HTML support, mixed with some light ColdFusion and some ASP. MX adds custom ASP.NET server controls. Now, the .NET developer doesn’t need to worry about some of the complex plumbing behind certain ASP features and won’t need to move to a more expensive development environment. Dreamweaver comes with many Java objects, making programming J2EE applications easier. Java tag libraries and beans are also supported. In addition, Dreamweaver MX supports PHP, a relatively new language gaining popularity in the open source community; many objects and behaviors are available right out of the box.

Before the latest release, Macromedia offered two products, Dreamweaver and UltraDev. Now, it offers only MX. In fact, Macromedia consolidated several of its development tools into Dreamweaver MX, including ColdFusion Studio, UltraDev, and JRun Studio. Another tool, Homesite, is both gone and not gone. Homesite as it was in Version 5 is gone; Homesite+ now ships with Studio MX as an add-on application. The functionality is drastically scaled back, and many earlier features are no longer available.

Feature packed
Macromedia developed a lot of new features and functionalities for Dreamweaver MX, as well as improving many existing capabilities. New to the entire MX family is the concept of round trip development, although some Macromedia products already provided it to a degree. ColdFusion Studio and Homesite both had a button to launch Dreamweaver. Now, however, the idea has been taken a few steps further. Within Dreamweaver, image placeholders, such as the one shown in Figure A, can be used to mark a graphic. Then, Fireworks can launch to plug a graphic right into the desired spot.

Figure A
This is the Image Placeholder dialog box.

The same goes for Flash. A placeholder marks the spot, and then the Flash editor opens and puts the file in place. The placeholders can be used without any actual content, making it easy to drop them in place and move on. Dreamweaver can also run an embedded Flash movie in WYSIWYG mode, so you can see it right there in your application without deploying or uploading to a development server (Figure B). This feature is a great time-saver over previous versions of Dreamweaver.

Figure B
This is the Flash placeholder.

Wizards in Dreamweaver MX are much easier to use and understand. It is far simpler to use a wizard to create complex functionality in various languages (ASP, ASP.NET, ColdFusion, JSP, and PHP) without a lot of hand coding. An extensive and extendable tag library holds information on native and custom tags for easy use and reuse. The tag database is even in XML, so you can make any changes you need to in a text editor.

If you’re tired of having panels floating all over the place cluttering up your world, you’ll be glad to hear that MX offers collapsible panels that can be stacked within the same space. Anything that offers more workspace is always a plus.

For Windows or a Mac

Dreamweaver is available on both the Windows and Macintosh platforms. Make sure on either platform that you bring plenty of RAM. The minimum requirement to run is 96 MB of free RAM in the system.

So what did I NOT like?
My primary complaint (and a common grumbling on many of the ColdFusion lists I am a member of) is that Dreamweaver MX is slow. It’s slow to open files, slow to save them—in general, much of the app is just slow. And this compromises one of Dreamweaver’s best features: the split Code/WYSIWYG view mode. I find that having a split view is pretty handy to immediately see what I am doing. Except for one thing: In the time it takes to refresh the WYSIWYG view, I could have [Alt][Tab]bed over to a browser and hit [F5] to refresh it.

ColdFusion Studio 5 uses about 12 to 23 MB of system RAM. Dreamweaver MX uses 31 to 32 MB. Granted, Dreamweaver can do quite a bit more, but still, speed is an issue. It’s not a deal breaker, though; the loss of speed can be mitigated with a workstation that has a large amount of RAM.

And here’s another thing: Maybe, it’s just me, but Dreamweaver MX has a lot of buttons and tabs. All of them are important and have a purpose, but there are just so many of them, it gets distracting.

What did I like?
My like list is much longer than my dislike list. Here are a few of the features I especially liked.

The thing that impressed me the most was the CSS integration. I was immediately in love. That one feature was a “get out of jail free” card for three things I didn’t like. I hate having to remember styles, especially if there are a lot of them. Being able to type a tag and have style properties from my style sheet be in context was very impressive.

Along the same lines as the CSS integration is Dreamweaver’s XML Document Type Definition (DTD) integration. Having the DTD accessible via tag hints will make working with and writing XML much easier than it’s ever been before. The need for a separate editor to work with XML files is lessened with this feature.

Maintaining its forward thinking and momentum, Dreamweaver also offers full support for the XHTML markup language. You can convert your HTML to XHTML and generate fully compliant XHTML.

The site management was good too—much better than what I am used to with ColdFusion Studio. The site panel is easy to use and understand. The integration with VSS makes it every bit as good as the VSS integration in Studio. The wizard for creating a site is full of powerful options; I was amazed at the control I was afforded in creating my site.

Despite being slow to refresh after changes, the Code/WYSIWYG view (Figure C) is a great asset to Dreamweaver MX. Being able to see your tables and forms taking shape and seeing your <CFINCLUDE> tags in use takes a lot of the old “code, save/hop over to a browser, refresh” fun out of coding by hand, but it drastically reduces the effort required to get a page laid out properly.

Figure C
Watch the tables develop.

Overall impressions
On the whole, I am impressed with this latest version of Dreamweaver. In fact, it’s the only version to stay on my desktop after being installed. None of the previous versions could keep me interested in using them. Macromedia still needs to do some things to make the application a little more developer friendly. The slowness is a major detractor. We’re used to banging out code and refreshing a browser, and immediately seeing our work. Waiting for Dreamweaver to refresh can be agonizing. Still, I would have no problem recommending Dreamweaver MX to any of my colleagues. Although it lacks some things, it makes up for the shortcomings in many ways with great new and enhanced features.