meyerweb.com

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

Archive: May 2005

Universal Child Replacement

The other day I hit a situation that pushed me to come up with a way to simulate the child selector in a way Internet Explorer could understand using two rules.  I doubt I’m the first to think of it, but I’d never seen it before, so I thought I’d document the solution here.

The deal was that I had a column of text featuring white background with some black flecks in it.  On top of that went some near-black text.  All fine, except where the text sat on top of a fleck, which made it next to impossible to read.

To counteract that effect, I decided to set the background of the various descendants of that div to be white, so they’d mask any flecks they were overlapping.  Thus I wrote:

#main * {background: #FFF;}

It worked great for about a second.  That’s when I realized that I had links in the column, and some of them were sitting inside table rows with a non-white background.  The rule I’d just written was giving the links white backgrounds, which had the visual effect of punching holes in the row backgrounds.  That was no good.

What I really needed was a way to just set white background on elements that were children of #main.  CSS has a child selection combinator (>) but neither version of Internet Explorer supports it.  After a few moments’ thought, I realized that I could add a rule that would make transparent the background of any element that was at least a grandchild, but not a child, and it would still work in Explorer.

#main * {background: #FFF;}
#main * * {background: transparent;}

The end result is that there is a way to simulate child selection without actually using the child combinator.  The general pattern is to use a normal descendant selection in your first rule, and then “undo” the first rule with a second that has a universal selector in the middle.  Suppose you want to boldface any p element that’s a child of a div, but no others.  The solution:

div p {font-weight: bold;}
div * p {font-weight: normal;}

It might not be something you use every day, but if it’s needed, there you go.

Update: Lachlan points out that you’ll need to watch out for specificity conflicts when using this technique.

S5 1.1rc1

Okay, so it’s been almost three months since the last time I updated S5.  During that interval, I’ve been quite busy, but I still feel disappointed that I haven’t put more energy into the project.

As a partial salve, I’ve made a few changes to the S5 information pages.  The main page now has links to the latest official version and latest revision, as well as quick links to useful information.  I updated the FAQ a bit as well, to clarify the licensing situation.  At some point, I hope to create a separate page that contains a feature list, but that’s on a back burner right now.

What I really want to do is finally make S5 1.1 a full, final reality.  Therefore, I’m pushing it to version 1.1rc1 with the knowledge that there’s a new bug to be addressed.  In Safari 1.3 (and I assume 2.0 as well, though I haven’t had a chance to install Tiger yet to find out) the arrow keys double-advance, or even more.  So if you hit the “right” or “down” arrow keys, you’ll jump forward two slides; “up” or “left” moves you back two slides.  On incremental slides, you’ll advance to the end of the slide, or the next incremental element.  The space bar doesn’t evince the same problem.

I assume this is a keystroke handling problem, but I’m not entirely sure—the behavior of incremental slides makes me wonder if maybe it’s something else.  Either way, if we can get that fixed and don’t uncover any other major problems, I’d be happy to call this bad boy done.  Help, as always, is welcomed and appreciated.

Update: Pritt left a comment on another post providing a solution for the Safari bug.  Look for 1.1rc2 shortly!

Not Going To Be @media

A few people have asked recently if, given that I’m going to be in London in early June, I’ll be showing up for @media.  I’m sorry to say that the answer is no.  Why not?  The honest answer is that I’m not speaking there.  These days, if I’m not speaking at a conference, I can’t spare the time and expense it would take to attend.  In fact, it’s the default case that if I can’t at least break even on a conference, I won’t be there whether or not I’ve been asked to speak—which I wasn’t, in the case of @media, so there you go.  There are exceptions, like SXSW and WWW2005, but those are rare and require a good deal of justification.

Too big an ego on our boy Eric?  Maybe.  What it comes down to is this: I can make money to support my family by staying home and working, or by traveling to conduct customized training for clients.  To lose money on an event that will take me away from my wife and daughter just doesn’t make sense.

Besides, it’s not like @media is going to be lacking for truly excellent speakers.  You’ve got Jeffrey, Joe, Doug, and Molly in the lineup, plus all the others I really ought to list individually but am clearly too lazy to do so.  It should be a great time for all, and while I’m sorry I’ll miss it, with all those high-powered rock stars on stage I seriously doubt I’ll be missed.

Limited London Seating

Since I’m going to be arriving in London a week from today, I wandered over to the Professional CSS / XHTML Techniques Workshop site to see how things were going.  I discovered that there are only three seats left for the Friday session, Saturday having sold out long ago.  So if you’ve been hesitating, might be best to overcome that hesitation in a timely fashion.  I’m just sayin’.

Party Contacts

Dear Democratic Party:

I have a few suggestions on how you might improve your relationship with centrists who would like to support you.  Well, all right, it’s really all about how to improve your relationship with me.

The primary rule is this: stop annoying me.

You might wonder which of your policies, pronouncements, or other points of politicking have triggered this reaction.  In all honesty, none of them; from what little attention I’ve paid to political debate in America, you’re batting about even with the Republicans, though I tend to give you a slight edge due to my internal biases.  No, what’s raised my ire is the one-two punch of clueless marketing you served me today.

The first one was a fund-raising letter sent to me by Senator Hillary Rodham Clinton.  It’s nice to know that Mrs. Clinton is interested in involving her constituents in the political process, at least as far as their wallets go.  Slight problem: Mrs. Clinton is not my senator.  She doesn’t even represent a single person in my state, as I live in Ohio, not New York.

Of course I realize this was a national campaign, not a matter of local politics.  That being the case, though, the name on the envelope should have been that of your national party chairman, Dr. Howard Dean.  If he’s not popular enough to be attached to such an effort, then you need a new chair.

The follow-up fumble was a telephone call I got early this evening which also exhorted me to donate to the cause.  Now, part of the reason I get these calls is that, as a political entity, you’re free to ignore the Do Not Call list.  Both parties took shameless advantage of this oh-so-convenient exception last fall, as I observed at the time, but since the election you’d both pretty much shut up, thankfully.  The other part of the reason is that I gave a small donation to a chilly, rain-soaked young woman who rang our doorbell one evening.  At the time, I did it because I was marginally less opposed to your Presidential candidate than I was to his opponent, and because I can be a sucker for young idealists caught in the rain.  What I didn’t reckon, though I should have, was that it would put me on the “contact this guy a lot” list.

Where “a lot” isn’t usually more than twice a month, I admit, but still.

Anyway, your telemarketing temp launched into her spiel, which was nicely written, but I decided to inform her that I wasn’t interested since the last time I’d made a donation, it had gotten me onto a bunch of mailing lists.  Her response was that what actually happens is when you go out on the Internet and use search engines, they hang onto that information.

So here’s my last tip, which comes in two parts.  It goes like this.  If you’re going to give your marketdroids some kind of response for complaints like mine, try to make sure that it’s:

  1. Not a lame attempt to shift blame to some other quarter; and
  2. Not complete bull[censored].

If you haven’t written a response for that kind of complaint, then you should at least instruct your temps that ad-libbing their own bogus responses isn’t kosher.  Tell them to try a little sympathy and understanding—and, even better, have them tell prospects that their name won’t be put on every liberal-leaning mailing list in the universe!

Although please only have them tell people that if it’s actually true.  Leave the lying to the politicians.

Anyway, that’s it in a nutshell.  Remember that I’m only saying all this because I care.  Good luck.

Sincerely,
Eric

P.S. to the Republicans: stop looking so smug, because you know damned well you’d be doing the same stuff if I’d given you any money.  In fact, last year you sent me two surveys soliciting my opinions as a representative of “a select group of Republicans” in my area.  Leaving aside the pathetically transparent lie it represented (that you were only contacting a few select people in every area, as opposed to sending one to everyone you could find), it was at best insultingly biased to anyone who possesses more than an milligram of functioning brain cells.

You’re no better than the Democrats; in many ways, you’re a lot worse, and I occasionally toy with the idea of donating some small amount just to see how awful your subsequent mailings and phone calls would get.  You know, do a comparison with what the Democrats are sending me.  But honestly?  I’d really rather not hear from either of you until you learn to behave like adults.

Great Jumpin’ Career Paths

Our Man Stan recently posed these questions:

…first, what would you do if you needed to make a parallel change in careers? Meaning, same industry, different role; like moving from waiter to cook in a restaurant. Second, what if you had to make a perpendicular jump and get out of your industry all together? Meaning, different industry, different role; like moving from rodeo clown to encyclopedia salesman.

The first question is actually a little tougher to answer, because the answer depends on what you consider to be “the same industry”.  If we’re talking the web industry, I’d probably move to project coordination, since at this point I think I have a pretty good handle on all the technical pieces.  If we’re talking the computer-programming/human-computer system industry, I’d love to get into virtual-scene modeling and CAVE systems.  If we’re talking the general technology field, I would definitely love a chance to work in the field of self-organizing microsensor networks (I’ve written about that before).

Were I to switch fields entirely, I think I’d become a meteorologist; weather systems have long fascinated me, and I did consider that career path at one point in my life.  Failing meteorology, it wouldn’t be much of a radical shift to be a climatologist, which seem a lot like being a meteorologist except in terms of the geographical and temporal scales of study.  Besides, both fields do a lot of computer-based simulation, so my existing skills wouldn’t be completely useless.

I do have to admit that both are practical choices: they’re fields in which I could very likely get a job.  Those would be in contrast to my absolute top choice, which is to be an astronaut.  That was always my dream as a youngster.  I can still hope that the orbital tourism industry will get up to speed just fast enough for me to make it up there before I’m too old to survive the trip… but reality has a way of squashing those sorts of dreams.

How about you?  What would you do?

Power Conversion

While I was in Japan, my old APC BF 250 UPS up and died.  I’m not sure if I unplugged it without turning it off and thus killed the battery, or what exactly, but the end result is that it was dead dead dead.

Once I got back, I checked around to find out what I might do for a replacement.  Over at the APC site, I discovered that they sell replacement batteries and charge kits, even for old units like mine, but both options are more expensive than a brand new unit.  Even better, they have a trade-in program.  You tell them what unit you have, and then you get up to a certain number of  volt-amps in replacements.  Seriously.  You can pick multiple low volt-amp units, or one higher-rated unit.  Or maybe one higher and one low.  Whatever works for you, apparently.

So in my case, I traded in a 250vA unit for a 500vA unit, and got 10% off the replacement.  And here’s the best part: part of the trade-in process is that you can send in the old unit for free.  They generate a shipping label for you to print, and once the new unit arrives, you send them the old one.  The disposal of the lead battery is thus their problem, not yours.

If you have an APC unit you’re thinking about replacing, I’d definitely recommend the trade-in program.  You’ll pay more than you would at some on-line stores, perhaps, but what you’ll save in having them take the old unit off your hands more than makes up for it, if you ask me.

Musical Baton

I was passed a musical baton by Nick Finck, while everyone else getting the same baton ignored me.  Losers.  (With the last-minute exception of Meryl, who passed one to me just as I was preparing to post.)

Total volume of music files on my computer

8.74 gigabytes, comprised of 1,885 songs that would take 5 days, 16 hours, 8 minutes and 22 seconds to play through.

The last CD I bought was

“Decksanddrumsandrockandroll” by The Propellerheads.  The last CD bought on my behalf, as a birthday gift, was a set of the 1963 von Karajan / Berlin Philharmonic recordings of Beethoven’s Symphonies.

Song playing right now

As I post this message, it’s “When the Levee Breaks” by Led Zeppelin from “Led Zeppelin IV”.  This might be interpreted as support for Mike Davidson‘s opinion of the Zep, except that I don’t agree with it.

Five songs I listen to a lot, or that mean a lot to me

I’ll take the latter.

  • “O Come, O Come, Emannuel” (traditional hymn)
  • “Road” by Nick Drake from “Pink Moon”
  • “Driven” by Rush from “Test For Echo”
  • “4th of July” by Soundgarden from “Superunknown”
  • “Life During Wartime (Live)” by The Talking Heads from “Sand In The Vaseline: Popular Favorites 1976-1992″

Bonus addendum piece: the second movement of Beethoven’s Seventh Symphony, “Allegretto”.  It’s haunting, moving, inexpressably sad and triumphant.  It doesn’t hold emotional meaning for me the way the other songs I listed do, but it has emotional effects that are unlike almost any other piece of music I know.

Five six people to whom I’m passing the baton
  • Tantek Çelik, just to see how many times he can work in references to his girlfriend
  • Simon Willison, dashing Brit-about-town
  • Scott Andrew, ex-Clevelander and lo-fi acoustic pop superhero
  • Mark Bradbourne, new daddy and drummer
  • Gini, because she’s always meme-ing, and besides, it’s the musical equivalent of the book meme she propogated a week or two back
  • Will Kessel, because I’m curious

I’d have pointed to more web designer types, but they’d pretty much all been batoned already.

So there you have it: a little break from semanticity.  Now all we need is a music-categorization microformat, and I could merge the two.

May 2005
SMTWTFS
April June
1234567
891011121314
15161718192021
22232425262728
293031  

Archives

Feeds

Extras