When Written: May 2000
Verdict: Without doubt one of the best tools for developing dynamic database driven web sites.
Price: £300 (£352.50 inc VAT)
Upgrade from Drumbeat200 £99 (£116.33 inc VAT)
Upgrade from DreamWeaver £199 (£233.83 inc VAT)
Supplier Software Warehouse Ltd 0800 0355 355
Internet: http://www.macromedia.com
Availability: June 2000
Avail on Windows 95,98,2000,NT and Mac OS 8.6+
UltraDev is a new web development tool from Macromedia. It is so new that I am having to review Beta code and so I will not linger on any strange behaviour from the software. No doubt we will cover it again in some form once the code ships.
Any new web development product from Macromedia will always attract attention, and UltraDev is not exception. It looks and behaves just like DreamWeaver 3 but with a major difference. It allows you to design web pages that are fed from a database or any ODBC data source as well as OLE DB , JDBC and Cold Fusion. Macromedia already have a product to do this called Drumbeat 2000.
However this has a different user interface to DreamWeaver and, although it is currently more flexible than UltraDev, Macromedia will no longer be selling DrumBeat, but there is an upgrade path for existing owners to change to UltraDev. However there has been much more work done on UltraDev than simply shoe-horning the DreamWeaver interface on top of Drumbeat. In fact it is more a case of “take one DreamWeaver and enhance it” so that it now understands how to connect to and feed data from databases using either ASP, JSP or Cold Fusion technologies.
A quick look at the code it generates shows that someone has been burning the midnight oil. At last computer generated code for an active web page that is not only concise but can be understood, it really does look like the sort of code that you would be writing if you were hand coding. The bloating of computer generated code is something that colleagues and I hate, as it is often impossible to understand, and of course after it has been generated, the helpful little wizard that created it in the first place is of no use now should you want to edit it.
Until now that is. UltraDev not only shows the generated HTML but should you need to alter it by hand, in order to do anything a little special, then you can with any HTML editor (including the built in one), and the next time you call up the dialog box in UltraDev that originally created the code, the changes that have been made manually are reflected in the dialog box. This is clever stuff and Macromedia have called it ‘Roundtrip Server Markup’, following on from DreamWeaver’s ‘Round trip HTML’ in both of which you can easily work in either the design or the raw HTML environments and neither messes with the code of the other.
To create a web site with pages fed from a database, all you need to do is define a site as you would in DreamWeaver. There is an extra screen to fill in called ‘App Server Info’ and it is here that you set what type of server technology you wish to use (ASP 2.0, JSP 1.0 or Cold Fusion 4.0), the scripting language, and where the server is for your live data. Once this is done you can either open up an existing page or create a new one and within the server behaviours widow, define a datasource. This tells UltraDev which connection (usually ODBC) you wish to use. You would usually use one connection for the whole site, but you don’t have to. A very neat feature here is that you can set different data connections for run-time and design-time should you wish. You are now ready to start creating dynamic web pages.
All the server side coding is handled by server behaviours. This is Macromedia speak for server-side scripts in much the same way as in DreamWeaver behaviours are client-side scripts to handle things like rollovers and form validation. First you create a recordset with the very easy to use query builder, which has both simple and advanced screens . Here you decide what filters if any you wish to apply to your data. After you have built your query and tested it with the test button provided, all you need to do is to drag and drop the columns from the recordset on to your HTML page. That will display one record, whereas of course you need it to loop through the recordset . Help is at hand here, select the area that you want repeated for each record (usually a row of a table) and then select the repeat server behaviour, at this point it asks you how many records you want displayed, and then a click on the OK button and you now have a page that displays the records from your recordset. Before I continue, I think it is safe to say that UltraDev will not enable unskilled users to create dynamic web sites but rather it takes a lot of the ‘donkey work’ out of creating the basic code. After which you can go into the HTML and make the ‘tweaks’ that you need to , safe in the knowledge that UltraDev is not going to mess it all up.
Up to now if you were developing active web sites, you did it in the technology of your choice and the live web server would have to run that. UltraDev however allows you to develop such sites for ASP 2.0, JSP and Cold Fusion enabled web servers and interfaces to any ODBC or JDBC compliant data source. The technology you choose is set up when you first create a site. The development environment runs on Windows 95,98,NT,2000 and Mac OS 8.6 and above, thus giving a very viable multi-platform development system which will allow the user to generate dynamic web sites that can be hosted on a wide range of operating systems.
I have written before about the unsatisfactory development process with dynamic web pages that many of the tools force you into. Because by their very nature these dynamic web pages can completely change their appearance with the data they receive and the data they request, the usual ‘preview in a browser ‘ option in most web design tools will not work. There are two main alternatives, either you have to do a save and then view it for real via a browser pointing to the web site on your development web server. Or, in the case of products like Drumbeat, Net Objects and Web Objects you create your pages within their own environment which gives you an easy design environment and keeps you distanced from the raw HTML. But then you have to perform a ‘publish’ which is even more time consuming. Editing the raw HTML in these environments is also not possible as this will be overwritten during the next publish. All very tedious stuff. Now there is a third option.
The nice people at Macromedia have obviously been listening, as UltraDev has a unique view option called ‘live data’ where you can actually see the page you are designing filled with the data that it will finally contain. Now you can play with formatting and positioning to your hearts content, whilst at the same time still having a good idea how the final page will look. So often I have missed a formatting tag on some ASP because in the design environment the code just appears as a small icon, and not the several lines of text that it ends up as when the page is fed from a data source. The power of this UltraDev view can not be over-stressed. I managed to create five database-driven web pages from scratch, including creating the queries and all the formatting and the “next”, “previous” buttons within a couple of hours, and that was while I was still learning UltraDev! There are times when for performance reasons you will want to switch this view off, but this feature alone makes the upgrade to UltraDev worthwhile. Another new feature is a new list type view for properties which shows you all the different properties on a selection, very useful and a requested feature, if only the properties page was resizable along with the font it uses.
So what else is new in UltraDev apart from the capability to link to databases, of which the implementation is superb ? Well not a lot I’m afraid, I would have liked to see more capabilities to use some of the other objects available to you in ASP, many of which are much more tricky to code than the dataconnection objects. This capability may appear later with a lot of extra functionality via the DreamWeaver and UltraDev Extension exchange web site (http://www.macromedia.com/exchange). Here, all sorts of extensions for these products many written by third party developers, can be downloaded and installed into the main program for free. There is a shopping basket module for UltraDev promised for example. These extensions are generally very small and so not a long download. It is an interesting way of developing and marketing a product. Just create and sell an extensible core product and then give away extensions to it which can be developed over time without all the costs of new versions of the core program.
There were some small bugs in UltraDev, but as this was beta code it is unfair to comment on them, and in fact none of them stopped me from using the product on a real development project.
Again Macromedia should be congratulated on improving on an already great set of web development tools. I for one will be sad to see Drumbeat 2000 go, as it will, as there is still a lot in there that is good, but as UltraDev matures, and with the growing numbers of extensions becoming available, anyone developing in this environment should seriously consider buying or upgrading to UltraDev.
Overall 6/6
Ease of Use 6/6
Features 5/6
Value for Money 5/6
Article by: Mark Newton
Published in: Mark Newton