Goodies to Go ™
February 3, 2003–Newsletter #218
This newsletter is part of the internet.com network.
http://www.internet.com
Featured
this week:
* Goodies Thoughts –
Web Site Functionality.
* Q & A Goodies
* News Goodies
* Feedback Goodies
* And Remember This…
Goodies Announcement
Just in case you missed
it before, the new Beyond HTML Goodies book is now available!
Go beyond the basics
and learn how the pros add and use dynamic HTML features and advanced
JavaScript techniques. Beyond HTML Goodies demonstrates dozens of new and
different features readers can add to their existing Web pages using HTML and
JavaScript. The book starts with simple text and image tips, such as adding a
clock to a Web page or causing text to appear when the mouse moves over an
image. It gradually builds to more complex tricks, including manipulating forms
or working with cookies behind the scenes. Throughout the book, readers enjoy
Joe’s snappy style and “to the point” discussion of each “goody” in the book.
http://books.internet.com/books/0789727803
Goodies Thoughts – |
Web Site Functionality. |
I continue, this week, with my
overview of the early stages of a web site’s
development with a few thoughts about functionality.
In case you’ve missed the last few newsletters you
can find the in the Goodies To Go archive at https://www.htmlgoodies.com/letters
— I started this little series in January of this
year (2003) with a look at The Importance of Design.
Functionality seems frequently to bring to mind
interaction between the site and the site visitor.
While this may be a part of the topic, and is
something I’ll talk about in a minute, it’s not the
start of it. To determine the most important aspect
of a site’s functionality requirement, ask the
question "what is this site’s purpose?" The purpose
describes the function the site must fulfill. For
example, a site might be to describe a company and
its products. It could be to sell some tickets or
perhaps it’s to show off Johnny’s pictures. In each
case, the site’s purpose describes the function it
must perform. Its quality of functionality is
determined by how well it performs that function.
I labor the point a little because it is all too
easy to be distracted by an aspect of
"functionality" to the extent where the primary
purpose is obscured. In the above examples, for
instance, the ticket sales site might involve some
validation, some interaction, some storage and
recollection of orders, etc. In trying to accomplish
all these things it is easy to forget that what you
really have to do is sell tickets. Focus on ensuring
that numbers are entered where numbers are required,
dates are valid and dollar amounts are calculated
and forget to mention the name of the performance
for which you are selling the tickets and the site’s
functionality is about zero, no matter how
technically wonderful it might be!
The first golden rule of function is "be quick and
to the point." Don’t subject your visitors to flash
and pizzazz on the way to your grommet sales page.
Take them there right away and ask them "A bag of a
dozen, or a box of one gross?" Fewer clicks equals
much better. Also is this category is the reminder
to optimize graphics before including them in a
page. If your JPG looks more or less the same
compressed to 10K bytes as it does compressed only
to 15K, use the higher compression (the smaller
file) — smaller files load quicker. Quicker equals
much better.
The second golden rule is "think like your visitor,
not like yourself." If you went on a trip to
Chicago, London and Sydney and now are putting the
photos onto a gallery site, don’t label them
"First", "Second" and "Third" because that’s the
order in which you visited the cities. You know
that, but your visitor will have a much easier time
understanding "Chicago", London" and "Sydney"!
The third golden rule is "assist, don’t constrain."
If they have typed "1.6" in your quantity field,
don’t say "Invalid Quantity". Say something like
"Please enter only whole numbers in Quantity."
Remember also, courtesy rocks! My example here is so
much better than "Enter only whole numbers in
Quantity." As your site visitors, they are guests in
your home. Treat them as such! A little humor can
sometimes help too. Used sparingly, and always with
careful taste, it can help your visitor to relax,
feel comfortable and have a better overall
experience of your site. After the above error
message (the one that includes "Please"!) we could
add "By the way, the system prefers larger numbers!"
Be careful though, not to trivialize what you are
trying to do.
On the technical side, the real secret to
interactive functionality, or any type of technical
"specialty", is to keep it simple. Simpler equal
much better! As you look at adding some new function
to your page, ask yourself if it really adds to the
site’s ability to fulfill its purpose. If it sort of
does, sort of doesn’t, ask yourself if the site
might actually be a little better off without it.
That’s often the case. We see something new and
neat, and want to incorporate it into the site, but
on reflection, we see that the site is just fine
without it. Remember, simpler equals much better.
Next week, I’ll be closing this series with a
discussion about maintainability.
Until then,
Thanks for Reading!
– Vince Barnes
Q
& A Goodies
Questions are taken
from submissions to our Community Mentors. You can ask a Mentor a question by
going to https://www.htmlgoodies.com/mentors/.
Q. (I can’t locate the original
question, but this answer is worth including!)
A. I notice that you are using internal
styles on your pages (the styles between the
<style> tags in the <head> of your file). If you
use an external style sheet, and reference it in
the head instead (by using the <link> method)
then that should reduce the reloading, since the
external style sheet will be downloaded into the
cache.
You can save the styles from the page (between
the <style> tags) to a new text document named
styles.css (or something similar). Then, in your
HTML documents, reference it like this:
<link rel="stylesheet" type="text/css" href="style.css"
/>
Q. I’ve designed a version of the "index"
page for my web-site using style commands. I
want to put a JavaScript into the header of my
regular "index" page which will bump people over
to the new page if their browser is recent
enough to handle style commands. I’ve worked my
way through "HTML Goodies" and I’ve got a handle
on the script to detect the user’s browser. I’m
just not sure how to detect what particular
version of IE or Navigator a person is using
(i.e., whether the version is new enough to
recognize style commands).
A. To answer your question, style sheets
have been supported to increasing degrees since
Netscape
4.x, Internet Explorer 3.x and Opera 3.6. There
is an excellent discussion on this subject at:
http://www.webreview.com/style/
Browser detection is a daunting enough task and
even with the newer versions, some viewers
actually have style support turned off.
Taking this into consideration, my approach has
been to build in a short message to viewers who
either can’t or won’t support styles and using
styles to hide this message in the background of
the page such that the style supporters will not
be aware of nor be distracted by the message.
The non supporting viewers are directed to an
appropriate link which only they can see.
I use the following code to accomplish this:
<head>
<style type="text/css">
#nostyle {
position:relative; top: 0px; left: 0px;
background-color: #000000;
border-width: 1px;
border-color: #000000;
color: #000000;
font-size: 2pt;
width: 650px;
height: 3px;
padding: 0%;
}
</style>
</head>
<body bgcolor="#000000">
<span id="nostyle">This page requires CSS which
is not being supported by your browser – Click
on "?" for details</span>
</body>
Q. I am trying to find a way to make it
so that a drop down menu can be displayed on all
my web pages. I wish to have the main code at
one page so that if I make a change on the main
page it will show on all the other pages
containing the drop down menu. Please refer to
my website for an exampleof the drop down menu I
am refering too!
A. If you are referring to your "Store
Categories" menu, you can use a js file.
1. In your text or html editor, create a new
file and save it with a .js extension such as
filename.js
2. Insert the following (you can change
variablename to whatever you want) into the js
file:
var variablename=" "document.write(variablename);
3. Cut and paste your complete form code,
including the form tags, into the space between
the double quotation marks – " in item 2.
4. Replace all the double quotation marks in
your form code with single quotation marks – ‘ (
Note that the double quotes in item 2 must
remain as double quotes)
5. Remove all carriage returns from the js file
so that if you disable word wrapping, you will
see one long line of code.
6. In your page’s code, replace the form code,
including the form tags, with the following:
<script language="JavaScript" src="filename.js"
type="text/javascript"></script>
You can insert this script into any page where
you want the menu to appear.
To make changes, you need only edit the js file.
You can read more on this topic in the
HTMLGoodies web site tutorial "So, You Want An
External JavaScript, Huh?" at http://htmlgoodies.earthweb.com/beyond/extjs.html
Q. I am trying to put a list of data in a
table format so that it will take up less of the
page length. The code looks like this:
<TABLE>
<TR>
<UL>
<TD> <LI>Armors and Weapons </TD>
<TD> <LI>Art, Poetry and Music </TD>
<TD> <LI>Castles </TD>
</TR>
<TR>
<TD> <LI>Cathedrals and Monasteries</TD>
<TD> <LI>Coats of Arms (Heraldry)</TD>
<TD> <LI>Dragons and Beasts </TD>
</TR>
<TR>
<TD> <LI>Heroes and Legends </TD>
<TD> <LI>Illuminated Manuscripts </TD>
<TD> <LI>Knights</TD>
</TR>
<TR>
<TD> <LI>Mages and Wizards</TD>
<TD> <LI>Medieval History </TD>
<TD> <LI>Medieval Life </TD>
</TR>
<TR>
<TD> <LI>Sites for Kids </TD>
<TD> <LI>Medieval School Projects </TD>
<TD> <LI>Illuminated Manuscripts </TD>
</TR>
</UL>
</TABLE>
It did a great job of putting the list into
three bulleted columns, but for some reason, in
doing so, the font size shrunk. The rest of the
page is font size="3". I tried changing the
height, putting a font size command in the TD
brackets, and a few other places, but I just
can’t seem to get it to work. I searched the
HTML Goodies site but couldn’t find an answer.
How do I change the look of the writing within a
table?
A. You should be using a style sheet to
control your font sizes. This way you can
designate the size once, in the style sheet and
everything on the page will stay consistant.
For instance, if you wanted all of your lists to
be VERDANA and size 11px you wouls place this
code in the between <HEAD> tags of your HTML:
<style type=text/css>
<!–
li { font-family: verdana; font-size: 11px }
–>
</style>
Now take a look at all of your lists.
Read the tutorial on the HTMLGoodies site that
can be found here: https://www.htmlgoodies.com/design/css-html-text-color/
Q. How do I allow somebody to download a
file from my web site?
A. Just make your downloadable .exe file
into a link like so:
<a href="somefilename.exe"> Download Here </a>
News Goodies
One Step Closer to the Wireless Holy Grail
[February 3, 2003] Hewlett-Packard joins forces
with Transat Technologies to give operators the
ability to enable seamless, transparent roaming
between their 2.5G/3G wireless networks and 802.11
hotspots.
Click
here to read the article
eBay Thwarts Shuttle Debris Sales
[February 3, 2003] The auction giant quickly takes
down attempts by ‘a handful of users’ to capitalize
on the Columbia disaster.
Click
here to read the article
Auto Industry Forms Tech Interoperability Consortium
[February 3, 2003] At a time when Web-enabled
cars are creating a buzz, auto dealerships look to
standardize data interchange.
Click here to read the article
Microsoft Releases New Anti-Piracy Software
Toolkit
[January 20, 2003] Software giant aims to protect
disc-based music, video copyrights
Click here to read the article
Small Businesses Get A Jumpstart With IBM
[February 3, 2003] The beauty of Web services is
that the open standards approach is especially
appealing to small and mid-sized businesses. As SMBs
look to solve business problems by enhancing the
efficiency of legacy applications, IMB is prepared
to help business jumpstart their major technology
projects.
Click here to read the article
Study Shows 82% Vulnerability Increase in 2002
[February 3, 2003] In the wake of the Slammer
attack, a new report reveals that network
administrators had to deal with nearly 82% more
vulnerabilities last year than the year before.
Click here to read the article
ICybersecurity Czar Issues Farewell Warning
[January 31, 2003] Richard Clarke leaves the
post with a warning that sophisticated attacks could
be much more crippling than the ‘dumb’ Slammer worm.
Click here to read the article
EU: Microsoft Agrees to .NET Passport Changes
[January 30, 2003] Microsoft modifies its online
authentication system to address European privacy
concerns.
Click here to read the article
eBay Business Means Business
[January 30, 2003] Localized sales, reputable
dealers, and immediate gratification are clearly
important factors for eBay Business buyers. But the
primary benefit of bidding on goods and materials at
eBay Business is its ultimate ability to drive the
cost of doing business down.
Click here to read the article
Dell’s New Guise Could Be Gateway’s Demise
[January 30, 2003] Dude! You are selling in Sears,
while analysts say a ‘significant number’ of Country
Stores should be put out to pasture.
Click here to read the article
Did you ever wish your newsletter was an easy two way communications medium?
Ploof! It now is!
If you would like to comment on the newsletter or expand/improve on something
you have seen in here, you can now send your input to:
mailto:nlfeedback@htmlgoodies.com
We already receive a lot of email every day. This address will help us sort out
those relating specifically to this newsletter from all the rest. When you send
email to this address it may wind up being included in this section of the
newsletter, to be shared with your fellow readers.
Please don’t send your questions to this address.
They should be sent to our mentors: see
https://www.htmlgoodies.com/mentors/
I got a lot of email in the feedback box this week
that really should have been directed to the
mentors. Please remember that it doesn’t work if you
do that! If I forward the email to the mentor box,
their replies come back to me. In order to receive a
reply from the mentors, please send your questions
to their box (see
https://www.htmlgoodies.com/mentors/)
Among the actual feed back notes, a reader who did
not provide their name pointed out this additional
information regarding a Q&A for which Bob Conley had
provided an answer (thanks, Bob). The question
related to Server Side Includes and Bob pointed to
an ASP solution tutorial. Our reader writes (and
thanks for your submission, "webmaster"):
"Unix is different for SSI than ASP that you pointed
him to for the tutorial and it also depends on if he
is trying to call up that info in a cgi or php
scripting. Since Unix is the platform for 80% of the
web pages out there, I thought the reader should
have this information as well.
For instance, in our own pages we use a lot of SSI
for our menus and we use Unix for our platform. The
scripting for it is similar to what your ASP page
shows but different none the less. The reader should
also be aware that usually you need to be using
pages with a .shtml, .sht or .php to use SSI as
normal htm or html pages will not be able to handle
SSI. (Note: it is possible on some hosts to use SSI
in regular html pages) A typical code for SSI on a
Unix server would be like:
<.!–#include virtual="menu_main"–> instead of
include file as is done in ASP.
Another example for php would be like:<.?PHP
include("../menu_cardserv"); ?>. Notice the spacing,
";" and "?" marks.
These are both examples of a menu code that can
reflect the change throughout your site by editng a
single file. There are other ways of doing SSI
depending on the platform one is using.
Top
And
Remember This . . .
On this day in…
1929: Seagrave sets speed record
Driving his "Golden Arrow" at a speed of 231.4 MPH
in Daytona Beach, Florida, Major H.O.D. Seagrave set
a new world land speed record on this day in 1929.
He and Britain’s Sir Malcolm Campbell vied for the
top spot between 1925 and 1935, breaking each
other’s records several times. In 1935, however,
Campbell took a clear lead driving his Bluebird III
at more than 300mph on the Bonneville Salt Flats in
Utah. Campbell held the land speed record from that
time until the introduction of jet powered land
vehicles.
1959 Plane Crash Kills Music Stars.
A few minutes after taking off from Mason City a
chartered Beechcraft Bonanza crashed in Iowa killing
Buddy Holly, Ritchie Valens, and J.P. "The Big
Bopper" Richardson. Holly was 22, Richardson (who
was the writer of songs such as "Running Bear" and
"Chantilly Lace" in addition to being known for his
TV persona "The Big Bopper") was 28 and Valens
(Richard Valenzuela) was only 17.
Thanks for reading
Goodies to Go!