meyerweb.com

Skip to: site navigation/presentation
Skip to: Thoughts From Eric

Archive: 'History' Category

Same As It Ever Was

I recently became re-acquainted with a ghost, and it looked very, very familiar.  In the spring of 1995, just over a year into my first Web gig and still just over a year away from first encountering CSS, I wrote the following:

Writing to the Norm

No, not the fat guy on “Cheers.”  Actually, it’s a fundamental issue every Web author needs to know about and appreciate.

Web browsers are written by different people.  Each person has their own idea about how Web documents should look.  Therefore, any given Web document will be displayed differently by different browsers.  In fact, it will be displayed differently by different copies of the same browser, if the two copies have different preferences set.

Therefore, you need to keep this principle foremost in your mind at all times: you cannot guarantee that your document will appear to other people exactly as it does to you.  In other words, don’t fall into the trap of obsessively re-writing a document just to get it to “fit on one screen,” or so a line of text is exactly “one screen wide.”  This is as pointless as trying to take a picture that will always be one foot wide, no matter how big the projection screen. Changes in font, font size, window size, and so on will all invalidate your attempts.

On the other hand, you want to write documents which look acceptable to most people.  How?  Well, it’s almost an art form in itself, but my recommendation is that you assume that most people will set their browser to display text in a common font such as Times at a point size of somewhere between 10 and 15 points.  While you shouldn’t spend your time trying to precisely engineer page arrangement, you also shouldn’t waste time worrying about how pages will look for someone whose display is set to 27-point Garamond.

That’s from “Chapter 1: Terms and Concepts” of Introduction to HTML, my first publication of note and the first of three tutorials dedicated to teaching HTML in a friendly, interactive manner.  The tutorials were taken down a couple of years ago by their host organization, which made me a bit sad even though I understood why they didn’t want to maintain the pages (and deal with the support e-mail) any longer.

However, thanks to a colleague’s help and generosity I recently came into possession of copies of all three.  I’m still pondering what to do about it.  To put them back on the web would require a bit more work than just tossing them onto a server, and to make the quizzes fully functional would take yet more work, and after all this time some of the material is obsolete or even potentially misleading.  Not to mention the page is laid out using a table (woo 1995!).  On the other hand, they’d make an interesting historical document of sorts, a way to let you young whippersnappers know what it was like in the old days.

Reading through them, now sixteen years later, has been an interesting little trip down memory lane.  What strikes me most, besides the fact that my younger self was a better writer than my current self, is how remarkably stable the Web’s fluidity has been over its lifetime.  Yes, the absence of assuredly-repeatable layout is a core design principle, but it’s also the kind of thing that tends to get engineered away, particularly when designers and the public both get involved.  Its persistence hints that it’s something valuable and even necessary.  If I had to nominate one thing about the Web for the title of “Most Under-appreciated”, I think this would be it.

Almost Target

I’d like to tell you a little story, if I may, from way, way back in 2002.  (The exact date is lost to the mists of time, but the year is pretty solid.)  Like a lot of stories, it’s little bit long; but unlike some stories, it’s true.

As the engineering staff at Netscape prepared a new release of Mozilla, the browser off which we branched Navigator, those of us in the Technology Evangelism/Developer Support (TEDS) team were testing it against high-ranked and partner sites.  On a few of those sites, we discovered that layouts were breaking apart.  In one case, it did so quite severely.

It didn’t take much to see that the problem was with sliced images in layout tables.  For some reason, on some sites they were getting pushed apart.  After a bit of digging, we realized the reason: the Gecko engine had updated its line-layout model to be more compliant with the CSS specification.  Now images always sat on the baseline (unless otherwise directed) and the descender space was always preserved.

This was pretty new in browserdom, because every other browser did what browsers had always done: shrink-wrapped table cells to an image if there was no other cell content.  The only problem was that behavior was wrong.  Fixing the flaws in the CSS implementation in Gecko had broken these sites’ layouts.  That is, it broke them in standards mode.  In quirks mode, Gecko rolled its behavior back to the old days and did the shrink-wrap thing.

We got in touch with the web team at one of the affected sites, a very prominent social networking site (of a sort) of the day, and explained the situation.  We already knew they couldn’t change their DOCTYPE to trigger quirks mode, because that would break other things they were doing.  We couldn’t offer them a simple CSS fix like td img {vertical-align: bottom;}, because their whole layout was in tables and that would throw off the placement of all their images, not just the sliced ones.  All we could offer was an explanation of the problem and to recommend they class all of their sliced images and use CSS to bottom them out, with assurances that this would cause no change in other browsers.

Their response was, in effect:  “No.  This is your problem.  Every other browser gets this right, and we’re not mucking around in our templates and adding classes all over just because you broke something.”

The truth, of course, was that we were actually fixing something, and every other browser got this wrong.  The truth was not relevant to our problem.  It seemed we had a choice: we could back out the improvement to our handling of the CSS specification; or we could break the site and all the other sites like it, which at the time were many.  Neither was really palatable.  And word was we could not ship without fixing this problem, whether by getting the site updated or the browser changed.  Those were the options.

Let me reiterate the situation we faced.  We:

  1. Had improved standards support in the browser, and then
  2. Found sites whose layouts broke as a result
  3. Whose developers point-blank refused to alter their sites
  4. And we had to fix the problem

We couldn’t back out the improvement; it affected all text displayed in the browser and touched too many other things.  We couldn’t make the site’s web team change anything, no matter how many times we told them this was part of the advance of web standards and better browser behavior.  Two roads diverged in a yellow web, and we could choose neither.

So we found a third way: “almost standards” mode, a companion to the usual modes of quirks and standards.  Yes, this is the reason why “almost standards” mode exists.  If I remember the internal argument properly, its existence is largely my fault; so to everyone who’s had to implement an “almost standards” mode in a non-Gecko browser in order to mirror what we did, I’m sorry.

We made “almost standards” mode apply to the DOCTYPE found on the offending site—an XHTML DOCTYPE, I should point out.  While we were at it, we rolled in IBM’s custom DTD.  They were using it make their site validate while doing all kinds of HTML-invalid stuff, and they were experiencing the same layout problem.  And lo: a third layout mode was born.  All because some sites were badly done and would not update to accommodate our improvements.  We did it so as not to break a small (but popular) portion of the web while we advanced our standards support.

(By the way, it was this very same incident that gave birth to the article “Images, Tables, and Mysterious Gaps“.)

Now take that situation and multiply it by a few orders of magnitude, and you get an idea of what the IE team faces.  It’s right where we were at Netscape: caught between our past mistakes and a site’s refusal to accommodate our desire to improve support for open standards.

Some have said that Microsoft is in a unique position to take leadership and spread the news of improved standards and updating old sites to its customers.  That’s true.  But what happens when a multi-billion dollar partner corporation refuses to update and demands, under the terms of its very large service contract and its very steep penalty clauses, that a new version of IE not break (for whatever value of “break” you like) its corporate intranet, or its public e-commerce site?  It only takes one to create a pretty large roadblock.

For all we did in publishing great content to DevEdge, proactively helping sites to update their markup and CSS and JS to work with Gecko (while not breaking in other browsers), and helping guide the improvement of standards support in Gecko, we could not overcome this obstacle.  We had to work around it.

Looking back on it now, it’s likely this experience subconsciously predisposed me to eventually accept the version targeting proposal, because in a fairly substantial way, it’s what we did to Mozilla under similar conditions.  We just did it in a much more obscure and ultimately fragile manner, tying it to certain DOCTYPEs instead of some more reliable anchor.  If we could have given that site (all those sites) an easy way to say “render like Mozilla 0.9″ (or whatever) at the top of every page, or in the server headers, they might have taken it.

But had we offered and they refused, putting us back to the choice of backing out the improvements or changing the browser, would we have set things up to default to the specific, known version of Mozilla instead of the latest and greatest?  The idealist in me likes to think not.  The pragmatist in me nods yes.  What else could we have done in that circumstance?  Shipped a browser that broke a top-ten site on the theory that once it was in the wild, they’d acquiesce?  Even knowing that this would noticeably and, in a few cases, seriously degrade the browsing experience for our users?  No.  We’d have shipped without the CSS improvement, or we’d have put in the targeting with the wrong default.  We didn’t have version targeting, but we still made the same choice, only we hinged it on the DOCTYPE.

A short-term fix for a short-term problem: yes.  Yet had we not done it, how long would Netscape/Mozilla’s standards support have suffered, waiting for the day that we could add that improvement back in without breaking too many sites that too many people would notice?  Years, possibly.  So we put in a badly implemented type of version targeting, which allowed us to improve our standards support more quickly than we otherwise would have, and it has been with us for the more than half a decade since.

So maybe I’m more sympathetic to the IE predicament and their proposed solution because I’ve been there and done it already.  Not to nearly the same degree, but the dilemma seemed no less daunting for all the difference in scale.  It’s something worth keeping in mind while evaluating what I’ve said on this topic, and whatever I will say in the future.

Browser Version Timeline

Way back in March of 2007, I moderated a SXSW panel called “A Decade of Style”.  As part of the introductory material, I created a browser-history timeline in Keynote, spread across two slides.  I’d always meant to throw it up on the web for general edification and reference purposes.  So I finally have, in a slightly simplified visual format (the original had a parchment-like background and so on).

In the end, the web form of this is pretty simple, even though it wasn’t simple to produce.  It’s just a series of images, one per year.  I have in mind a way to do it without the images, which would be nice, as that way the information would be accessible to the blind.  Right now, all the images just have empty alt values, I’m sorry to say.  Besides which, creating the same timeline out of structured content would be a fun challenge, albeit one I really don’t have the time to tackle right now.

A few notes:

  • Internet Explorer has two lines, one for Windows and the other for Macintosh.  I did this because their release schedules often had little or nothing to do with each other.  The other browsers represented typically release cross-platform on or about the same day, and so each got a single line.

  • The temporal resolution is one month.  In other words: no, I didn’t attempt to place the vertical connector bars so they correspond to the specific day of the month a browser was released.  In many cases, I don’t have that information—just the month and year of release.

  • I was interested to discover that the “quietest” years in the timeline were 1999, 2002, and 2004 1999 and 2002.  (My earlier belief that 2004 was quiet was due to my having the wrong year for the release of Netscape 7.2.  Um, whoops.)

  • Because the timeline was created for a session about CSS, the timeline starts in 1996 and doesn’t include pre-CSS browser versions.  I may extend it backward at some point, although that introduces interesting questions like whether or not to include Mosaic, Viola, Cello, and so forth; and whether to extend it all the way back to 1989.

  • Yes, I’m missing browsers such as Konqueror and iCab, not to mention the whole forest of Gecko spin-offs like Camino and Flock.  Again, there’s the question of which browsers to include and which to omit.  This was dictated partly by perceived market share, but mostly by good old-fashioned laziness.

I’ll do my best to address any suggestions for improvement, though this is kind of a side project and so commands a comparatively small share of my attention.  Still, even if it never changes again, I’m happy that it’s finally out into the world.

Winter Drifts

By current standards, the winter storm we’ve just weathered was pretty severe: two feet of snow blanketed our local environs in the course of 24 hours, give or take.  I put a few pictures up on Flickr, for those who’d like to see some of the aftereffects.  The broad nature of the storm meant that everyone got about the same snowfalls; lake effect seemed to play a minor or nonexistent role.

I’ve heard some people are comparing this storm to the Blizzard of ’77, and a few with a slightly better sense of proportion have recalled the storm that hit the area in November of 1996.  Both strike me as rather specious comparisons.  The ’77 storm was near to epic in scope and intensity, dropping four or five feet and stranding a whole lot of travelers.  My paternal grandparents had dropped by to visit the day before it started and ended up staying several days longer than they’d planned; the snow on our roofed patio was three or four feet deep, and many drifts throughout our area were a dozen feet or more tall.  For 1996, we had four or five days of constantly falling dense, wet snow, and tornadoes and thunderstorms to boot.  This week’s storm mostly dumped the light fluffy snow you can clear away with a broom, assuming it’s not too deep.

The truth is that this week’s storm wouldn’t have been very remarkable twenty years ago.  It might have been one of the heaviest individual falls of a given season, and certainly would have caused some problems, but it wouldn’t have triggered historical comparisons.  I remember days with ambient air temperatures of -20°F (-29°C) and stiff winds, which drove the effective temperature down to -50°F (-45°C) or lower.  I remember snow feet thick on the ground which stayed on for weeks.  I remember tunneling through roadside snowbanks and building elaborate snowforts with the neighbor kids, snowy bus stops, sledding parties and ice skating.

Yeah, yeah, okay: “when I was your age…”.  That’s not actually my point.  What I’m trying to say is that for last couple of decades, we’ve had some very mild winters, and it made us complacent.  I don’t own boots, because it’s literally been years since I needed them.  I had cause to regret that as I cleared snow from our walks in my regular shoes.  Thankfully, we do have access to a snow blower, so I didn’t have to shovel, but that didn’t stop the snow from getting into my shoes.  Oh, that’s a cold feeling.

I stayed far away from any conventional media yesterday, mostly to spare myself the histrionics of local news forecasters and avoid the depressingly repetitive comment, “I guess so much for global warming, haw haw haw!”.  There’s only so much moronity I can stomach in a day.  Instead, we all stayed home (Carolyn’s preschool and Kat’s office both being closed, along with nearly everything else in the city) and played games, read books, and went outside for short periods to make snow angels, get cold-rosy cheeks, and eat a few mittenfuls of snow.  Then we came back in to sip hot drinks in front of the fireplace.

People sometimes ask me why I stay in Cleveland when I could find work no matter where I moved.  In response, I can only point out my window to the drifts of snow sparkling in today’s clear-sky sun and the bare brown trees that will, in a month or two, begin to bud green shoots and tiny flowers; the same trees that will be silhouetted against a lightning-torn sky and will roar as autumn winds rip through their branches and brilliant leaves.

While that is not the only reason I stay, I need no other.

DevEdge Content Returns

Once was lost, now is found: “Images, Tables, and Mysterious Gaps” has been resurrected from the Great Bit Bucket Beyond and given new life on Mozilla.org.  In fact, it looks like just about all the technical articles written by me and the other members of TEDS are available.  Look through the full list of CSS articles, for example.  You can dig into any number of topic areas from the main page of the Documentation section.  (Scroll down to the “Mozilla Developer Center Contents” headline.)

Some other popular articles from my Netscape days gone by:

So far as I’ve been able to determine, some of the less technical pieces, like the interviews with Doug Bowman and Mike Davidson, are not available.  Not now, anyway.  Perhaps one day that too will change.

Under The Influences

When I pointed to Nick Finck‘s mention of me as an influence, I somehow missed the fact that he was doing it in response to a post by D. Keith Robinson about his Web design influences.  Keith listed me as well.  And before I move on, I’ll join everyone else in congratulating Nick on the Digital Web redesign.

So—I’m still grappling somewhat with the idea that I’ve been a Web design influence to anyone, let alone for people like Nick and Keith.  A quick glance around will tell you I’m no designer.  If I wanted to pretend that I had an aesthetic, I could claim to be a Minimalist, but let’s be frank: my design skills are just not very sharp.  But that’s okay.  I’m content to help spread information about CSS and how to use it, thus allowing designers to get into using it more effectively and intelligently.

It’s an odd feeling to think of myself as An Influence (and that’s how the words sound in my head, at least in this context).  It’s much easier to think about the people who have influenced me.  So here’s my list of the people who have most influenced my activities, outlook, and career path over the past decade.  I expect this will read a bit like Message To The Messengers, but hey, I’ve been around for a while.  There are two things I’d like to make clear up front.  First, these are professional influences, not personal ones (although there is some overlap, of course).  So there are folks out there who have meant a great deal to me, just in other ways.  Second, these are more or less in the order they occurred to me.  No overt attempt at ranking should be inferred.

Jim Nauer

We were college roommates for a year, and not too much later on I worked for him at the University Microcomputer Labs (wall to wall Macintosh SE’s, baby!).  Shortly after that, I graduated from college and was hired by Library Information Technologies, so that made us co-workers.  All along, he’s been a friend.  In fact, he was over at our house yesterday afternoon to spend some time playing with Carolyn.  The Web-centric point of all this is that it was Jim who first dragged me in front of a Mosaic beta, getting me instantly hooked.  He pointed me to the HTML specification, and it was he who convinced me that well-formed markup was important when I tackled my first Web pages in late 1993.  Without that critical early guidance, I might easily have become a table-and-spacer hack, and never seen CSS for what it was.

Tantek Çelik

I’ve said before that Tantek is one of the sharpest thinkers I know, and that’s no less true today.  Furthermore, he’s someone who genuinely cares about doing the right thing and supporting the common good.  I always take his opinions and thoughts on the Web and its technologies seriously.  I may not always agree with him, but even in disagreement I find his insights to be invaluable.  In a way, it’s a pity that his name has come to be associated with the CSS hack he published, because that’s a tiny dot compared to the totality of his efforts on behalf of Web standards and Web design.  I wrote about some of that back when IE/Mac was discontinued.  If you’re a Web designer today, you owe Tantek more than you realize.

Todd Fahrner

Remember Agitprop?  If not, go read it; Todd’s observations on font sizing and styling are still relevant, and help explain a lot about how we got to where we are with font styling on the Web.  Remember the Box Acid Test, which eventually found its way into the CSS1 Test Suite?  That was him too.  You know DOCTYPE switching?  Todd’s idea.  When Todd retired from the Web, it was a sad day for us all, although I’m happy that he’s found activities that are more enjoyable for him.  If you’re a Web designer today, odds are you owe Todd far more than you realize.

David Baron and Ian Hickson

Or, as I sometimes think of them, The Wonder Twins of Mozilla.  Not that they look or act anything alike, and of course Ian works for Opera now, but anyway.  They pounded on me (via e-mail) until I finally understood the inline layout model, and were immensely helpful in making the first edition of CSS:TDG as good as it was.  They’ve both taught me a lot over the years.  They both put a lot of work into making Mozilla a great CSS rendering engine and making CSS itself a better specification.  They both care about standards.  It probably isn’t fair to lump them together, but that’s how I think of them.  (Probably because of their joint work on CSS:TDG.)

Jeffrey Zeldman

Jefferey’s a mensch.  I’m tempted to leave it at that, because what else matters?  And yet he’s also been an enormous force for good, helping found the Web Standards Project.  His writing is easy on the eye and ear, and it goes down smoother than silk.  He’s always trying to better himself and his understanding of how to do the right Web thing, sharing both what he knows and what he doesn’t know, and letting the rest of us learn along with him.

Steve Champeon

Anyone who’s subscribed to Webdesign-L for a while knows The Joy Of Steve.  Unless of course you annoy him, in which case he’ll tell you in detail.  That characterizes Steve himself, actually: he’s a man who cares a great deal about the details, and about getting them right.  If you’ve ever enjoyed the Color Blender, you can thank Steve for its existence, as it was his detailed explanation of how to calculate color midpoints that made me realize that, hey, it would be pretty easy create a tool to do that.  Furthermore, css-discuss is modeled in a great many ways on Webdesign-L, so his influence is felt there too.

Håkon Lie and Bert Bos

They were the lead authors of the CSS1 specification.  In the words of Stan Lee, ’nuff sed!

Chris Lilley

Chris passed on my early test suite work to folks at both Microsoft and Netscape, and was the person who extended the Working Group’s invitation to join as an invited expert.  His dry wit and genial outlook in WG meetings served as an example to me, and helped me mesh with the group much more smoothly than I might otherwise have done.  Fun trivia fact: Chris was moderator the session at WWW5 in which Peter Murray and I presented our paper on the Borealis Image Server.  Followup fun fact: Robert Thau, who presented before us about Apache, sat next to a guy in the audience and talked loudly with him throughout our entire presentation.

Doug Bowman

Doug took Wired News in the direction we’d all wanted to see a major site go, converting to standards-oriented design and making it look good.  Then he shared his experiences with the world, and showed us all how easy it could be.  Even I was surprised at how much was possible, and how much benefit it conferred.  It’s a big part of what got the “business case for standards” discussion going, because it served as a concrete example of the benefits.  I sometimes wonder if I’d have had the nerve to launch Complex Spiral Consulting if that hadn’t happened.  Probably not.

Dave Shea

The CSS Zen Garden—you knew that was coming, right?—opened the floodgates and buried, pretty much forever, the myth that CSS design was all the same, too boring, and too limited for anyone to take it seriously.  It’s hard to imagine now, but there was a time that we had to waste energy refuting those claims.  I’ll always be grateful to Dave for ending that debate, and his excellent work on sites like Mozilla.org has been a recent inspiration.

My final, but in no way smallest, person of influence must receive the honor posthumously: my mother.  For a listing of most of the reasons why, I refer you to the eulogy I delivered, but there’s at least one more reason that’s relevant here.

She taught me to believe in myself.

Look Back In Awe

Just in case you haven’t seen it yet, John Allsopp posted a nostalgic note about the early days of CSS.  If you want to know who I hung out with back in the day, John’s got most of the names right there for you, and links to many of them.  There’s even a link to the CSS Samurai page, which I thought was long dead, and was greatly amused to read.

To John’s recollections, I would add Chris Lilley, who’s since been much more involved in SVG and other things; and Susan Lesch, who’s now at the W3C but back then was at macvirus.com.  (There’s a reason I didn’t link to that address, by the way.  If you go, make sure you can block popups.)

A more recent event of note is that it was a year ago today that the CSS Zen Garden opened its gates to the world.  Congratulations on an incredible first year, Dave.  I’m honored to have been able to contribute to the Garden in that time, and eternally grateful (and a little jealous) that you created such an awesome resource.  It opened a lot of doors, and a lot more eyes and minds.

F-F-F-F-Foolin’

April Fools Day has rolled ’round again, and already the confusion is thick in the air.  Doug and Dave have swapped faces for a day (or perhaps longer), much as newspaper comic artists often do.  The WaSP reports that the use of standards has hitherto unsuspected benefits, and Nature is reporting that stronger trade winds have changed the planet’s rotation enough that today should be 2 April, not 1 April.  Global warming is blamed.

Then there are the edge cases.  Google’s announcement of Gmail has now been reported by CNN, The New York Times, c|net, Wired, and more.  It sure seems like an April Fools Day joke on Google’s part, just like Pigeonrank, but heck, it could be real.  Here’s the thing: just because it got reported by major media outlets doesn’t make it true.

I found this out back at the very beginning of 2000.  You all probably remember the Y2K noise leading up to that point; there were reports that vendors had to certify pencils as Y2K compliant in order to sell them.  It got pretty silly.  In the middle of it all, as we went through month after month of analysis and certification of the systems at CWRU, one of the DMS gang said something like, “Are we sure that Aurora [the CWRU Web server] won’t suddenly think it’s January 1900?”  The response was, “I sure hope not, because then it would insist on using a telegraph to connect to the Internet.”  We started riffing on that idea, kicking around what the page design would look like, what kind of news would be there, turn-of-the-century pictures that should show up, and so on.

So we did it.  My co-worker Pam and I went down to the University Archives and found a number of photos that were of the right era and that were clearly allowed to be used (many of them had no known author and so would not pass into the public domain until 2020), and scanned them in.  I created a wood-grain design for the home page, including a modified badge that proclaimed us the “Yahoo! Most Wired College 1899″ site.  We had two places  on the page where the year was listed, and I had to deliberately introduce Y2K bugs in order to make them say “January 1, 1900″ on that day.  We set up a cron job to roll the old-timey graphics into place at the stroke of midnight on 1 January 2000, and went off to party.

By eight o’clock on the morning of the first, we had several dozen e-mails in the server contact inbox.  They were about evenly divided into people congratulating us on having a sense of humor, and people insulting us for being so stupid as to have suffered a visible Y2K bug on our public Web server.  (I’d like to think that at least some of those were tongue-in-cheek.)  By the end of the day, Wired had reported it as a real Y2K bug, even quoting our message apologizing that the server “believes that it is January of 1900,” and the next day the story was printed more or less verbatim in The Washington Post.  We ended up issuing a press release about it, and the joke design, which was intended to stay in place for a couple of weeks, lasted 33 hours before the administration said, “Yeah, uh-huh, very funny.  Get rid of it.”

As I write this entry, I have no idea if Gmail is an April Fools joke or not.  (Okay, that’s not true.  I have some idea that it’s a joke, but I’m not certain.)  In a way, it’s kind of irrelevant.  The whole situation has simply reminded me that those in the news media can be as easily duped as the rest of us, and that’s something worth remembering in the current political climate.

November 2014
SMTWTFS
September  
 1
2345678
9101112131415
16171819202122
23242526272829
30  

Archives

Feeds

Extras