A few days ago I downloaded Microsoft's Web Expression Designer. I'd seen a few previews of this tool at PDC and then during some recent Microsoft events and I was fairly excited by what I saw at the time. So I was excited to try out the new designer and see if it holds up to the expectations set by those demos I saw.
My main Web site I run here, is mostly static content and I've been using FrontPage as my main mechanism for managing site. Yeah, yeah I know FrontPage is pretty lame, but at the time when I started down this road FrontPage 2003 was just getting out and it was actually a nice tool at the time. Well, as so many things Microsoft neglected FrontPage and didn't update it to support recent standards etc.
I never used much of FrontPage's extended features – I basically used it to manage my site content, the FTP client and basic HTML editing with plain editing features. No bots, no wizard driven templates and all that crap, just plain content. And FrontPage actually works fairly well for that. The thing I actually like the most about FrontPage is that the WYWSIWYG editor is a pretty damn accurate representation of what you're going to see in the browser – something that no other product seems to even come close to. Alas, FrontPage's HTML editing and markup may not be quite up to standards and to the latest design but for my modest needs it actually worked well and provided an excellent way to deal with the content. Standards be damned the content worked across a wide range of browsers.
Anyway I've been wanting to get away from FP for sometime as it's getting long in the tooth, and I've thought on a number of occasions to start rebuilding the site from scratch. But if you're building a site that is mostly content yet you still want to use ASP.NET functionality in the site, designing gets to be kind of a pain. Using Visual Studio to manage a largish Web site is not really an option both from the lack of the designer and the content management perspective.
So I was stoked to see Expression Web Designer finally come out and offer some hope to a better alternative that can mesh better between designer and site management needs and the need to use developer tools like ASP.NET .
My first impression is that it's an impressive tool, albeit pretty unstable at this point. But the functionality I see is that much of FrontPage's site management aspects have been left intact. If you've used FrontPage before you'll feel right at home. If not, the UI is pretty straight forward and in fact much more usable than FrontPage ever was.
But what really sticks out is the editing functionality. The editor is clean and much, much faster than FrontPage ever was both at the project level as well as at the document level. Opening a large document and working in split view is actually quite workable now.
Support for CSS is baked in everywhere. There's a Apply Styles section that lets you design and pick styles to select for content. This is an obvious place to keep style info, so it's easily accessible and reusable. But even better if you apply formatting against a piece of text Expression will generate a new style for you and embed it into the document. So in a way it's forcing you to think about making specific style changes and attempting to coerce you to create global styles for re-use. The way this works is that it marks up the text and creates a new style in source. The style is marked as a hyperlink you can jump to and then lets you modify the style. Now this is a UI that's thinking ahead a little! I'm guilty of hand adjusting styles inline frequently, but if the editor makes it easy for me to create style classes, hell yeah – I'll create a class I can reuse. The main reason this rarely happens otherwise is that it's a royal PITA to create styles. So even though this is a kind of heavy handed approach I actually think this is a great idea. Note that if you really want an inline style you can of course edit the HTML directly and do that as well.
One thing that really sticks out is speed – the editor is fast. You can flip back and forth between design and code views instantly and even split view is quick. Reportedly Expression doesn't use the IE control, but a new designer built from the ground up. I'm sure we'll see more of it in the future of Visual Studio. Man, I hope they build a control out of that designer and give every day applications a decent HTML Editing interface (yeah right, fat chance).
I threw a bunch of different style of pages at Expressions and it handled everything static well enough. Unforutnately I can't say I had much luck with ASP.NET related content. I opened a few ASP.NET pages that contained third party controls (my own) and the designer immediately blew up.
I also had problems opening sub webs underneath a root directory. Whenever I opened a subweb the designer only opened the root Web which is frustrating. The only way I could get the subweb to open is to physically move it to a different path.
There were also lots of little problems that typically would end up in crashes. Open a Web through a Web Url (http://localhost) this site would open just fine, but on a save it would crash. If I open through file, Expression has issues dealing with root paths. So if you open a site in c:\westwind and you're in c:\westwind\HelpBuilder and have a Url like /westwind.css, it doesn't find that. Easily fixed with relative paths, but the editor should be smart enough to figure that out based on the 'site' information.
So it's a somewhat mixed bag, but for a first Impression Expression makes a good one. In fact, I think I can use it to replace FrontPage almost immediately on this end since it has the minimal set of features that I use in FrontPage in the first place.
I hope in the next drop, there will be better ASP.NET support – the current crashing is a problem for my moving a number of the site pages over to ASP.NET from the old ASP pages.