Hand vs. GUI

By: Michael Reynolds
HTML Department Head

        Web authoring has evolved considerably in the last few years. Many approaches exist to developing web sites, as well as a variety of tools to facilitate the work. At first, the only way to create a web page was to code the HTML "by hand" --- using only a text editor. While HTML is not a difficult language, this still proved daunting for some and made the process of creating web pages somewhat mysterious and "techy." Web page editors began to come along to capitalize on this fact and fill the niche for people who wanted to design web pages, but who were not technically advanced or patient enough to learn HTML. Editors such as Netscape Gold, Adobe PageMill, and Microsoft Frontpage were developed to provide a GUI-based interface to web page design, similar to a desktop publishing application for the web.

        While these graphical editors have their place and are certainly useful in certain situations, web authors should know *at least* basic HTML, and should preferably achieve a high level of understanding of the language to obtain more professional results.

Some reasons for knowing HTML as a language include:

1. Power and Flexibility. Web page editors are getting steadily better, but a gap still exists between the interface and the HTML being generated. Editors allow basic control over page elements and offer some fairly advanced features, but no GUI-based interface can cover every subtle attribute and nuance of HTML. For this reason, the author must know the language well enough to edit the code directly to achieve effects that editors can't produce. Tables, for instance, are a widely-used method of defining the layout of a web page. However, most web page editors only offer limited control over how a table behaves. After setting up the table with an editor, it's sometimes necessary to go straight to the HTML and tweak the attributes of the tables, such as WIDTH, HEIGHT, CELLPADDING, etc. to achieve the desired results.

2. Compatibility. This is an issue with some editors and it's important to be aware of how your web pages will be seen across multiple platforms. Microsoft Frontpage, for instance, is notorious for creating sloppy HTML that is sometimes buggy on browsers other than Internet Explorer and usually *very* difficult to fine-tune by hand. This is not to say that Frontpage is a "bad" editor (although some argue that it is indeed evil), but it can pose some problems if used carelessly. Another factor that can influence the outcome of a web development project is the deceptive "instance gratification" of a GUI editor. For instance, once you have designed a page using Adobe PageMill, it may look great to you on your Macintosh at 1024 x 768, but someone using Windows 95 running at 800 x 600 may see something totally different. Knowing the HTML and coding carefully can prevent this sort of thing because it encourages logical thinking and planning instead of just placing elements on the page by pointing and clicking.

3. Freedom. While it would be nice if we could do all our work in a familiar environment, this is obviously not always the case. Just because you designed your web site on your computer using Dreamweaver doesn't mean you'll always have that particular piece of software at your disposal at all times. You may be on the road or at a different location and an unfamiliar environment. If you need to make some changes or updates on your web site, relying on Dreamweaver will do no good. However, if you know HTML, you can telnet or ftp into your site and easily make the necessary changes using only a text editor.

        As an alternative to GUI-based web page editors, I encourage you to make use of text-based HTML editors. Two of the best software packages available for HTML editing are BBEdit, from Bare Bones Software, and Allaire's Homesite. BBEdit is a Macintosh application and Homesite is a Windows application. Both editors are text-based, meaning you actually type the code in manually, but they offer a slew of tools and features that make web development much easier and more efficient. For instance, if you want to make a word bold, all you have to to is highlight it and select bold from the toolbar and the bold tags are automatically inserted around the word. More powerful features include drag-and-drop image insertion, table wizards, and search-and-replace functions that can span an entire site. If you know HTML, these tools will greatly enhance your efficiency and eliminate much of the tedium of typing repetitive HTML tags. I use BBEdit to code most of my web sites. I've experimented with GUI editors, such as PageMill and Dreamweaver, and I've also tried coding "raw" using only a text editor, but neither method satisfied me. BBEdit gives me the control I want over my code while eliminating the grunt work of typing tags over and over.

        If you're used to using a GUI-based editor, I encourage you to take the time to learn HTML and increase your level of control. There is nothing wrong with using a web page editor to make certain tasks easier, but knowing what's "under the hood" will make you a better, more competent web developer.

_____________________

Copyright 1998 webresource.net
All Rights Reserved.