- •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 |
331 |
is so important it becomes part of their name. For instance, as you might guess, Server Side Includes (SSI) is a server-side technology. Mostly, though, the names of web technologies give very little away. For instance, would you guess, from its name alone, that PHP (originally called Personal Home Page tools) is a server-side technology? Probably not.
Some versatile technologies work both sides of the street. Java, for instance, is frequently used on the client side, as a downloadable applet. But it also performs many server-side jobs. You’ll hear developers and systems administrators talk about Java servlets, which are miniature Java applications that run the Apache server’s mod_jserv component. Or you might host a site on Jigsaw, a W3C server that’s written entirely in the Java language.
You don’t really have to know any of this, as long as you get the general idea. Now let’s move on to some specifics.
Server-Side Stuff
The days of slicing Photoshop comps and hand-coding every last HTML page are not dead—they just smell bad.
One day soon, web designers will be fully liberated from these crude production methods. It will happen when a core group of web standards is completely supported in browsers, enabling us to separate style from content, presentation from structure, and design from data. It hasn’t happened yet, as any working web designer can tell you. It’s coming soon, we tell you now. We’ll talk more about it in Chapter 13, “Never Can Say Goodbye,” so save your questions until then.
Meanwhile, we have interim solutions that let us create web pages without, well, creating web pages. Under the principles of dynamic site construction, we can establish the conditions for web pages instead of building each page individually.
The process is simple: To begin with, web designers create visual templates, while writers, editors, and marketers create content. (Hopefully the two teams are talking to each other so that design and content work together.) The content is stored and indexed in vast, humming “back-end” databases,
332 HOW: Beyond Text/Pictures: The Form of Function
and the site is launched. When visitors request data, server-side middleware applications fetch the appropriate content and pour it into the designer’s template. The result: virtual pages that can be read, used, and bookmarked but that do not exist as conventional, self-contained HTML documents. Oh, oh, oh, it’s magic. Let’s descend to earth and see how it works.
Where were you in ‘82?
Ever used a search engine such as Google (www.google.com)? You type in the name of your former high school sweetheart and hit the Google Search button. Moments later, you’re presented with page after page of links.
From these pages you learn that your old flame is the two-term governor of a large Midwestern state, honorary dean of a prestigious university, has had two charities, a hospital wing, and a Ben & Jerry’s flavor named after her, and relaxes by participating in amateur kick-boxing tournaments.
The question, of course, is why did you ever break up with her? But for our purposes, the question is, where do these Google results pages come from?
The Google results pages are created on the fly by software that sucks query-related entries from a huge database, determines which links are probably most relevant, and pours the results into a preexisting HTML template.
Who made the software? Programmers. How does data get into the database? More software: specifically, a search engine spider, so named because it crawls around the Web indexing the content and location of individual web pages. Where does the designer fit in? The designer creates the template that the software uses to display the results. How does the designer do that? Let’s see.
Indiana Jones and the template of doom
As a web designer, you might be called upon to design the front end of an application like Google, or you might work on vast content sites that rely on similarly dynamic processing. Or you could design a site that sells things, revealing new products in response to the visitor’s desires.
Taking Your Talent to the Web |
333 |
Paradoxically, your job will not change that much from what we’ve described earlier in this book. You are still creating the part of the site that the visitor sees. You design it as you would any other web project. In a way, it’s like designing a magazine’s table of contents page. You create the master design; someone else designs the individual issues. It’s also like designing corporate letterhead in that your responsibility ends when you deliver the approved letterhead design. You don’t have to sit and type individual business letters. Creating website templates is as normal as those more familiar design processes. It’s after the image pieces and HTML templates leave your desk that the voodoo kicks in.
Precisely what happens next is up to your team’s developers—those who write the scripts that make these dynamic transactions possible. The developers take their lead from information architects, whose job is to figure out
“user flow” through the transactional portions of the site. (Who will come here? What will they want to do? How can we best fulfill their needs? What can go wrong?) The very things we advised you to do when planning an entire site, information architects do as they envision and structure the site’s transactions.
The data can be stored in an open source MySQL database, or in similar programs from Microsoft, Oracle, and other companies. As each visitor hits the site and begins to take actions, the middleware that lies between the visitor and the back-end database begins to do its thing.
It is the job of the middleware to process each request, fetch the appropriate document (or document fragment), and pour it into your template. Common middleware applications include open source PHP, Allaire Cold Fusion, and Microsoft Active Server Pages (ASP). MySQL is often found on UNIX Apache servers, Microsoft SQL and ASP on Microsoft Windows NT servers, and PHP can run on UNIX Apache or Windows/IIS.
Deciding on the appropriate database and middleware is not your concern. Technology officers and network administrators solve that problem. You aren’t expected to write code that complies with these middleware programs’ requirements either; developers do that, and we love them for it. You can learn to write code for PHP, ASP, or Cold Fusion if you wish, and we’ll have something to say about that in the “Doing More,” section that follows.
334 HOW: Beyond Text/Pictures: The Form of Function
Ordinarily, the developers and project managers will provide you with guidelines in a document that might be called the functional spec. They will also discuss requirements with you in one or more personal meetings— probably more. “We can’t have frames,” they might tell you or, “we must have frames,” could be their direction. Don’t skip these meetings and don’t rush to argue. Talk, listen, and learn.
The work process is but a variation on what you already do. You might take the comp no further than Photoshop; the developers will try to emulate it in, say, Cold Fusion, and show you the result. You might ask them to revise their code to bring the design up to your spec; they might ask you to revisit the design to accommodate limitations in the software or particular site requirements.
You will also write the Cascading Style Sheet (CSS) that determines colors, type sizes, margins, leading, and so on—same as always. You might find that some of these middleware technologies are unfortunately ill-suited to CSS, and you might need to do some HTML table work or have it done by your friendly neighborhood web technician.
It is sad but not surprising that some of these dynamic tools (Cold Fusion and the like) are more suited to old-style methods of web construction (<FONT> tags, table-based layouts, and so on) than to the newer, stan- dards-based methods (structural markup, design via CSS). After all, these server-side tools arose in a market driven by browser quirks and proprietary technologies, not by universally supported web standards. As browsers improve their support for web standards and as web designers and developers begin using these standards instead of whining about them or pleading ignorance, the dynamic tools will likely improve in this regard.
Serving the project
As you might expect, database-driven sites, built with templates, are usually not the place to show off your deep Photoshop layering skills, your ability to bring complex layouts to life via frames, or your newly acquired mastery of DHTML. Low bandwidth, large areas of flat, web-safe color, reasonably sized web fonts: This is the terrain you must plow; these are the
fields you must harvest.