Teaching Web Development
10/12/1999
by Amy Poe
Teaching Web development is a challenge, but it is extremely rewarding to both instructor and student. It's one of the few times where a teacher can actually see what a student has learned, and give feedback about the work. There are certainly stumbling blocks to overcome in learning about Web development, but with consistent effort, anyone can master the basics of building a Web site. Unfortunately, explaining certain basic concepts to someone who does not understand all of the idiosyncrasies of the Internet can be one of the toughest challenges.
The first real obstacle to understanding Web development is comprehending the concept of hyperlinks. For those of us who have been working with software for years, it is not a difficult thing to grasp. Newer surfers think of hyperlinks as something special that deals with the Internet. Actually, hyperlinks have been around for over twenty years! We use them all the time in Windows help menus, and other help resources. The whole concept of a hyperlink is the same as hypertext. Text that looks special in some way (usually through color and underlining) to denote that it is more than "just text". Once students get this idea, they realize they can use hyperlinks in all types of documents, and that it's really just a referral to another document.
Many new students think that because they can alter the default colors for hyperlinks, they should. When they see sites that are designed for developers or a sophisticated audience, which tend to use alternate colors or even different fonts to denote links, they think this is a good practice. It's up to you to explain that for most sites, especially those that will attract a lot of newbie users, this is a bad idea. To illustrate the point, customize your browser so that links are different colors, and then let them guess which color means what. Sometimes a "picture" is worth a thousand words!
HTML (HyperText Markup Language) is another confusing issue. I have had many students come to class expecting to learn yet another software product. As you know, HTML is a language, not software, so the ability to type is pretty much essential. There are plenty of HTML editors out there, but they will still need a basic understanding of the language to get further than a simple page or two.
I use the analogy of a calculator with my students. When you're in grade school, you learn arithmetic starting in Kindergarten. First you count on your fingers, then eventually you're able to do some simple stuff in your head. Finally, when you have a good grasp of the basics, you're introduced to a calculator. It can do what you've learned to do manually, just a lot faster (and more accurately!). However, if you don't know that 1+1=2, and your calculator tells you it's 3, you accept it at face value. Also, if you wanted to do something fancy, and don't know how using the calculator, you're stuck. This is also something helpful to point out to HR types. When they hire someone to do Web development, they need to really understand the person's ability. Simply using FrontPage (or another editor) will not be sufficient when nitty gritty details need to be ironed out.
However, HTML is not programming. It's simply a markup language that has gained popularity because of its cross-browser, cross-platform usefulness. HTML affects the way the text is rendered within the browser. Students usually think HTML is really doing something to the text until I explain that it's kind of like reveal codes in WordPerfect. It formats the text, but it's more for appearance than anything else.
In fact, HTML is really meant to structure a document, rather than provide formatting. It's based on SGML (Standard Generalized Markup Language), which was originally intended to be a system for organizing and tagging elements of a document. SGML itself does not specify any particular formatting; rather, it specifies the rules for tagging elements. These tags can then be interpreted to format elements in different ways, and with the advent of Cascading Style Sheets and XML, the developer will be able to create his own tags and define the way they operate. XML is the wave of the future but HTML will not die. Some guidelines for the student to consider regarding XML are:
If the student answers "yes" to any of the above, he should think about using XML. If on the other hand, they are authoring a web site that is fairly static and doesn't have many updates and doesn't have rich content, then HTML is a perfectly valid approach.
When you explain images to your boss or other less Web-savvy person, the concept of different graphics formats is probably not one of his main concerns. He'll probably just leave it up to you! But you will want to explain that jpegs are better for images with many different colors fading into each other (like photographs of people or landscapes) and gifs are better for line drawings and images with few colors (like bar graphs). Pulling up an example photograph and an example line drawing, and showing the difference in file sizes when they're put into the correct format, might help get the point across. You also might want to mention that a new format, PNG (pronounced PING) is coming soon, and will be the replacement for the patent-encumbered GIF format. Several of the more recent graphics programs already support this format, although most browsers do not.
Another common point of confusion for the beginning developer is the way that graphics and other typically embedded objects (sound for one) are never merged with the HTML file like they are when using OLE (object linking and embedding). The files are displayed in the same browser window, but the files themselves remain separate and distinct. This is a crucial point because many fledgling developers will upload their HTML files, only to be disappointed that their beautiful graphics have not appeared as well. They don't understand that each individual graphic, sound, etc. will need to be uploaded to the server, and pathed correctly to be able to be displayed "inline".
In adding graphics and multimedia files, you'll want to emphasize that there are certain guidelines.
(*) This is a guideline, and is consistently broken by many sites. The student will determine the best practice for their own site.
If the student is interested in adding other types of files, he will need to be aware of plug-ins and issues regarding inclusion of things such as sound, Shockwave, Flash, QuickTime, etc. Browsers will display graphics inline, but they may not recognize a proprietary file type, and will need some sort of helper application. For example, if you do not have a sound card and speakers, you will not be able to hear a sound! That seems obvious to experienced developers, but it is an issue when people embed sound files on their site. The user may get an error message, or it could even crash his browser (typically on older machines using older browsers).
I have found that lots of people have surfed using their own equipment, and gotten confused when they went to someone else's machine (with different settings and capabilities) and seen different results. Often this is because of the plug-ins and helper applications that have been added to the student's own browser. It may also be because his web browser is different from his office-mate's. There is also a significant difference in how the two major browser makers -- Microsoft and Netscape -- handle plug-ins. Microsoft generally includes the most popular third party plug-ins when they release a new browser version, while Netscape is more open to allowing third party vendors to develop for their browser, and has a new way for users to upgrade their version using "Smart Download".
Finally, the developer needs to answer a number of conceptal questions when developing a site, and then decide on a standard of practice for that site. Several of the questions that a student should consider are:
These questions, and others, will direct all decisions regarding the development of the site, and will be justification for not adding the inevitable "hey, include this neat spinning globe thingy because it looks cool" (which, of course, he may need to do anyway)!
Encourage students to enjoy the process and learn as much as they can. Developing for the Internet requires a unique combination of marketing, writing, graphics, technical and communication skills. They can use this experience to improve each of these areas, and help advance their career as well.
Have you ever had to teach a boss, intern, or anyone how to write web pages? Come discuss what helped your student, and what they just couldn't grasp.
Amy Poe is a senior technical instructor and Internet Developer for Kajax Engineering, Inc. in Arlington, VA, and a member of DC WebWomen.
This site copyright 1998-1999 ep Productions, Inc. Text of any articles is copyright of the author.