Dreamweaver CS4: Still the Best Way to Spin Your Web(site)

Anyone who's serious about creating a website is probably already using Dreamweaver, whether it's an older version by Macromedia or one of the Creative Suite versions from Adobe. There are competing programs such as Microsoft's Front Page and Adobe's now discontinued GoLive, but there is simply nothing better than Dreamweaver if your intent is to produce a feature-rich, standards-compliant website. The CS4 version brings Dreamweaver users completely into the Adobe camp.

ALL ARTICLES IN THIS SERIES
I will add links to this sidebar as I complete reviews.
Introduction, Installation, and Bridge
Photoshop
InDesign and InCopy
Dreamweaver
Acrobat
Soundbooth and Audition
Adobe's video applications
Flash and Fireworks
Illustrator

Adobe acquired Macromedia in 2005 in an all-stock transaction valued at approximately $3.4 billion. At the time, Macromedia had the best Web development tool on the market and Adobe had previously acquired GoLive Systems. Adobe GoLive was an interesting program, but couldn't compete with Macromedia's Dreamweaver.

So Adobe did what it always seems to do: It bought the best application it could find and started integrating that application with its existing products. Four years ago, Adobe cited the "passion, creativity, and technology of two leading-edge companies" as it promised to "continue to drive innovations that help people and organizations everywhere communicate better." Promise kept.

Click any of the images here for a full-size view.

New and Improved in CS4

Click for a larger view.Possibly the most significant improvement in the latest version of Dreamweaver is Live View. In previous editions of the application, users could select a preview mode that would show (more or less) what the page would look like, but Javascript and other interactive elements were not rendered. Now Live View allows users to design a page almost as if they're working in a browser, yet still with immediate access to the code. Modify the code and the changes are immediately reflected in the rendered display.

Click for a larger view.Another absolutely huge improvement for anyone who wants access to embedded Javascript and CSS files is the enhanced and expanded Code View. By default, the Code View displays the page's source code, but a single mouse click allows editing of any first-level embedded style sheet or Javascript file. A new Code Navigator, which initially seems more an annoyance than a feature can be modified to pop up only when requested. Once you've done that, you'll be delighted by what it allows you to do.

The ability to integrate data from one HTML page in another page dynamically is another technological breakthrough for a high-level program such as Dreamweaver. Programmers have been able to accomplish these kinds of tasks for years, but now you don't need to be a programmer, just a reasonably intelligent human with a good idea.

Click for a larger view.Dreamweaver CS4 writes better CSS code than previous versions did. Dreamweaver has been a good performer when it comes to complying with standards established by the Worldwide Web Consortium (W3C), but has sometimes fallen slightly short of the goal. Code still isn't perfect, but it's far better than the code created by any of its competitors. How good is the code? I used the W3C's HTML Tidy on this page; it displayed 6 warnings and 2 informational messages. No errors. Of the 6 warnings, 1 my was own coding oversight (since fixed) and 5 referred to deficiencies in code provided by PayPal. Not one error by Dreamweaver.

Improved integration across the suite is another time and effort saver. Create an image in Photoshop and save the file. Then open a Dreamweaver file and place the PSD file. That's right — place the PSD in Dreamweaver even through everybody knows you can't place a PSD in a Web document! Then watch the excitement: Dreamweaver calls Photoshop and asks for a Web document (PNG, JPG, or GIF); Photoshop creates the Web document and Dreamweaver remembers where the image came from. If you later need to change the size of the image, you don't have to open Photoshop. Just change the size in Dreamweaver. Dreamweaver will again call on Photoshop and Photoshop will generate a new image in the proper size.
Not every feature from every application in the suite plays quite as well with its siblings as this, but most of them do. And I'll bet that the next version of the Creative Suite will be even more tightly integrated.

Adobe seems to be a good example of a company that's in the right place at the right time with the right teams to produce applications that will power the Information Age. Desktop, press, Web, audio, or video: Adobe is there.

Developers' Delights

In the old days (1999 or so) the Web was simple. HTML was king. Now there's the document object model (DOM) to master along with Javascript, cascading style sheets, XML, Flash, and Spry to name just a few of the major players. Assuming you want your website to look like something that was developed in the current century, you need to understand these technologies. Or you need an assistant who does.

Dreamweaver is that assistant. The HTML document object model is a hierarchical description of a Web document that allows Javascript and other languages to gain direct access to elements on the page so that these elements may be changed after the page has loaded in the visitor's browser. At its most basic, DOM is an easy concept; but, as with so many things, in practice it gets a bit more complicated.

Working with the DOM requires that you stick your fingers directly into the code, so Dreamweaver's Code View springs into action. In previous versions, you could type the DOM description and the rest of the supporting code to perform the intended action. But Dreamweaver provided no help and to see if your code would work, you'd need to open the page in a browser. Here's what DOM code looks like in a partial Javascript statement:

if (document.TCConnect.Validator.value.toUpperCase() != CapAnswer)

Click for a larger view.Definitions always start with "document", "TCConnect" is the name of a form (I could have used "forms[0]"), "Validator" is the name of a field, "value" refers to whatever is stored in the field, "toUpperCase()" is a function that converts the value to upper case. The entire line is part of an IF statement that compares the value the user entered to a value that the script is expecting. Pretty simple, basic stuff.

The problem is that I might forget what I called the form. Or I might forget the appropriate DOM term. In code view, all I need to do is start typing the DOM spec. As soon as I type "document.", Dreamweaver pops up code hints. This feature has been available for Javascript for several versions, but the DOM component is both new and most welcome.


MAKE NAMES SPECIFIC

Names should specify the use, not the style. I could have named the style "BlueBoldJustified" instead of "first", and you might think this would be preferable. After all, I might want blue bold justified text elsewhere in the document and if I had just one style name, I could use it wherever I wanted. The problem occurs when a decision is made to change all of the introductory paragraphs to orange italic left-justified text. "BlueBoldJustified" would no longer make sense as a tag name and, if this tag was in use elsewhere in the document, that text would change, too. So give each type of use its own name even if you end up defining several that are the same.

Similarly, hints and helps for cascading style sheet (CSS) code is a welcome addition. Dreamweaver product manager Scott Fegette says that creating CSS rules in previous versions of Dreamweaver was kind of a "black art". No more.

Click for a larger view.CS4 makes it much easier for those who want to write accurate, standards-compliant CSS to do so without having to surround themselves with stacks of 1000-page reference manuals. At the right is an image that shows the top of this page. I've selected the first paragraph, which has a CSS style of "first" applied.

Click for a larger view.If I need to make a change to this CSS style, I could Alt-click the specific selector I wanted to change and this would open the external CSS file with the cursor at the definition I had selected.

Code hints, such as those used for the document object model, HTML, and Javascript would appear. Or I could take the really easy way out and use a fill-in-the blanks form. Either way, the resulting code will be valid.

Extending the Application

Click for a larger view.Click for a larger view.Adobe products are extensible, meaning users can download extra code for them from Adobe's website and elsewhere, add the code to the application, and gain new features. Whether they are called plug-ins, actions, or extensions (some applications have more than one way to add functionality), they add features. Some are free, but many are not. Some are provided as shareware so that the user can try before buying. A single extension manager handles extensions for all Adobe applications but plug-ins and actions are usually managed by individual applications.

Adobe and Macromedia

Sometimes a merger goes well and sometimes it's more like a train wreck. Take the merger of the Pennsylvania and New York Central railroads for example: Train wreck, figuratively if not literally.

On the other hand, Adobe has made intelligent acquisitions over the years and is now in the enviable position of being able to provide applications for desktop publishing, professional publishing, Web development, Web content, Web management, audio production, and video production.

What impresses me so much about the Creative Suite 4 applications is the extent to which they are aware of each other.

5 CatsBottom Line: Dreamweaver knows what you want and delivers.

Dreamweaver is the HTML application we buy for use at the office. There is simply no website development tool at any price on the planet that provides more capabilities. If you're creating websites with something other than Dreamweaver, you're working too hard.
For more information, visit the Adobe Dreamweaver website.

Organize Your Work with Multiple Desktops on a Single Screen

I'm inclined to run applications full screen because that way they have my full attention. I switch constantly from one application to another and a friend in California tells me I'm crazy. I'm beginning to think he's right. Not about the being crazy part, but about running applications at less than full screen. But only if I can have multiple virtual desktops. Microsoft makes a utility that allows users to create up to 4 virtual desktops, but I stopped using it within a few days because it's entirely incompatible with Excel. Programmers in Sweden saved the day, though, with a similar (free) program that allows up to 9 desktops. (And that's far too many.)

Click for a larger view.Click for a larger view.I also found a Vista-like sidebar that gives me quick and easy access to information. That's why I'm running these applications at less than full-screen resolution. When I do that, I can keep en eye on the sidebar.

And, better still, I can set this up so that a flick of the wrist takes me to a different "screen".

Click for a larger view.Click for a larger view.You're seeing 4 virtual screens here. Screen 1 (upper left) contains the applications I used most often, including Firefox, Outlook, and Internet Explorer. At the top right is screen 2, where I have 4 telnet sessions open.

Screen 3 (left) shows a MySQL query browser and a command-line MySQL session.

The bottom-right image above is screen 4, which contains my home e-mail account and two other applications. If you expand any of the views to full size, you'll see that I've obscured some of the on-screen text; this is because of security and privacy concerns.

Too Many Screens

After using the 4-screen setup for a few days, I concluded that I had 1 screen too many. Applications that I often used together were on different screens and moving from one to the other required extra steps. Worse still, the screen I wanted always seemed to be on screen 3 if I was on screen 1 or on screen 2 if I was on screen 4.

I now have 3 screens because I often need to use the telnet sessions in conjunction with applications that were active on the first screen. Having two primary desktops allows me to flip back and forth between the primary uses. I maintain the 3rd desktop because I occasionally need to perform actions that are not related to activities on either of the two primary desktops. Perfect.

5 CatsBottom Line: Organize Your Work with a Free Desktop.

VirtuaWin is a free, open-source application that makes it easy to organize your work by desktop. The sole shortcoming is that you're required to use the same wallpaper on each desktop.
For more information, visit the VirtuaWin website at SourceForge.

What Are They Smoking in Redmond?

That's a question I sometimes ask myself when something as simple as a software update goes so miserably wrong that after installing an update more than a dozen times, I'm still being nagged by the operating system to install an update. You'd think that the smart guys and gals at Microsoft would be able to figure this out. You would be wrong.

Click for a larger view.I have Windows download updates but not install them because I want to see what's involved before I install it. A security update for Microsoft XML core services 4.0 showed up in December. I installed it. Later, a security update for Microsoft XML core services 4.0 showed up and I installed it. Then, a security update for Microsoft XML core services 4.0 showed up and I installed it. After that, a security update for Microsoft XML core services 4.0 showed up and I installed it. And then, a security update for Microsoft XML core services 4.0 showed up and I installed it. At some point, I realized that this was the same update. I had installed it "successfully" 11 times.

Click for a larger view.And still it was asking me to install it!

So I did some research and found that I should be able to fix the problem easily.

1. Click Start, click Run, type cmd, and then press ENTER.
2. At the command prompt, type ren %windir%\System32\msxml4.dll msxml4.old,
and then press ENTER.
Note After you press ENTER, you may receive the following error message: " Cannot find the file specified." Ignore this message, and go to step 3.
3. At the command prompt, type exit, and then press ENTER.
4. Visit the following Microsoft Web site: http://www.update.microsoft.com.
5. Download and then install the latest MSXML security update, which is described here: http://support.microsoft.com/kb/954430

Click for a larger view.That worked! Or so I thought. When I visited the Windows Update panel, I was told that all updates had been installed.

But that was too good to last.

Click for a larger view.Less than 24 hours later, Microsoft again started sending me reminders and displaying the status in the Tray. On the next "patch Tuesday", the icon again disappeared for a day or two. When it came back, I visited Windows Update, selected the update, and told Windows to hide it. After all, it had been successfully installed at least 20 times by then.

So far, I haven't seen it again.

Maybe it really is time to go with an Apple computer or a Linux machine.

Where is Your Software From?

If you need proof that software development is international, just look at what's on your computer. Much of what's there is from American companies, of course, but you might be surprised to find out how much of the code is written elsewhere. And you probably have some applications on your computer that are products of distant countries.

The Top Producers

The Gartner Group says that four countries are the primary sources of contract programming operations used by software development firms: India, Ireland, Canada, and Israel. Other countries that play a significant role include central and eastern European countries such as Romania, Ukraine, Belarus, Serbia, Czech Republic, Poland, Hungary, and Russia. And there are countries on the list that might surprise you: Argentina, Bolivia, Nepal, Vietnam, Sri Lanka, Philippines, and Egypt. Oddly, Australia isn't mentioned even though Australia is a significant force in open-source software, as is South Africa.

It's not all contract programming outside the US. Software development firms from around the world have some highly competitive products. Here are just a few examples:

The Bat (e-mail): This is the most powerful, most customizable e-mail application I've ever seen. In the past 10 years or so, it has progressed from being powerful but obtuse application to a program that has retained all of its powerful features but can now be mastered by most users. Still a small player in the US market, The Bat is popular in Europe. It is a product of RIT Labs, a small company in one of the smallest of the former states of the USSR, Moldova.

AVG Antivirus: Grisoft's antivirus application caught my attention several years ago when I was looking for a replacement for the Symantec product because Norton Antivirus slowed my computer to a crawl. AVG was a delight because it protected the computer without sinking the applications in quicksand. Grisoft is located in the Czech Republic.

Ubuntu Linux: This is the version of Linux that I recommend for anyone who wants to try the operating system. It completely insulates the user from some of the more challenging aspects of installing and maintaining Linux, including a dual-boot setup on a computer where the user wants to retain an existing installation of Windows. Ubuntu is from South Africa.

Even if you want to be an isolationist these days, it would be impossible. Just as all "domestic" car companies manufacture automobiles from parts made elsewhere and as "foreign" car companies manufacture automobiles in the United States from parts made here and elsewhere, the software on your computer may be foreign-written even if it carries the name of a US company.

How Not to Do It

At a party on Long Island, I spoke with the owner of a company that produced, in the early days of digital photography, an application that could stitch multiple images together to create a panorama. It was a US-based company that used contract programmers in Russia and other countries that had been part of the USSR.

The work was carefully segmented so that no one programmer would have enough information to recreate the program and the business owner was quite proud of this accomplishment. To me, the idea sounded like a recipe for failure.

The only people who had a full overview of the application were the product manager and members of the product management team, if the company had one. If a programmer in Minsk had a great idea that would affect the piece of the application being written in Izhevsk, he couldn't contact the programmer in Izhevsk. At best, he could make the suggestion to the product manager.

At worst, he might have a incentive not to make the suggestion because it could take work away from him and give it to the fellow in Izhevsk.

If the programmer did make the suggestion and if the program manager liked the suggestion, he might pass it along to the programmer in Izhevsk, but then there would be no discussion between the two programmers regarding implementation of the feature. This is not the way to build good software.

When Windows 2000 shipped, this company was unable to bring a product to market that would run on that operating system. Needless to say, the company no longer exists.

If you don't trust your programmers, you need to find a way to develop a trusting relationship or you need to employ other programmers. Trying to develop an application without allowing the programmers to communicate shackles the project from the outset.

Nerdly News

Macworld Faces Life After Apple

If you've always wanted to attend Macworld, you'd better act soon. It's too late for this year because the show was held January 4th through the 8th in San Francisco. The show was smaller this year than in the recent past and it's been only a West Coast show for several years. Adobe wasn't at the show this year. Apple won't be at the show next year. But it's been a good run and it outlasted shows such as PC Expo.

Still, the promoters must see the writing on the screen. If Macworld has a show in 2015, I'll be amazed. If it survives until 2013, even that would be a surprise.

On Tuesday, Apple unveiled new versions of Ilife and Iwork, an 17-inch MacBook Pro, and the availability of music without digital rights management from Itunes.

In a way, it's sad to see these mammoth shows go the way of the dinosaur, but they're too big and too expensive for regular users to attend. PC Expo, at its height, ran for 4 days and 4 nights in and around Javits Center and other venues in New York City. To see even half of the show was a week-long commitment.

But like so many other things, shows such as PC Expo and Macworld are being replaced by the Internet. The Consumer Electronics Show is another big event that's significantly smaller this year than in the past. Because of the specialized nature of the CES audience, that show may survive for a decade or more. And, although it's not a technology show per se, I have to wonder what this year's National Automobile Dealers Association show in New Orleans will look like.

A Follow-up Report on TBWW Changes

This isn't exactly news, nerdly or otherwise, but there was enough feedback from the changes introduced last week, that it seemed wise to acknowledge them. Fortunately, most of the responses were positive and only a few pointed out omissions or errors.

Some notes: