SharePoint Designer and Expression Web – Separated at Birth
As part of Microsoft’s making SharePoint Designer available as a free download, they also announced a rough roadmap for its future, as well as that of another tool, Expression Web. You might wonder why Expression Web was designated a successor (from a licensing standpoint), when it doesn’t have any ability to modify SharePoint sites.
To help you understand, I’m going to give you a little bit of history of these two tools, in the form of a "bedtime story." Then I’ll talk about some of their similarities and differences, as well some of what I see as the ramifications of this change.
Once Upon a Time…
Once upon a time, when the Web was new, and the Internet was still wet behind the ears, there was born a little web design tool called FrontPage. FrontPage was blessed with many talents, from page editing, to web site management.
Yet in its youth, FrontPage also had many bad habits. It liked to do certain things its own way, and tended to enforce its will on unsuspecting developers. Often, the result was broken script. The developers did not find this habit endearing, and shunned FrontPage.
As FrontPage grew up, it matured and learned many new skills. It made friends with a new product called SharePoint. It also gradually put away its childhood arrogance, and learned the value of industry standards. Yet try as it might, its youthful indiscretions continued to haunt it, and it could not earn the respect of the community at large.
One fateful evening, FrontPage found itself at a crossroads, and was torn. One way led to greater integration with SharePoint, while the other promised great adventures with the industry standards. "Perhaps," it thought, "Perhaps I am trying too hard to be all things to all people." Yet it liked both its association with SharePoint, as well as its new-found friendship with the Standards. It gazed into the heavens and made a wish upon a falling star.
"I wish people could forget about my past, and see me as the wonderful tool I have become, both for designing SharePoint sites and expressing web standards!"
Then FrontPage fell into a deep, sound, sleep. Sometime during the night, a strange and wondrous thing had happened. When morning came, FrontPage had disappeared, and in its place were two new children – SharePoint Designer, and Expression Web. At first glance, while neither looked quite like FrontPage, they were still hard to tell apart. Both had stylish modern clothes, and found an understanding of CSS and ASP.NET came as naturally as breathing.
Yet there were differences. When SharePoint Designer wanted to talk about SharePoint, Expression Web just threw up its hands and wouldn’t hear a word of it. On the other hand, when Expression Web tried to strike up a conversation about the joys of PHP, SharePoint Designer could only tilt its head and say "Huh?"
SharePoint Designer also found it easier to remember its old life as FrontPage. Expression Web was resistant, and needed some prodding to deal with that part of its past.
And so each began a separate journey, taking their respective paths from the crossroads.
That was Then, This is Now
OK, so now you know that SharePoint Designer and Expression Web are both descendents of Microsoft FrontPage. In many ways, they are very similar. How similar? Here are both of them side-by-side:
They share all of the same core page editing features. The same CSS handling, ASP.NET support, IntelliSense code completion, etc.. They both also share the ability to work with local XML and external databases on non-SharePoint sites. So, where are they different?
First and foremost, a key differentiator is SharePoint support. As implied in the fable, SharePoint Designer is fully aware of SharePoint and most of its features. Expression Web, on the other hand, will not even open a site based on SharePoint, whether you are using SharePoint features or not. If you attempt to do so, it responds with this alert:
Second, SharePoint Designer has more (and more obvious) support for "legacy" FrontPage functionality. In some ways, this follows from the previous point, as SharePoint is derived (at least conceptually) from the FrontPage Server Extensions. Expression Web suppresses any direct access to extensions based functionality. For example, the Insert menu in SharePoint Designer offers an option to insert a "Web Component", which is not present in Expression Web. The choices offered in the resulting dialog are mostly FrontPage pieces.
If you open a site which already contains FrontPage functionality, such as Shared Borders or Navigation/Link bars, SharePoint Designer lets you easily select editing options through the context menu, while Expression Web does not.
The first image above is from SharePoint Designer. Note the Shared Border and Link Bar properties options. See how they do not appear in the second image, which is the same page opened in Expression Web.
So it seems that Expression Web is just a subset of SharePoint Designer’s functionality. But is that the case? Doesn’t Expression Web have something to call its own?
It turns out that it does. Because Expression Web was intended to help you create sophisticated, standards-based web sites, it includes some templates for you to start with that SharePoint Designer does not. In version 1 of Expression Web, that was about it.
With Version 2, which has been out for a few months now, Expression Web added direct support for PHP.
Also notice the Media option. Expression Web now also supports the direct insertion and manipulation of Flash, Silverlight, and other media files. SharePoint Designer’s support for media is not as well integrated, and it doesn’t support PHP at all.
One other big difference between SharePoint Designer and Expression Web is in their online help systems. Not so much the system itself, but the content. SharePoint Designer provides a great deal of help on topics related to manipulating SharePoint Sites, and features such as Workflow and layouts pages, but almost nothing about how to use the basic editing features of the product. Expression Web’s help, on the other hand, includes all of the basic features, as well as PHP.
Where Do We Go From Here?
So, SharePoint Designer and Expression Web are both descendents of FrontPage, and they have roughly equivalent, if differently focused, feature sets. SharePoint Designer is now free for the download, and Expression Web is the designated successor as far as Software Assurance licenses are concerned. You still can’t use Expression Web to manipulate SharePoint Sites, so where does that leave us? What is next?
Microsoft has released a limited roadmap of the future of these products. They have said:
- SharePoint Designer is free, but development has not stopped. It will remain free when the next version comes out, simultaneously with the next version of SharePoint.
- SharePoint support will be added to Expression Web. (When? v.Next?)
- Expression Web will continue to include tight integration both with the other Expression series and with Visual Studio.
- Visual Studio is getting a big dose of SharePoint Friendliness in the next version.
- Expression will be "where the action is" with regard to Silverlight integration.
Granted, there isn’t a lot of detail there. But I suspect SharePoint Designer and Expression Web will continue to be very similar to each other – possibly even more so than they are now – for a long time to come.