How Macromedia Missed the ASP.NET 2.0 Boat

Over the past couple of weeks, I received a number of e-mails from visitors to this web site, asking me about what I use for development, and about my opinion on Macromedia's Dreamweaver 8 and ASP.NET integration, be it version 1.x or 2.0. Considering the fact I wrote books about both Dreamweaver and ASP.NET 2.0, that question makes sense.

In the past I have received similar questions. People asked me how I used Dreamweaver, and how I used it in combination with server side techniques like ASP and ASP.NET.

With ASP.NET1.x, in combination with Visual Studio .NET 2003, the answer was simple. The visual designer of VS.NET 2003 sucks, and it sucks big time. It's the clean coder's nightmare. Other than early editions of Front Page and Visual Interdev, I don't think I have seen a code editor that was capable of screwing up code so bad. I could have a nicely formatted, XHTML compatible HTML page, and by simply switching to Design View and adding a few controls, I could end up with the biggest mess you've ever seen. Capitalized tags all over the place, expanded CSS properties, removed or added tags and attributes and so on. All in all, not a pleasant thing to use.

So, my answer to these questions was always: "For static web sites, I do everything in Dreamweaver. For dynamic web sites, I do all my design in Dreamweaver and then move it to VS.NET. I use Dreamweaver to create the initial HTML, use its great CSS features to visually design the page, setup the page structure and external CSS files and I even use it to do some quick validation of the page." As soon my initial design was done, I'd copy the code into Visual Studio's code view window, and made sure I never hit Design View again (how ironic, for a product with such a name). When I needed to add controls to the page, I'd do so in a separate page and then manually copied the controls and their code behind control declarations from the temp page in my final page. Again, not a pleasant way to approach things, but roughly the only way that worked for me.

In many ways, Visual Studio is a great development tool. I love its code behind support, its great IDE functionality and, of course, Intelli Sense. I remember from the early .NET days (and even VB 6 days), that I learned a lot from Intelli Sense. In fact, I still do. Being able to see what methods and properties an object has, together with integrated and context sensitive help is, IMO, one of the best tools to learn a new environment / technology / language. Macromedia has tried to put some intelli sense in Dreamweaver with their code completion feature but, IMO, failed miserably while trying. For example, in an ASP page, all you get access to is a few methods and properties of the well known ASP objects like Response and Request. But that's the stuff I can easily remember. What I need is to see a list of operations of a COM object I have never seen before, for example. What I need is the "Go To Definition" option to jump from important spot to another. Granted, it does this for HTML and CSS, and it does it well, but that's it.

But, great as a developer's tool VS.NET 2003 is, it misses a few important features that Dreamweaver has had for a long time. Most importantly: Dreamweaver doesn't touch your code (except for a few well known issues with locked regions, recordsets and templates and Dreamweaver undoing a whole lot of your changes). You can easily switch between design and code view (even have the two open at the same time), drag and drop to your heart's content and Dreamweaver wouldn't insert a misplaced character anywhere. In addition to that, I have always loved its support for clean HTML, CSS and the way it used property panels to visually change code. Also, the code completion for HTML and CSS saved me from typing millions of characters, and remembering tag specific options. For beginners in coding, it also has reasonable support for building database driven web sites (that's where my two books on Dreamweaver are about).

So, what to choose. Dreamweaver supplied the looks of web pages, while Visual Studio .NET 2003 supplied the brains (somehow that reminds me of the ancient Pet Shop Boys song...) Since it was impossible to choose, I didn't. Looks in Dreamweaver, Brains in Visual Studio .NET 2003. Things were easy back then....

With the advent of ASP.NET 2.0, things could have changed. Being much more tag driven than previous versions of ASP.NET, Dreamweaver could have added support for it. Click click click and there you have it: Instant Results. Unfortunately, this is not the case. I remember from the time between Dreamweaver MX 2004 and Dreamweaver 8, that a lot of people asked for support for ASP.NET. MX 2004 said it had support for ASP.NET, but IMO, it never had. Sure, you could add a TextBox control and make it runat="server". And sure, you could manually add a whole lot of other stuff that you'd use in ASP.NET, but it never felt like an IDE, where everything is supposed to be integrated. Now, I can imagine that it was hard to add support for ASP.NET 1 to Dreamweaver MX. Things were new back then and it was unknown where .NET would go. However, after ASP.NET 1 was released, it was clear that it was a technology that was here to stay.

At this point, Macromedia missed the boat if you ask me. Knowing that ASP.NET 2.0 was coming and knowing how it would look like (alphas and betas have been around for years), they should have made Dreamweaver 8 ASP.NET 2 compatible. They had a great chance of building a tool that would have suited both developers with the brains and designers with the looks (nothing personal here, BTW).... But, they didn't. Support for ASP.NET is still non-existent in the latest version of Dreamweaver. Even worse (from a Macromedia perspective, not from a coder's perspective), Microsoft came with Visual Studio 2005 and Visual Web Developer. A killer tool, both for the brains and the looks. It has brilliant features, like drag and drop data source controls, code behind, Intelli Sense, integrated database access, a fully (as in fully fully) customizable IDE, smart tasks, design time support for Master Pages (albeit it somewhat limited), import and export options of your settings, intelligent and context sensitive help, deep integration with source control tools, user specific formatting rules for HTML, XML, ASP.NET code and programming languages, and a lot more. But most importantly: it came out of the gray nerdy corner, took of its jam-jar glasses and got the looks: It has improved design time support that allows you see what you're doing. It now helps you design your pages. It knows its CSS, understands the differences between XHTML transitional pages and quirks mode pages, helps you with the differences between the two, and never touches your code, even when you switch between design view and code view. Granted, it doesn't render like IE 7 or FireFox yet, it adds a   element here and there, and it adds a few too many style attributes to table cells every now and then, but I can live with that.

On top of all this, Microsoft is giving away Visual Web Developer Express Edition for free!! Now that is hard to compete with....

So, what to choose. Or better yet, let's return to the initial question: what do I use for development, and how do I see Dreamweaver fit in to that? To be honest? I find myself using Dreamweaver less and less. I still use it for static HTML pages, simple ASP projects and "single page web projects", especially when I work in projects where other people use Dreamweaver too. But, I am not using it for CSS based pages as often as I used to. Visual Studio 2005 is just as good at that (code wise, not render wise). I also don't use it anymore for quick and dirty proof of concepts sites or pages (those tricky three column layout pages for example). And I am certainly not using it for anything related to ASP.NET 2.0; Visual Studio 2005 (even the free VWD Express Edition) is much and much better than that.

Who knows what Dreamweaver 9 will bring.... While I'd like to keep faith, I doubt Macromedia (oops, I should say Adobe now) can compete with the new Visual Studio, let alone the upcoming Orcas version of Visual Studio....

Ironically, I am typing this post in Dreamweaver. I always type and layout my posts in Dreamweaver before I add them to my site through my Content Management System. Apparently, it's hard to learn an old dog new tricks.... ;-)


Where to Next?

Wonder where to go next? You can post a comment on this article.

Doc ID 389
Full URL https://imar.spaanjaars.com/389/how-macromedia-missed-the-aspnet-20-boat
Short cut https://imar.spaanjaars.com/389/
Written by Imar Spaanjaars
Date Posted 04/07/2006 00:37
Listened to when writing Mexicola by Queens of the Stone Age (Track 7 from the album: Queens of the Stone Age)

Comments

Talk Back! Comment on Imar.Spaanjaars.Com

I am interested in what you have to say about this article. Feel free to post any comments, remarks or questions you may have about this article. The Talk Back feature is not meant for technical questions that are not directly related to this article. So, a post like "Hey, can you tell me how I can upload files to a MySQL database in PHP?" is likely to be removed. Also spam and unrealistic job offers will be deleted immediately.

When you post a comment, you have to provide your name and the comment. Your e-mail address is optional and you only need to provide it if you want me to contact you. It will not be displayed along with your comment. I got sick and tired of the comment spam I was receiving, so I have protected this page with a simple calculation exercise. This means that if you want to leave a comment, you'll need to complete the calculation before you hit the Post Comment button.

If you want to object to a comment made by another visitor, be sure to contact me and I'll look into it ASAP. Don't forget to mention the page link, or the Doc ID of the document.

(Plain text only; no HTML or code that looks like HTML or XML. In other words, don't use < and >. Also no links allowed.