First Impressions of Expression Web 3

If only when installing on an old Windows version, the first unsatisfactory experience with Expression Web 3 comes even before you get to use it. Expression Web 3 requires Microsoft .NET Framework 3.5 SP1. This is clearly marked on the side of the product box, which puzzled me since the .NET Framework is readily available from Microsoft as a free download. The Expression Web installer actually does invite you to download the .NET Framework. Yes, but since it’s a free download, why not just supply it on the media? It’s not that the DVD is full, or anywhere near it. The days of supplying free prerequisities on the media are clearly long gone. Indeed, the day cannot be far away when all you get for buying software at a shop is permission to download the software over the Internet.

Slow Start From New Architecture

The first thing to notice when you finally do get to start Expression Web 3 is how very, very slow it is to start. Perhaps I’m just too used to having almost instant response from the software I bought contemporaneously with a new machine. Expression Web 3 is the first new software I have bought since. Still, even on a slower test machine, the original Expression Web is fully loaded to its untitled unsaved page within 3 seconds, but Expression Web 3 takes longer than that just to get as far as displaying its splash screen and can take a minute to get fully loaded.

Run the two versions under a debugger and it’s immediately clear why the new is so slow to start. The original Expression Web loads barely more than 50 DLLs for an initial memory use of about 10MB. Expression Web 3 loads nearly three times as many DLLs for an initial memory use of about 100MB. This is mostly an artefact of using the .NET Framework. Still, it must be asked: does so much greater an appetite bring a correspondingly great improvement in functionality?

Now It’s Dark

The second thing to notice, once Expression Web 3 has started, is the dark colour scheme. Large tracts of the screen are either black or varying shades of grey, but all of them dark. Some users will like it. Some will find it hideous. I find myself able to acknowledge it as looking good provided I increase the monitor’s brightness sufficiently far—but then all other programs are blindingly bright.

The Expression Web programmers can’t have been oblivious of the conflict between this scheme and all standard Windows colour schemes which have black text on white backgrounds for the most part and reverse this only for occasional effect. It’s one thing for programmers to search for a custom appearance to make their Windows program stand out, but to impose a scheme that will so obviously conflict with extant configurations and long-established practices is incredibly presumptuous.

Expression Web 3 SP1 adds a configurable setting which may be intended as some sort of response to complaints about the new colour scheme. Among the Application Options is one to “Use your current Windows color scheme”. Be warned that this means exactly what it says. Do not imagine that it means to make Expression Web 3 look like other Windows programs. With this option enabled, Expression Web 3 does use the colours of your current Windows colour scheme, but as a palette from which to choose with little regard for traditional usage. For instance, typical Windows programs that show a folder list, notably the Windows Explorer, use the Window colour as the Tree-View control’s background colour, but Expression Web 3 takes upon itself to use whatever is your Button Face colour.

Bugs in Basic Functionality

For me, the first thing to check once Expression Web 3 had started was how much I would now be spared the silliness such as I describe for the original Expression Web in several other pages beginning with Expression Web Bugs. The depressing answer is: hardly at all.

So, with the blank page already opened for me, I set about retrying my demonstrations of those bugs and testing whether some expected functionality might now have got implemented. Does Expression Web 3 let you rearrange rows or columns in a table by dragging and dropping? No, it has been basic functionality in Microsoft’s other formatted-text processors for nearly 20 years but not yet for Expression Web. If you think to define an element-based style so that all tables have borders by default, do you still lose pretty much all the user-interface support for tables? Yes. If you wonder whether a style you have applied to some word accidentally extends to the space that follows it, does the answer you get from the Apply Styles pane still depend on whether you select the space from left to right or right to left? Yes. Does the Format Painter yet copy styles as it did in FrontPage or still does in Word? No, it applies a new style that reproduces just a selection of CSS properties, and even then omits many obvious ones such as background colour. And on and on.

But wait, there’s more! It’s not enough that Expression Web 3 overlooks lots of old bugs and persists with old deficiencies. No, we have new glitches. For instance, on the initial page, write a line of text and copy it enough times so that the page acquires a vertical scrollbar. Now click on the scrollbar’s up arrow but hold the button down. In any Windows program, you would expect the text to keep scrolling. It does in the original Expression Web. It does in the new one’s Toolbox and Tag Properties panels. It does if you change to Code view—just not in Design view. If that’s by design, it’s a stupid design. If it’s not by design, how did it get missed? Don’t any of Microsoft’s pre-release testers ever scroll text this way? Don’t any of the Expression Web experts who write about this program find it remarkable that such basic user-interface functionality behaves so capriciously?

Crash Within Hours of Purchase

Resigned to using the program now it’s installed even though it plainly hasn’t improved in basic usability, and has arguably got worse, I set about configuring it to my preferences. My mistake, apparently, was that I closed the untitled page that the program had opened for me automatically but which I regarded as needless. It turns out that Expression Web 3 crashes when you enable Manual Style Application while no page is open. Obviously, this is not intended, but again I have to ask: how can it have gone unnoticed? Six mouse clicks from first execution is all you need to bring down Expression Web 3.


Though you won’t know about subsites from the User Guide on Expression Web’s Help menu, you may know the term from Expression Web’s context menu for folders, specifically where it offers to “Convert to Subsite”. That Expression Web’s user interface is chock full of elements that are entirely free of description in the User Guide is a story for another time, though one which I suspect has much to do with this program’s neglect of basic functionality. The subsite feature may just be a hangover from FrontPage’s subwebs. Yet subsites are very useful for maintaining large websites, especially ones that naturally have portions that don’t have much to do with one another. This website has six subsites.

In Expression Web 3, when you open a subsite, which it seems can be done only by double-clicking on it as a folder in its parent site, you get the subsite’s home page opened for you automatically. Moreover, if you had to authenticate for access to the parent site, you will be asked to authenticate again for the subsite. This is all new behaviour and it is extremely tedious, not least because it is surely unnecessary. Also new is that you can’t copy or move files between subsites. It used to be that you could drag from the folder tree in the window for one subsite and drop into the other. You can still drag, but when you go to drop, you discover that the Expression Web programmers haven’t provided any handling.

No Deadlock When Opening First Page

As good news, at least Microsoft has done something to avoid that Expression Web hangs when first opening a page from a site. Quick inspection confirms that Microsoft still has FPEDITAX.DLL breaking the usual rules about not doing very much in a DllMain function, but who am I that I should care? Whatever they’ve done, it seems I can safely let Expression Web 3 open my last-used website automatically—and that’s actually something to be happy about.

For better news than that, I will have to look beyond first impressions. That’s what everybody must do with this program, if only unconsciously, else how is it ever praised?