Posts from May 2003

All Decked Out

Published 21 years, 1 week past

This whole playing-card deck thing is getting way out of hand.  We all know about the US Central Command‘s card deck of Iraq’s Most Wanted; you can even download a low-resolution PDF of the deck, or else buy a better-quality set from one of about a zillion merchants.  Réseau Voltaire is offering Les 52 plus dangereux dignitaires américains, a deck of the “52 most dangerous American dignitaries” in the Bush Regime.  When Texas Democrats fled to Arkansas Oklahoma to deny legislative quorum and kill a redistricting bill, Republicans created a “Most Wanted” deck of cards featuring the faces of their absent colleagues.  I’ve been getting spam for a “Deck of Weasels” featuring American war opponents’ pictures and quotes.  (Which is ironic considering I’d personally like to see a “Deck of Weasels” featuring the pictures and home addresses of the top 52 spammers.)  I’m guessing that in the upcoming election cycle, we’ll see plenty of card decks—most wanted polluters, tax boosters, pork-barrel projects, missing freedoms, whatever.  It won’t be too much longer before we’ll be able to create a deck of the 52 most wanted Most Wanted decks.  For that matter, how soon will someone create a 52 Most Wanted standards implementation changes?

And don’t look at me.  I have way too much on deck as it is.

Blending and Teaching

Published 21 years, 1 week past

The Color Blender has been updated to be one standalone file, so you can save it to your hard drive easily.  I also put it under a Creative Commons license, which I should have done in the first place.  Feel free to share and enjoy.  Now I’m really going to try to make this my last blender-related post for a good long while.  (Unless I make observations about margaritas.)

Daniel Sternberg has some interesting questions about what makes a computer science teacher.  It’s a question that’s been on my mind as I try to pull together a series of outlines for four-week seminars on standards-based Web design and CSS.  You can guess that this is intended for a community college because they’re willing to let me teach this stuff without a PhD in computer science.  Heck, I don’t even have a CS degree of any kind, unless you count a minor in artificial intelligence, and that was focused on the philosophical aspects of it.  Allow a History major to teach in a computer science department at a University?  Please.  I’d have about as much of a chance to be nominated head of the Congressional Black Caucus.

And yet, am I not qualified to teach students how to assemble a Web design, and about the underpinnings of today’s Web, with an eye to the future?  I certainly think I am, at least from a skills point of view; whether or not I’d make a good teacher of people is another question entirely, of course.  The deepest experts can be the worst teachers, something all of us probably encountered at some point in our educational experiences.

So it’s been interesting to be contacted by people from community colleges and business schools to come speak, but not hear a peep from the CS departments in my area.  Not at all unexpected, obviously, but still interesting.

I Can Feel The Love

Published 21 years, 1 week past

The XBL/Zen Garden thread continues over at Surfin’ Safari, including an interesting (Gecko-only) example of XBL in action and comments from various parties.  Share and enjoy.

I got a bit of feedback on the Color Blender, including a request to make it a downloadable package for offline use.  I’ll probably merge the CSS and JavaScript back into the HTML document, so people can just save the source if they want an offline blender.  I split the styling and scripting out to make development easier, so I probably should have poured them back in before going public.  It’ll be fewer hits on the server, even.  Look for an update in the next couple of days.

Thanks to El Jefe, I discovered that (whose favicon I may steal) has Eric Meyer on CSS in his “Recommended Reading” section.  I’m blushing!  The book’s sales are actually on the rise, apparently, which is kind of amazing given both the industry and the economy.  It’s the kind of thing that makes me wonder if I should write a sequel quickly, to strike while the iron is hot; or wait until sales trail off to avoid buyer confusion (and to milk the original for all it’s worth).  Hopefully it’s the latter, because frankly I don’t have time right now to tackle a sequel.  Too busy with another writing project (itself a sequel of sorts).

Thanks to Technorati, I found a site that asked if the DevEdge redesign was the “worst use of CSS ever?”  Ah, me public.  It’s okay, though; in reading through the rest of the site, I concluded that if the person in charge didn’t like our design, we’d probably done something right.

Blending Galore

Published 21 years, 1 week past

For some reason I decided this weekend to crawl into a hole and hack some JavaScript, so the Color Blender‘s gotten an upgrade.  You can use a “waterfall” display of “web-safe” colors to input colors, or type them in as before.  If you have already filled in colors and switch value formats, the colors will stay and the values will be converted in place.  This can be useful if you want to, for example, find midpoints between #AA31FF and rgb(13%,23%,42%).  I think the changes make the tool even more useful, and I hope you do too.

Oh, and yeah, I used a simple table to lay out the page.  I toyed with positioning and floating the three “columns,” but in the end the table approach seemed the easiest, so I went with it.  This was partly because I have a footer and didn’t want to mess with floating and clearing just to get it below everything else.  It was also because, after a day or two of grappling with JavaScript, I got lazy.  I may go back at some point and replace the table with floats.  In the meantime, this works well enough.

CSS2 and the official CSS1 Test Suite both turn five years old today.  I’m not sure if I bring this up in celebration or protest, but in my case, it’s definitely cause for introspection.

A couple of contributed designs have sprouted in the CSS Zen Garden, and I imagine there will be more to follow.  What an incredible resource!  A few weeks back, I said in my close-up* interview:

While an artist is certainly limited by his medium, it’s more often the case that the medium is limited by its artists. Until a Picasso or Serat comes along, you don’t truly appreciate what the medium can produce. As more designers come to use CSS, we’ll see more compelling CSS-driven sites.

Dave Shea and his contributors are doing exactly that:  showing us more of what the medium can do, and creating a compelling site.  Just moving from design to design in the Zen Garden should be ample proof that CSS is capable of more than most of us have ever thought possible—me included.

Meanwhile, David Hyatt posted to say that XBL directly addresses the point I made in Thursday’s post:

You attach XBL to an element through CSS, and XBL can generate a complete anonymous content subtree that can then be styled using a scoped stylesheet applied to those elements. You can even scatter the real content however you’d like within the anonymous content tree…. XBL is a perfect tool for implementing complex layouts at the presentational level and preserving the purity of the main source document. XBL can even execute scripts for fancy animation effects or rollovers, all without the source document being polluted at all.

Sign me up!  I had no idea XBL was capable of this sort of thing; when the “XSLT vs. XBL” thread erupted on www-style a few months ago, I pretty much tuned it out after the fifth message.  Obviously I should have paid a little more attention.  If I can, for example, take a paragraph and use XBL to generate three block boxes and two inline boxes, styling each one independently to create given effects and applying multiple backgrounds, then it seems like the ideal solution.  Except for that whole lack of cross-browser support thing, of course.  Still, a similar lack didn’t exactly stop me from digging into CSS, back in mid-1996.

Zen and the Art of CSS

Published 21 years, 2 weeks past

Want to see some wonderful, and strikingly different, designs for the same content?  Want to contribute your own themes?  Then get on over to the CSS Zen Garden.  I have two reactions: delight and jealousy.  As I’ve said before, I don’t have strong visual design skills.  I’ve been working on a new set of designs for meyerweb, and they’re almost ready to go live.  I was feeling rather proud of what I’d done.  Then these guys come along and show me just how fumbling and crayonesque my design efforts have been.

There are quite a few span elements littered throughout the Zen Garden’s source, but as I’ve been finding recently, this is almost necessary.  It’s troublesome to me that really interesting CSS-based visual design should require that we clutter the document structure with gratuitous elements, but there truly doesn’t seem to be a good way around this.  It may be that future CSS, or some other styling language, will allow the author to create multiple layout boxes (or other shapes) for a given element and style them independently.  The syntax would probably be weird compared to what we have now, but it would allow for a lot more design flexibility.

And speaking of design, don’t forget about the Web Design Meetup tonight!

Laughter and Sorrow

Published 21 years, 2 weeks past

This morning’s Penny Arcade just floored me (it makes more sense if you read the preceding comic first).  Say, did you know the Pants Association encourages you to wear your pants at least three times a day?  Yes, that’s a quote.  You get major geek points if you can identify the source, and about a million times more geek points if you know the exact episode name.

Some time later, I chuckled quite a bit at this joke:

Look inside a typical CSS flamer house.  What do you see?  Chairs, only chairs.  No tables.

That was followed by a post asking for realistic experts to explain how to use CSS effectively.  Hey, that’s me!  It’s what I strive to be, anyway, as I have for quite some time.  I hope it shows in my work.

I’m still trying to get a handle on this whole “CSS flamer” thing, a term I first encountered only a few days ago.  I can’t quite tell if there are people running around using CSS advocacy as a way to pummel others because it’s fun, or if strong advocacy of the use of CSS is interpreted as flaming, or what, exactly.  I mean, yeah, I think that if you can design without tables, then you should definitely do it.  Is that being a CSS flamer?  Even though the reasons are good things like reduced page weight, simplified page structure, and better accessibility?  I also think that if you need to do something CSS can’t handle, then use the next best tool—tables, Flash, public radio, whatever.  Is that some sort of betrayal of the Holy Path of CSS?  Help me out here, people, I’m trying to understand.  Are technologies forever dead because they aren’t perfect?  Did visual styling become a war?  How?  When?  Why?

I thought about ranting a while longer, but frankly everything I wrote sounded whiny (as if the above didn’t) and it was getting pointlessly angry, so I decided to stop.  Maybe I’ll come back to it later.  Summary: technologies are tools, not religions.  Use the best tool for a job.  Show other people how to better use a particular tool, if you can.  No matter how skilled you are with a tool, please don’t hit other people with it.

Every now and again, a little anger does indeed leak through.  I might be grouchier than usual today because of the spam I’ve been getting over the last few days.  Here’s one I got just this morning: “Remember Mom on Mother’s Day!”

Well gee, Mr. Spammer, thanks so much for reminding me that I can’t really do anything else.


Published 21 years, 3 weeks past

When you withdraw for a couple of weeks, all kinds of stuff piles up—in the house, in the Inbox, in life in general.

During our Passover seder on April 17, I spotted a label on a bottle that cracked me up.  Since I’d acquired a digital camera just the day before in hopes of taking pictures of both our families at one table, I couldn’t resist capturing the label for posterity, so I’ll share it with you. A label from a Coca-Cola bottle that reads, in part: NCAA Final Four - Tune in and be a part of the MADNESS on CBS - Log on to for more information. Somebody really needed to think a little harder about their domain name choice.  Then again, had they done so, I’d have been deprived of a good laugh.  Hey, maybe they’re going back to their original recipe!  Wouldn’t that be fun.

The day after Mom’s death, Netdiver published a close-ups* interview with me.  You’ve probably already seen it, but if not, there you go.  It’s long, but that’s mostly due to it having a lot of questions, some of which were actually difficult to answer.

Chris Casciano updated his PNH Developer Toolbar to fix some typos, add more links to useful tools, and make the toolbar work in Phoenix/Firebird as well as Netscape/Mozilla.  I don’t think I mentioned the toolbar here before, so let me just say it’s insanely useful and thoroughly awesome.  I’m already becoming addicted to it, especially in conjunction with the DevEdge Sidebar Tabs, which lets me drill into various W3C specifications quickly and easily.

Everyone got all upset at Dave Winer, who in turn got upset with everyone; things were said, mistakes were made, meanings were imposed and decomposed.  If it hadn’t started with a post about designers and CSS, I wouldn’t even bother to mention it.  My reaction: everyone over-reacted.  Dave didn’t say in that particular post that there was anything wrong with CSS, although he did make some interesting statements about what works and what doesn’t.  Of course the advantages of using CSS are fairly self-evident to anyone paying the slightest bit of attention, and (to my eye) far too compelling to ignore or eschew.  There are indeed flaws and omissions both in browser support and the CSS specification itself, but that’s never stopped anyone.  Meanwhile, anyone who’s using CSS as a political club of some sort needs to cut it out.  CSS is a technology, and a good one that promises to get better.  It’s not a religion, despite the odd quasi-religious titles people keep affixing to my name (“CSS Pope” being one of the funniest).

On an oddly related note, Jeffrey and Tantek and Matt batted about thoughts on RSS, syndication, hand-rolling a weblog, and so on.  This particular journal (as I call it) is basically hand-rolled, and for a long time I manually updated the current entries and archives: when I added a new entry to the home page, I’d cut the least recent entry and paste it into the archive page.  That worked so long as I posted weekly and didn’t want to do anything else with the entries.

But then I started hearing from people who said that without an RSS feed, they couldn’t keep track of a site.  I write these entries so that people can see them, and I was sort of interested in RSS anyway, so I decided that I needed a way to set up a feed and automate the process of managing the entries.  As long-time readers will recall, I accomplished this by teaching myself XSLT and using it to create a very minimal content management system of my own.  Entries are written in an XML format I derived from RSS itself, and I run the XML file through a series of XSLT recipes to produce the most recent entries on the home page, the archives, and the RSS feeds.  I suppose I could also create messages to e-mail to people who signed up for them, but I’m not up to that yet.

So anyway, I agree with what Jeffrey says about pouring an entire site’s contents into an RSS feed: why would I bother?  Part of the experience of reading a personal site is how it looks, the way the words are arranged, the layout of the content.  So I’ve been doing basically what Jeffrey is now doing, and dropping the first sentence of each entry into the feed.  That keeps the feed small, it allows people to know when I’ve posted something new, and gives them enough information to decide if they want to go read the new entry.  It also forces me to think about writing good lead sentences, since an entry description of “I just had a thought….” isn’t nearly is interesting as “I was pondering the relationship between XSLT and CSS, and had an idea I think is pretty cool….”

(Incidentally, those of you chastising Jeffrey for “selling out” need a serious perspective check.  Try some deep-breathing exercises while you’re at it.)

Matt observed that I should drop the plink class on the permalinks and use a contextual selector to style them, and that I should add rel="bookmark" to the permalinks.  The latter I’ll implement in my next XSLT update, as I should have done long ago.  The former, however, I’ll probably not do just because I like having a class that applies only to the permalinks and nothing else.  I might decide in the future to move the permalinks from one element to another, and I don’t want to have to juggle a bunch of selectors when I do.  The structure and design of the site are always in a slow state of evolution, so I try to plan for future mutations as best I can.

That’s one benefit of hand-rolling the whole system.  I can plan ahead with the greatest possible clarity because I know exactly how everything is put together, and how changes to the structure will affect the layout and experience.  I can also make sure the site’s markup is as lean and relevant as possible, because the most advanced document optimization tool ever devised is still the human brain.


Published 21 years, 3 weeks past
I tried to believe But you know it’s no good This is something That just can’t be understood
—Neil Peart, “Afterimage” (1984)

I’ve moved the memorial page into another directory, which feels like a file-system expression of the process of moving on with life.  A lot of people told me that the eulogy I delivered at Mom’s service touched them, and since I wrote the text out in advance, I’ve decided to make it available.  I think it helps illuminate my state of mind, which is one of deep sorrow but not of hysterical grieving.  At some level I’m devastated, but at another I’m at peace, and I think my father and sister feel basically the same.  The end was swift, it was relatively painless, and it was gentle.  She was not alone, and she knew how much we all loved her.  If a cherished person must die, one cannot ask for much better than that.

Our good friend Tantek was probably the first to publicly note Mom’s passing, and beautiful journal entries were written by both Gini and Ferrett (also good friends) about the celebratory service, and Mom, and us.  Comforting words were received from many, many more people, both by Web and by e-mail, and Kat and I thank you all.  Your words have helped sustain and comfort us through a very difficult event.

It’s still very difficult to grasp.  By definition, of course, my mother existed for my entire life.  She always seemed eternal because, in my personal timeline, she had always existed; there was no time when she was not.  Until now.  How does one come to terms with that?  I don’t know yet.  I’ll find out over time, as most people eventually must.

I learned your love for life I feel the way that you would —I feel your presence I remember—

Browse the Archive

Later Entries