Last year I worked on a project that required me to use Dreamweaver (DW), something I rarely do. Where in the past my work with DW has been light, this time it was full-bore, head-down, just like it would be for any normal project I did using Expression Web (EW), my primary Web development tool.
It was an enlightening experience. The key thing I learned what that for the type of work I do and my personal development style, DW is the wrong product for me. I am more productive with EW.
Let me say at the outset that my conclusion is on the margins. Had certain things been different, I could see myself finding DW slightly better. But the things for which DW is strongest have little bearing on my work and thus offer no advantage. I also think that DW's margin would only apply to a minority of Web developers; I don't think that minority is very big.
Perhaps the most interesting part of my "experiment" was finding productivity benefits in DW and then discovering that EW had the equivalent. For example, DW has a keyboard shortcut to publish a page, which I found convenient. What I didn't know that was EW had the same shortcut. DW made my EW work even more productive!
In the work I did from whence these observations come, I used Dreamweaver CS5.5 and Expression Web 4 SP2 (my licensed, paid copy). I have since used both the licensed and free versions of EW and found no differences that might affect my observations.
I find the visual UI more awkward in DW, preferring Microsoft's pre-flatland UI style.
This is probably because FrontPage and at first the Expression family were seen as members of the Microsoft Office family, where the UI has been honed for a very long time. Even when EW was converted to a Windows Presentation Foundation (WPF) app, the style remained reminiscent of Office. In fact, a cacophony of complaints arose when WPF first appeared because toolbars could not be customized and Microsoft eventually responded by putting some customization back in.
You would be right to say that with so much more experience with EW I would naturally gravitate to something I knew well. I tried to compensate for that by arranging DW panels to mimic the appearance of EW so that things would be more or less where I expected them and by really focusing on learning shortcuts and best practices for DW. It was a deep dive. When I came up for air, I still thought it was no contest. EW is smoother and easier to use than DW.
Good UI and the productivity it brings is a dramatic advantage.
I don't need just an HTML editor, I need a tool that lets me manage a Web site as a single project. This is one place my deep dive into DW was probably a bit shallower, but given the way I was cursing at DW in this regard, I feel confident in my conclusion that EW is the better project manager. Don't get me wrong - EW isn't great. But it is good enough to keep me away from the dozens of lesser Web editing tools out there that have no or limited project management. That doesn't say much for DW.
Over the course of EW's development, Microsoft put a huge amount of effort into improving its publishing capabilities. I know, because I helped debug them. FTP got much better and much, much faster. Nonetheless, EW FTP publishing suffers from a number of problems. I know Microsoft was working on this when EW was cancelled but that's moot; the fact is that EW publishing can't match the simplicity of FrontPage's publishing system, aided and abetted by the long-abandoned FrontPage Server Extensions (FPSE).
Dreamweaver publishing is technically better, not hindered by all the stupid problems in EW.
However, the UI for EW publishing is definitely better, much smoother. Despite the things that don't always work, I'd rather use it.
Syntax Direction - PHP
PHP is my chosen server-side programming language and, despite EW's improvements with PHP, it is DW that has full syntax direction for the PHP language. EW is limited to PHP's functions, which is a huge help, but DW helps me find things like missing parentheses and semicolons, those two omissions representing my biggest typographical errors.
As helpful and productive as it would be to get better PHP syntax support by using DW, by itself it is not quite enough to sway me. Why? See the next section.
Syntax Direction - Everything Else
I like EW better, but it's really a toss up.
Dynamic Web Templates
I use Dynamic Web Templates (DWT). I'll get some hoots for such an admission, especially given that I build sites based on server-side scripting. Even with that, some kind of template system is needed. DWTs are simple and relatively efficient.
Both EW and DW support DWTs. Way back, both EW and DW had exactly the same template strategy, but Macromedia/Adobe advanced the state of the art a little bit, eventually stepping away from compatibility with any other tool. Very long ago, there was actually an organization (DWTIG) with the charter to encourage interchangeability of DWTs. It didn't take.
The EW approach to DWTs remains unchanged since FrontPage 2003, wherein the feature was first introduced. I like it and it works well. I like the DW version less. But, again, this is probably a toss up. If I was using DW exclusively I'd adapt.
Let me add one thing in defense of my use of DWTs. DWTs are clearly intended for static sites. The critique of DWTs has to do what happens when the page count rises. A change to the DWT means that every page attached to the template also gets changed and that means every page must then be uploaded. If the site is big, three or four hundred pages, upload times could be annoyingly long. (I helped a client with that sort of site and she did not want to use a DWT for just that reason, even though it would have helped in other respects.)
The annoyance of uploading only occurs, and this is the key point, when the template contains content that constantly changes, such as marketing material in a sidebar. My templates do not contain that sort of content. When it is necessary, they have PHP includes that load the content. Thus I only change a site's DWT when a client asks me to make a structural or design change to their site, not a regular occurrence. In addition, even for rich sites the page count is low because a single page can handle multiple functions. Very rarely do sites get near 100 pages; the average is something like 40. Even when I must modify the template, the impact is modest.
EW is free. Of course, it's no longer supported, won't get any bugs fixed, and won't get any better. Nonetheless, EW is free. (Did I mention that EW is free?)
I believe it may still be possible to buy Dreamweaver CS6 as a standalone program, in which case one would pay $200. Dreamweaver is now part of Adobe's Creative Cloud subscription service. It is part of the standard plan at $50 per month or can be obtained in a single-app plan for $20/mo or $240/year.
In short, DW is expensive. Too expensive, as far as I'm concerned. My budget allows for $100 per year for this tool and DW ain't close.
Conclusions, and My Future
EW is a better tool, overall, than DW. I'll continue to use it, happily.
But (and it's a big but) I write PHP. EW is okay with PHP, not great. I need great. I need the tool helping me to write syntax-correct code the first time; there's just no reason in the world for me to accept error trips because I missed a semicolon or closing parenthesis.
I have my eye set on PHPStorm, from JetBrains. The tool regularly gets rave reviews, is aggressively developed, and within my little network of developers is highly regarded. It will be a big jump for me for two reasons. First, no DWTs. I'll have to use or develop some other templating mechanism - I need something. Second, everyone tells me that PHPStorm's project management is fine, but I don't see that in the marketing materials from JetBrains. I'm going to have to buy the tool and start experimenting.
PHPStorm fits my budget perfectly. As a lone developer paying the cost out of my own pocket, the initial cost is $100 and upgrades are $50 (developer seats for companies are $200 with upgrades at $130). JetBrains is a Czech company; while I would prefer to buy American, I also prefer to make sensible, practical decisions.
Before I make a final decision about PHPStorm, I will also investigate one other avenue. Several companies make extensions for Microsoft Visual Studio, VS.PHP and PHP Tools for Visual Studio among them. Both these tools are about the same price as PHPStorm. Their advantage is that they work within the Microsoft environment, which I generally like. Their disadvantage is that I don't think they compete on a feature by feature basis with PHPStorm. I can't ignore them, though. I may have to buy one of them just to be able to do a full comparison, a cheap investment if it helps me make the right decision.
If EW development had continued at Microsoft, I would probably use it forever. Sadly, it's time to move on. I just won't be moving on to Dreamweaver.