- •Taking Your Talent to the Web
- •Introduction
- •1 Splash Screen
- •Meet the Medium
- •Expanding Horizons
- •Working the Net…Without a Net
- •Smash Your Altars
- •Breath Mint? Or Candy Mint?
- •Where’s the Map?
- •Mars and Venus
- •Web Physics: Action and Interaction
- •Different Purposes, Different Methodologies
- •Web Agnosticism
- •Point #1: The Web Is Platform-Agnostic
- •Point #2: The Web Is Device-Independent
- •The 18-Month Pregnancy
- •Chocolatey Web Goodness
- •’Tis a Gift to Be Simple
- •Democracy, What a Concept
- •Instant Karma
- •The Whole World in Your Hands
- •Just Do It: The Web as Human Activity
- •The Viewer Rules
- •Multimedia: All Talking! All Dancing!
- •The Server Knows
- •It’s the Bandwidth, Stupid
- •Web Pages Have No Secrets
- •The Web Is for Everyone!
- •Swap text and code for images
- •Prune redundancy
- •Cache as Cache Can
- •Much Ado About 5K
- •Screening Room
- •Liquid Design
- •Color My Web
- •Thousands Weep
- •Gamma Gamma Hey!
- •Typography
- •The 97% Solution
- •Points of Distinction
- •Year 2000—Browsers to the Rescue
- •Touch Factor
- •Appropriate Graphic Design
- •User Knowledge
- •What Color Is Your Concept?
- •Business as (Cruel and) Usual
- •The Rise of the Interface Department
- •Form and Function
- •Copycats and Pseudo-Scientists
- •Chaos and Clarity
- •A Design Koan: Interfaces Are a Means too Often Mistaken for an End
- •Universal Body Copy and Other Fictions
- •Interface as Architecture
- •Ten (Okay, Three) Points of Light
- •Be Easily Learned
- •Remain Consistent
- •Continually Provide Feedback
- •GUI, GUI, Chewy, Chewy
- •It’s the Browser, Stupid
- •Clarity Begins at Home (Page)
- •I Think Icon, I Think Icon
- •Structural Labels: Folding the Director’s Chair
- •The Soul of Brevity
- •Hypertext or Hapless Text
- •Scrolling and Clicking Along
- •Stock Options (Providing Alternatives)
- •The So-Called Rule of Five
- •Highlights and Breadcrumbs
- •Consistent Placement
- •Brand That Sucker!
- •Why We Mentioned These Things
- •The year web standards broke, 1
- •The year web standards broke, 2
- •The year web standards broke, 3
- •The year the bubble burst
- •5 The Obligatory Glossary
- •Web Lingo
- •Extranet
- •HTML
- •Hypertext, hyperlinks, and links
- •Internet
- •Intranet
- •JavaScript, ECMAScript, CSS, XML, XHTML, DOM
- •Web page
- •Website
- •Additional terminology
- •Web developer/programmer
- •Project manager
- •Systems administrator (sysadmin) and network administrator (netadmin)
- •Web technician
- •Your Role in the Web
- •Look and feel
- •Business-to-business
- •Business-to-consumer
- •Solve Communication Problems
- •Brand identity
- •Restrictions of the Medium
- •Technology
- •Works with team members
- •Visually and emotionally engaging
- •Easy to navigate
- •Compatible with visitors’ needs
- •Accessible to a wide variety of web browsers and other devices
- •Can You Handle It?
- •What Is the Life Cycle?
- •Why Have a Method?
- •We Never Forget a Phase
- •Analysis (or “Talking to the Client”)
- •The early phase
- •Design
- •Brainstorm and problem solve
- •Translate needs into solutions
- •Sell ideas to the client
- •Identify color comps
- •Create color comps/proof of concept
- •Present color comps and proof of concept
- •Receive design approval
- •Development
- •Create all color comps
- •Communicate functionality
- •Work with templates
- •Design for easy maintenance
- •Testing
- •Deployment
- •The updating game
- •Create and provide documentation and style guides
- •Provide client training
- •Learn about your client’s methods
- •Work the Process
- •Code Wars
- •Table Talk
- •XHTML Marks the Spot
- •Minding Your <p>’s and q’s
- •Looking Ahead
- •Getting Started
- •View Source
- •A Netscape Bonus
- •The Mother of All View Source Tricks
- •Doin’ it in Netscape
- •Doin’ it in Internet Explorer
- •Absolutely Speaking, It’s All Relative
- •What Is Good Markup?
- •What Is Sensible Markup?
- •HTML as a Design Tool
- •The Frames of Hazard
- •Please Frame Safely
- •Framing Your Art
- •<META> <META> Hiney Ho!
- •Search Me
- •Take a (Re)Load Off
- •WYSIWYG, My Aunt Moira’s Left Foot
- •Code of Dishonor
- •WYS Is Not Necessarily WYG
- •Publish That Sucker!
- •HTMHell
- •9 Visual Tools
- •Photoshop Basics: An Overview
- •Comp Preparation
- •Dealing with Color Palettes
- •Exporting to Web-Friendly Formats
- •Gamma Compensation
- •Preparing Typography
- •Slicing and Dicing
- •Rollovers (Image Swapping)
- •GIF Animation
- •Create Seamless Background Patterns (Tiles)
- •Color My Web: Romancing the Cube
- •Dither Me This
- •Death of the Web-Safe Color Palette?
- •A Hex on Both Your Houses
- •Was Blind, but Now I See
- •From Theory to Practice
- •Format This: GIFs, JPEGs, and Such
- •Loves logos, typography, and long walks in the woods
- •GIFs in Photoshop
- •JPEG, the Other White Meat
- •Optimizing GIFs and JPEGs
- •Expanding on Compression
- •Make your JPEGS smaller
- •Combining sharp and blurry
- •Animated GIFs
- •Creating Animations in ImageReady
- •Typography
- •The ABCs of Web Type
- •Anti-Aliasing
- •Specifying Anti-Aliasing for Type
- •General tips
- •General Hints on Type
- •The Sans of Time
- •Space Patrol
- •Lest We Fail to Repeat Ourselves
- •Accessibility, Thy Name Is Text
- •Slicing and Dicing
- •Thinking Semantically
- •Tag Soup and Crackers
- •CSS to the Rescue…Sort of
- •Separation of Style from Content
- •CSS Advantages: Short Term
- •CSS Advantages: Long Term
- •Compatibility Problems: An Overview
- •Working with Style Sheets
- •Types of Style Sheets
- •External style sheets
- •Embedding a style sheet
- •Adding styles inline
- •Fear of Style Sheets: CSS and Layout
- •Fear of Style Sheets: CSS and Typography
- •Promise and performance
- •Font Size Challenges
- •Points of contention
- •Point of no return: browsers of the year 2000
- •Absolute size keywords
- •Relative keywords
- •Length units
- •Percentage units
- •Looking Forward
- •11 The Joy of JavaScript
- •What Is This Thing Called JavaScript?
- •The Web Before JavaScript
- •JavaScript, Yesterday and Today
- •Sounds Great, but I’m an Artist. Do I Really Have to Learn This Stuff?
- •Educating Rita About JavaScript
- •Don’t Panic!
- •JavaScript Basics for Web Designers
- •The Dreaded Text Rollover
- •The Event Handler Horizon
- •Status Quo
- •A Cautionary Note
- •Kids, Try This at Home
- •The Not-So-Fine Print
- •The Ever-Popular Image Rollover
- •A Rollover Script from Project Cool
- •Windows on the World
- •Get Your <HEAD> Together
- •Avoiding the Heartbreak of Linkitis
- •Browser Compensation
- •JavaScript to the Rescue!
- •Location, location, location
- •Watching the Detection
- •Going Global with JavaScript
- •Learning More
- •12 Beyond Text/Pictures
- •You Can Never Be Too Rich Media
- •Server-Side Stuff
- •Where were you in ‘82?
- •Indiana Jones and the template of doom
- •Serving the project
- •Doing More
- •Mini-Case Study: Waferbaby.com
- •Any Size Kid Can Play
- •Take a Walk on the Server Side
- •Are You Being Served?
- •Advantages of SSI
- •Disadvantages of SSI
- •Cookin’ with Java
- •Ghost in the Virtual Machine
- •Java Woes
- •Java Woes: The Politically Correct Version
- •Java Joys
- •Rich Media: Exploding the “Page”
- •Virtual Reality Modeling Language (VRML)
- •SVG and SMIL
- •SMIL (through your fear and sorrow)
- •Romancing the logo
- •Sounds dandy, but will it work?
- •Promises, Promises
- •Turn on, Tune in, Plug-in
- •A Hideous Breach of Reality
- •The ubiquity of plug-ins
- •The Impossible Lightness of Plug-ins
- •Plug-ins Most Likely to Succeed
- •Making It Work: Providing Options
- •The “Automagic Redirect”
- •The iron-plated sound console from Hell
- •The Trouble with Plug-ins
- •If Plug-ins Run Free
- •Parting Sermon
- •13 Never Can Say Goodbye
- •Separation Anxiety
- •A List Apart
- •Astounding Websites
- •The Babble List
- •Dreamless
- •Evolt
- •Redcricket
- •Webdesign-l
- •When All Else Fails
- •Design, Programming, Content
- •The Big Kahunas
- •Beauty and Inspiration
- •Index
Taking Your Talent to the Web |
23 |
much less the Web. And many defining characteristics of the modern Web ($20 unlimited access dialups, 56K modems, free browsers) were established by 1995-96, a time when most web users were also web designers, and the word “commerce” did not begin with the letter “e.” Still, the Web has expanded like nobody’s business since business came online. And if you ask most normal humans who’ve gone online in the past few years why they bought a computer and signed up for an Internet account, “shopping” seems to top the list.
Different Purposes, Different Methodologies
It is still possible for a lone web designer or small team to create personal, artistic, and corporate sites using an image editor, HTML, style sheets, and JavaScript. But the “lone rider” approach is increasingly rare in the corporate web development space. Today, teams of specialists with oddsounding job titles develop most sites collaboratively. (See Chapter 5, "The Obligatory Glossary” and Chapter 7, “Riding the Project Life Cycle,” for the funky titles and the typical web project life cycle.) It is not your job to program a shopping cart or develop a database. It is your job to understand where your work fits into the bigger picture.
As a professional web designer, you will work closely with programmers to implement the appropriate interactivity in every site. You also might be called upon to execute rudimentary interactivity yourself—for instance, writing JavaScript to swap images on navigational menus.
WEB AGNOSTICISM
Design for the Web is also different because the Web is not a fixed medium. It has no size, no inks, no paper stock. Even your typographic choices may end up as mere suggestions. That’s because the Web is platform-agnostic and device-independent. Good web design adapts to different browsers, monitors, and computing systems. What’s sauce for the goose may not be sauce for the gander. More literally, what’s Geneva for the Mac may be Arial for Windows; what’s VBScript for Windows may be error messages for Mac and Linux users. (So don’t use VBScript to build websites.)
24 WHY: Designing for the Medium: Web Agnosticism
Looking at poorly implemented sites, you could come away with the impression that the Web is a Windows application or even an extension of the Windows desktop. And there are certainly marketers who’d like you to believe that. But it just ain’t so.
Berners-Lee and Caillou invented the Web on a NeXT computer. The first browser ever released was for UNIX, the second for Mac OS. Berners-Lee envisioned the Web as a completely portable medium—one that could be accessed not only by every computer operating system (including dumb terminals), but also by all kinds of devices from hand-held Personal Digital Assistants (PDAs) to telephones and other common appliances. Slowly and sometimes painfully, everything Berners-Lee envisioned in 1990 has been coming true.
To help the Web evolve in an orderly fashion, Berners-Lee founded the World Wide Web Consortium, or W3C (www.w3.org). It’s a place where university professors join engineers from companies such as Sun, Microsoft, AOL/Netscape, IBM, Compaq, and Apple to hammer out common technological standards, such as HTML and CSS…and more recently, Extensible Markup Language (XML) and the Document Object Model (DOM). For a complete listing of W3C member organizations, see the following web page: www.w3.org/Consortium/Member/List.
Don’t worry about what the acronyms stand for at the moment. Just dig the concept: If everyone supports the same standards (or “Recommendations,” in W3C parlance), then designers and programmers will have the tools they need to deliver a dynamic and attractive Web that works for any human being, on any platform or device. Sweet, smart, simple.
Sadly, due to competitive pressures, the desire to innovate, and sheer cussedness, the companies that make web browsers have not always done a superb job of implementing commonly shared standards. In fact, until quite recently, you could argue that their support for these standards was sometimes downright shoddy. You might even be forgiven for suspecting that browser makers deliberately avoided fully implementing any standard for fear that supporting common standards would hurt business.
Taking Your Talent to the Web |
25 |
In the beginning of this chapter, we mentioned that the Web was spawned as a beautiful medium for the delivery of physics papers. And that to deliver commercially viable sites—sites with some semblance of visual appeal— web designers felt they had no choice but to “hack” HTML, forcing the deliberately primitive markup language to serve their aesthetic needs. Netscape (now AOL) joined web designers in extending HTML beyond its creators’ intentions.
Initially, the Web was a one-horse town. If you wanted to design a commercial site, you wrote nonstandard HTML that was “optimized” for Netscape’s browser. Once Microsoft’s browser entered the picture, all hell broke loose, as two powerful software companies began deforming HTML in mutually exclusive ways.
Browser development was originally viewed as just another genre of software development. Adobe Illustrator competes with Macromedia Freehand by offering features Freehand lacks. Freehand does the same to Illustrator. God Bless America.
Similarly, Netscape competed with Microsoft (and vice versa) by offering functionality not supported by the competitor’s product. Each company hoped these unique features would seduce web developers into creating sites optimized for its browser alone.
Eventually, the market split in two. Though a tiny percentage of web users sported alternative browsers including Lynx, Mosaic, Opera, and Amaya, basically 50% of the market was using Netscape’s browser; the other 50% was using Microsoft’s. To create “technologically advanced” sites for their clients without alienating half the potential visitors, designers and developers felt obliged to create Netscape-specific and Microsoft-specific versions of their sites. Clients then paid more than they should have to support the development of these incompatible site versions. Thanks in part to protests from groups such as The Web Standards Project (www.webstandards.org) and mainly to the hard work of browser company engineers, support for common standards is constantly improving—though not without occasional backsliding.
26 WHY: Designing for the Medium: Web Agnosticism
Complicating the issue, many of today’s web standards were yesterday’s proprietary innovations: things that worked only in one browser or another. You can’t blame Wendy’s for not offering McDonald’s secret sauce, and you can’t fault browser companies for failing to implement technology invented by their competitors.
When Netscape unveiled <FRAMES> (the ability to place one web page inside another), the technology was widely adopted by designers and developers. Refer back to Figure 2.3, Assembler.org, for an example of the way frames work. The bottom frame contains a menu; the top frame contains the content. Clicking the menu changes the content by loading a new content frame. Both frames are controlled by yet a third document, called the <FRAMESET>, which links to the frames, establishes their size and positioning relative to one another, and determines such niceties as whether or not the user can resize a given frame.
Eventually Netscape brought its invention to the W3C. Much later, it ended up as part of a temporary standard: the HTML 4 Transitional Recommendation. It took Microsoft a while to support frames, because Microsoft’s browser developers had to reverse-engineer Netscape’s invention to figure out how it worked. Ironically enough, Microsoft’s 4.0 browser eventually supported frames better than Netscape’s.
In 1995, Netscape came up with a programming language initially called LiveScript and eventually renamed JavaScript. Besides being easy to learn (at least, as far as programming languages go), JavaScript made web pages far more dynamic. And it did this without straining the computers used to serve web pages (servers), because the technology worked in the user’s browser instead of having to be processed by the server itself—the way Perl scripts and other traditional programming languages had been. With less strain on the server, more web pages could be served faster. Thus, JavaScript was bandwidth-friendly.
JavaScript eventually became a standard, but not before putting Microsoft at a competitive disadvantage for several years. The latest, “standard” version of JavaScript is referred to as ECMAScript, which sounds like the noise our Uncle Carl used to make in the morning. Don’t worry—’most everybody still calls it JavaScript, which isn’t exactly Yeatsian poetry either, come to