ASP 101 - Active Server Pages 101 - Web01
The Place ASP Developers Go!

Please visit our partners


Windows Technology Windows Technology
15 Seconds
4GuysFromRolla.com
ASP 101
ASP Wire
VB Forums
VB Wire
WinDrivers.com
internet.commerce internet.commerce
Partners & Affiliates














ASP 101 is an
internet.com site
ASP 101 is an internet.com site
IT
Developer
Internet News
Small Business
Personal Technology

Search internet.com
Advertise
Corporate Info
Newsletters
Tech Jobs
E-mail Offers

ASP 101 News Flash ASP 101 News Flash



 Top ASP 101 Stories Top ASP 101 Stories
Getting Scripts to Run on a Schedule
The Top 10 ASP Links @ Microsoft.com
What is Adovbs.inc and Why Do I Need It?

QUICK TIP:
Close and free up object references
Show All Tips >>
ASP 101 RSS Feed ASP 101 Updates


A Scripter's View of Dreamweaver UltraDev 1.0

A Scripter's View of Dreamweaver UltraDev 1.0

by John Peterson

Introduction

Dreamweaver UltraDev Box For a while now, Macromedia's Dreamweaver has been the tool of choice for a large number of web page designers. Unfortunately, those of us who spend most of our time writing asp (or other types of server side code) have always had to look elsewhere. While Dreamweaver has always done an exceptional job at editing HTML, it has always fallen quite a bit short on the level of functionality a script developer has come to expect from competing tools like Microsoft's Visual Interdev (VID) and even some of the more advanced text editors like Allaire's Homesite. This, I believe, is precisely why Macromedia has released their new Dreamweaver UltraDev package.

First Look (There's a Book!!!)

Ok... having just reread that introduction, I'm not sure where I was going and I'm gonna entirely switch gears on you... enough about the market and the competition and the history of the product (can you say Drumbeat?)... lets get to the only thing that a developer gives a damn about: "How does UltraDev make your life easier?" Sorry for that lapse of concentration... I had been reading the manual and was beginning to get a little brainwashed. That being said, you heard me right... it actually ships with a good old-fashioned book. Actually there are two of them! When's the last time you saw that?

First impressions aside (the fact that there's a book!), I set out to give this new tool a spin. The install didn't hound me with a ton of questions, was relatively quick, and went off without a hitch on my Win2000 Pro based laptop. I then popped open a new document and within a minute was composing a standard HTML document. (If you haven't guessed yet, it was this article!) The interface is relatively easy to use and keeps the tools you need at your fingertips. Upon comparison to VID6 (my usual editor), the only thing that seems odd is the lack of a parent window to which you can dock the toolbar windows.

HTML Editing

Besides the whole multiple window thing that lets you see your background apps, I felt pretty at ease doing my basic HTML editing in UltraDev. In fact, after a couple minutes of playing around I found a number of cool features that go above and beyond the dialog-assisted HTML building I've come to expect from any decent visual editor. First off there's a spell checker. (A little dig at VID there, but I'm a coder not a writer... give me a little help guys!) While I'm mentioning Microsoft products... it's got a tool to fix Microsoft Word HTML for those people that continue to send you web site content in MS Word format. And for those HTML documents that you're not sure actually are HTML documents, it has an HTML source formatter so you can at least read them. Next it's got this great little instant tag editor which allows you to edit the currently selected html tag by pressing Ctrl-T. It lets you fiddle with a particular tag without dropping all the way to a separate source code window. (Two thumbs up to the developer that came up with that one!)

This leads me right into the next point... the source code window. Someone was definitely doing their homework here. Not only can you go from one view to the other and have the focus stay in the appropriate spot, the two windows actually stay in sync as you're working so you can switch back and forth almost seamlessly. While I'm on the topic of source code, let's talk about the actual code. It's not picture perfect (I can't get XHTML and I haven't found a way to modify the code it produces), but the HTML code it generates is pretty darn good none the less. I found none of the extraneous tags that happen in some other tools because you created a bold word and then deleted the word (leaving an empty tag) and almost every torture test I put it through resulted in HTML similar to that I would have written myself. All in all, it's one of the best editors I've seen and is something I might actually use. And that's saying a lot coming from someone who has always insisted on hand coding his own HTML.

Site Management

Here's where stuff starts to get interesting. I already established that it has a top-notch visual editor (as you'd expect from the Dreamweaver product line), but what happens when you try and get some real work done? It was relatively easy to get UltraDev to connect to a test web site via both ftp and unc paths. It lacks the "work on the server" feel of Visual Interdev 6.0 in master mode, but with it's Live Data view that allows you to work with data on your local machine I didn't really miss it much and it's probably better for those times you accidentally write bad code on your first attempt! [Not like anyone ever does that! ;)]

It also provides a couple of neat tools for multiple person development. The first is an optional check in and check out system that locks files so only one person can edit them at a time. It's pretty easy to use and once you turn it on you really don't even have to think about it much. The second is what they call "Design Notes." These allow you to associate notes with files in the web and have them optionally pop up whenever someone opens the file they're associated with. It's like pop up comments that are harder to ignore.

ASP Code

In my day to day routine there are two things I use a development environment to do. I naturally need to be able to build new sites, but I also need to be able to easily modify existing sites and code. UltraDev is pretty good at the creating new pages, but falls a little short when it comes to editing existing code.

For new code, UltraDev makes building basic database driven pages easy and for the most part you can do everything from the WYSIWYG view. The data bindings and server behaviors actually make pretty good sense and work like you'd expect them to. Binding form fields to database fields is point-and-click easy and overall it'll make life for the beginning developer a lot easier. The more advanced developer (or people who are used to notepad) might feel a little hindered by all the dialog boxes at first, but once you get used to it, the tool really does help make things easier and unlike any other visual ASP development product I've used, it actually produces readable code that you can easily follow if you need to.

I was a little less impressed with UltraDev's ability to open a random ASP file and provide a useful editing environment. I tried it with a number of pieces of code varying from stupidly simple to pretty darn complex and the result was almost universally the same: wherever it could find HTML it displayed it, but whenever it found ASP I got this little ASP icon and was unable to really do anything with it except switch to the source code view and edit it by hand. Below is a screen shot of what it did with a database sample from our sample section.

Dreamweaver UltraDev screen capture

It also offers very little support for project-level coding. Include files work of course, but it doesn't automatically use them when it's coding for you. By default it hard codes connections into each page and as far as I could tell offers no real way to share code libraries among scripts. In the long run, this could lead to real code maintenance problems. Granted fixing the problem on each page will be easy, but you'll still need to fix it on each page.

My final complaint is that it seems to be a little behind the times. It only supports ASP 2.0 and, like I said earlier, it isn't emitting XHTML. There will probably be fixes for this available on the web, but out of the box, I was a little disappointed. I'm trying to use .NET on all my new projects and it's not even using ASP 3.0.

Cross Platform

This is where it seems like this product really shines. For those small development shops where the same developers end up needing to write code for different server platforms at different times, UltraDev allows you to have a common development tool that will produce code for a variety of platforms. It currently supports ASP 2.0, JSP 1.0, and Cold Fusion 4.0 server models with almost no changes to the way you work when you switch from one project type to another.

It also is cross platform from the client side and runs on both PC and Mac. (Unfortunately, Windows and Mac versions must be purchased separately.) On top of that it's built to be pretty modular. It allows you to specify your own external editors and even ships with two of the best around... HomeSite for the PC and BBEdit for the Mac. And if the product doesn't do something you want, it's meant to be easily extensible and you can build upon it to include your own custom functionality. (I didn't get a chance to play with this extensibility much, but from what I saw it's probably not for the novice user.) If you're not up to building your own, the link to Macromedia's web site will point you to an area where you can download a number of server behaviors that other users have created.

Time to Start Jumping to Some Conclusions.

While Dreamweaver UltraDev is an excellent product and definitely a step in the right direction, it needs to take a couple more to become a truly great tool. There are a few times when it almost feels like two products thrown together... Dreamweaver & UltraDev. The HTML editing side (Dreamweaver) is exceptional. The ASP side (UltraDev) is good for writing new code, but could definitely use some polishing. While it does common tasks simply and well, if you throw anything it's not expecting it's way it wraps it up in little icons and ignores it. (Which is at least better then breaking it!)

While it's not perfect, for the novice user looking for a good tool to get started or for those who need a common environment for development on multiple server and workstation platforms, you should pick up a copy and give it a try. It won't solve all your problems and it won't write great code without some work on your part, but it should certainly make your coding efforts quicker and easier than they are now. For the more advanced developer, UltraDev might make a good addition to the toolbox, but as a real workhorse, I just don't think it's there quite yet. That being said, I'm keeping it installed and will probably use it for some of my HTML work, but honestly what I'm really looking forward to is version 2.

Additional Information:


Home |  News |  Samples |  Articles |  Lessons |  Resources |  Forum |  Links |  Search |  Feedback

Internet.com
The Network for Technology Professionals

Search:

About Internet.com

Legal Notices, Licensing, Permissions, Privacy Policy.
Advertise | Newsletters | E-mail Offers