Microsoft recently released Expression Web, which replaces the venerable FrontPage HTML editor and Web site design tool. Expression Web has come a long way from its FrontPage roots, but it still maintains much of the ease of use that allowed FrontPage to be used by so many new Web content creators. Here's a look at the highlights.
#1: Expression Web replaces FrontPage in Microsoft's lineup, but it fits into a different slot
Instead of being part of the Office suite, Expression Web is part of the new Expression suite. Expression is focused on Web designers and graphic artists. That being said, Expression Web does still have a few "FrontPage-isms," such as the way it handles a Web site as a logical unit, while also incorporating some of the widgets and function set of Visual Studio 2005.
#2: Unlike FrontPage, Expression Web purposely generates standard, valid HTML and CSS by default
Although it can behave in an "IE first, all else second" manner, the focus is solidly on standards. This is a welcome change from FrontPage, which was notorious for generating code that did not work well (if at all) in browsers other than Internet Explorer.
#3: Expression Web is capable of working with ASP.NET files, but it can't work with the code-behind files
All of the ASP.NET controls are configured using whatever attributes they expose. The ASP.NET pages that can be made within Expression Web fall under the category of tasks you would do in a basic, dynamic Web site. This is the most obvious sign that the tool is made with designers, not developers in mind. One piece of ASP.NET that it thankfully supports is the use of Master Pages. It is also capable of performing basic work with Data Sources and the related components that can be bound to them (Repeater, ASP.NET Web form components, etc.).
#4: The rest of the Expression suite covers the ground that Expression Web doesn't
Expression Web is focused purely on HTML and CSS. It does not provide even a basic image editor, for example. And as previously noted, its support for ASP.NET is limited in scope.
#5: Like FrontPage, Expression Web provides a good number of tools for reporting against the site that you're working on
For example, it has broken link searching, a site summary, and unlink file summary. While these tools may seem rather basic for a Web developer, they are invaluable for a Web designer, whose purpose is layout, not deeply technical code writing.
#6: One sign of the former Office integration is the use of the spell checker, something which will most likely never appear in Visual Studio
The spell checker shows some unusual behavior, which it does not show in other Office applications: Once a word has been "completed" (indicated by putting a space after it), further edits to that word that create a typo are not marked as such. This is a bizarre thing for it to do. The word to the wise would be don't use Expression Web as a content editor for too long.
#7: Expression Web contains three important and useful validators
This first one is a CSS validator, which checks the selected documents (or the entire site) to make sure that the CSS within it is used properly, such as tags that have undefined CSS classes. The second is an HTML validator, which can use either a set DTD or each document's declared DTD to verify that each page is valid and can verify the CSS against a particular version of the CSS standard. The third one is an accessibility validator, to ensure that the site meets standards for accessibility. This is a welcome piece, since Web designers frequently are ignorant of (or ignore) accessibility standards. These three items help make Expression Web an excellent tool for users who are more focused on layout and design and less inclined to think about or be knowledgeable about these topics.
#8: If you want the functionality of the Master Page system without using ASP.NET, Expression Web has a Dynamic Web Template system
This system allows you to create a pure HTML template and then create pages based upon it. When the template gets updated, so do the pages created from it. The pages may override the template as well, where needed, but the behavior in the Design view is to allow editing only in the sections of the page that the template has labeled as an Editable Region.
#9: Expression Web hooks into the Microsoft Script Editor, which provides debugging tools for client-side scripting
This is nice to have, but it would have been nice if the tools for working with the client-side scripting had been built into Expression Web. While the "separation of powers" makes sense at one level (after all, Expression Web is not meant for code writing), it is a ding in terms of convenience and ease of use.
This is a great way to try out the tool with no commitment, to see if it meets your needs. If you decide to purchase the full version, you don't need to reinstall it; you can easily update the product key. Also, Expression Web is now part of the tools available to MSDN members, reversing an initial decision not to make it available to them.
Justin James is the Lead Architect for Conigent.