meyerweb.com

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

Archive: September 2007

Director’s Commentary

In this latest resurgence of the “are blog comments distilled joy or pure evil?” conversation, I got tagged by Alastair Campbell as someone whose site has good comments.  This would be a great time for an abashedly mumbled “aw, shucks, it ’tweren’t nuthin'”, except saying so would be a complete lie.

Want to know how I get good comments?  I work for them.  Part of that is striving to write good posts that will get good comments.  Another part is leading by example.  And a third part is a willingness to filter the comments I get, and saying as much up front.

The first part is in many ways the hardest, because what I think is a good post may be judged otherwise by my readers.  I could spend days and days and days on a post that merits a collective “meh”.  From that, I learn.  If this were solely a “me shouting whatever comes to mind” site, then I wouldn’t care so much, but this is a conversation site.  The goal here is not for me to pronounce my views from on high and thus change the world.  The goal here is to share information, with the sharing going in both directions, and thus change ourselves.

The second part is a lot easier for me, but seems to be harder for some.  It’s very, very rare that I will post confrontationally or abusively.  The few times I’ve done so, I’ve gotten some strong pushback, and no wonder.  The vast majority of the time, the posts conform to the site’s overall Airbag Blog Advisory System warning level of Guarded (“Someone might disagree with you, but only after apologizing for it first”).  Unsurprisingly, the non-spam comments that come in are respectful, helpful, and civil about 99% of the time.  Whether the tone of the site only draws people who are naturally that way or it shepherds all kinds of people in that direction is unknown, and to me wholly irrelevant.

It’s also the case that when the comments and the post match in tone, it’s much more likely that subsequent comments will keep to the same tone; that is, that the commenters help me in setting the tone for the site.  And I always, always appreciate that they do so.  (So thank you!)

The third part can be taken one of three ways.  You can say that I’m like a curator who lovingly tends a growing collection of thoughts and contributions, only excising those that would damage the overall whole; or that I’m a tiny fascist who only lets through comments that meet my personal standards of acceptability.  The thing is, both are true (which is the third way you can take it).

Y’see, this here blog is to me an extension of my home.  In my house, some things are acceptable and others are not.  Nobody is allowed to smoke in my house, for example.  In terms of speech, I’m pretty tolerant of what others have to say, but there are lines and I will enforce them.  Have enforced them, in fact, usually gently—although I once very nearly ejected an out-of-town friend who was staying with us from my house for something that was said.  And no, I won’t tell you who or why.

So as I say, you can take that as abrogation of my visitors’ freedom of speech and an exercise of my right to make my home the kind of place I want it to be.  It really is both.  I don’t see that as a problem.

I treat css-discuss the same way, actually.  It is, and always has been, a benevolent dictatorship, with policies that are enforced.  When people go off-topic, the moderators say so and end the threads.  When people get abusive, they’re warned to stop it, and can and will be ejected from the list.  In fact, I’ve done so twice in the list’s five-year history.  The moderators and I work actively to shape the list, and it has paid off.  The community now mostly polices itself, and the need for moderator intervention is becoming more rare.  Over time, it’s become a very helpful community with a very high signal-to-noise ratio.  Others have observed that it’s spawned one of the few truly useful group-run wikis in the world.  None of that just magically happened.  It required years of effort by me, and then by the moderation team.

(And before someone says that a small mailing list is different than a globally available blog, remember that css-d has over 8,300 subscribers from all over the world.)

The other person who got mentioned in Alastair’s post as having a good-comment home was Roger Johansson, who recently contributed his own thoughts on the topic.  In that post, he hits a lot of the pros and cons of allowing comments: the feedback, the spam, the community, the abuse.  One of the most subtle effects of comments is that it does make you think harder about what you post:

I realized that as I was writing I had started to subconsciously think about what kind of comments a post would trigger. I found it harder and harder to write freely, and to express myself the way I really want to.

It’s the same for me.  The few times I’ve posted things I knew were going to contentious, it was after a lot of thought and consideration.  In fact, almost everything I post goes through some degree of pre-approval based on what kinds of comments I think it will trigger.

Where I would seem to part ways with Roger is that I don’t think that’s a bad thing.  One of the things those opposed to blog comments cite is John Gabriel’s Greater Internet F—wad Theory (warning: contains strong language)—as if it only applied to commenters.  The basic anonymity of the Internet isn’t a case of not knowing names: it springs from the very, very low chance that we’ll ever meet in person.  It applies just as much to those who write blog posts as those who comment on said posts.

Still, that sounds like I’m allowing the community to impose some constraints on me.  Actually, it doesn’t sound like that: it is that.  But I choose to do that, and frankly, I don’t think anything is lost in the bargain.  Quite the contrary.  I think more than a little is gained.

So weirdly enough, I find myself in disagreement with Joel Spolsky when he says:

The important thing to notice here is that Dave [Winer] does not see blog comments as productive to the free exchange of ideas. They are a part of the problem, not the solution. You don’t have a right to post your thoughts at the bottom of someone else’s thoughts. That’s not freedom of expression, that’s an infringement on their freedom of expression.

It’s the last sentence where I disagree, not the rest of it, which is provided for context.  That last sentence is like saying that when I have an in-person conversation, anything the other person says is an infringement on my freedom of speech.  In fact, it’s like saying that my response to his post infringes on his freedom of speech.  Which is just silly.

Neither is my pre-filtering of posts an infringement of my speech.  I am not forced to allow comments, nor to pre-judge my posts based on the expected reaction.  It is something I voluntarily accept as part of having an extended conversation.  If I felt that was becoming too much of a burden, I’d turn off comments.

I don’t have comments here out of obligation to some imagined right.  I have them because they’re invitation to contribute, to enrich, to converse.  Just look at what happened with the reset styles: over the course of a few posts, my original work was built upon and improved.  The same thing happened in the early days of S5.  Without comments, neither of those efforts would have gone as far nor been as well-developed as they eventually were.  No, not even with e-mail, which is one-to-one and so doesn’t allow for the commenters to converse with each other.

Of course, not everyone wants to have a conversation right on their site, which is fine as well.  I don’t think Daring Fireball is lessened for its not having comments.  But part of the reason I think that is that John, being a strongly opinionated sort, would probably get the same kinds of comments in return; the bread you cast upon the waters will be returned to you tenfold.  And the fact that much of his posting is about Mac and Windows wouldn’t help much, either.  Nothing invites comment incoherency faster than having a blog about a contentious issue.  (See also: political blogs.)

As well, there’s nothing that says one must have comments always on, or always off.  It’s generally the case that I don’t open comments on the most personal of my posts, particularly those about Carolyn.  In those cases, I close comments because I’m writing them for me and to share those moments with the world, and don’t want positive or negative feedback.  They’re not meant to be conversations, in my view.  They’re snapshots.

(I’ll admit that I may be influenced by the fact that it was a Carolyn-related post that earned me one of the most vitriolic personal attacks that I’ve allowed to stand.)

It is absolutely the case that having good comments is hard work.  It requires leading by example and a willingness to curate/censor the comments that do come in.  And I absolutely think that anyone unwilling or unable to do that work should disable comments.  Because when a site’s comments devolve into “Useless noise[;] Thoughtless drivel written by some anonymous non-entity“, that’s as much the responsibility of the site’s author as of the commenters themselves.

Thus, for meyerweb, I hold to the inverse of Jeremy’s corollary of Sturgeon’s law: here, comments should be enabled 90% of the time.  I would not think to apply either rule to the world at large, of course.  For many sites, comments probably should be off by default.  But not for mine.

A Vast Wasteland

I think it’s pretty much obvious to anyone with half a brain that information wants to be free—both free as in beer as well as free as in speech.  If it weren’t for huge soulless megacorporations imprisoning content behind unreasonably high paywalls and fascist licensing terms, we’d already be collectively a lot richer than we are today.  Anyway, it’s not like people would pay for most of their crap anyway, and since they never would have gotten that money, then it’s not like they’ve lost anything.  Hell, chances are that by being able to preview merchandise in full, sales are actually improved.

What?  Wasn’t this Talk Like A Pirate Day?

Another Soul Lost to SketchUp

Hitting a link shared by Unstoppabot, who really needs to get around to fixing his feed linking policy (“View this site”?  Lame!), I was seized with another spasm of appreciation for the deliciousness that is SketchUp.

I did a moderate amount of 3D modeling back in the day.  The specific day in question would be the one where we all thought that images of rendered 3D models and, whenever possible, blobs of text were the absolute last word in Great Web Design.  Remember that?  Wasn’t it fantastic?  When every page title could be a bunch of extruded and beveled sans-serif letters viewed slightly from above, with the whole mess of text angled away from the observer?

Good times.

So anyway, while I was cranking out renderings of page title text and university logos, I also spent some time creating scenes of other stuff.  You can find some of the results if you dig deeply enough here on meyerweb, but that’s not my point.  What I’m trying to say is that I enjoy a bit o’ three dee more than most, and have some knowledge of how difficult it can be to construct models.

When I first heard about SketchUp, I was intrigued but didn’t really buy into all the hype.  It couldn’t be that easy, could it?  And then I watched someone using it—at An Event Apart, as it happens; and no, it wasn’t one of the attendees—and was captivated.  I downloaded the installer while I was sitting there, watching him create and modify shapes as easily as sketching them on paper.  And then I left it uninstalled, because I was afraid of what it would do to my free time.

A few days ago, I finally broke down.  I actually did have a legitimate reason to install and use it, a really good one, but of course I’d been waiting for any reasonable pretense to launch the .dmg and make with the modeling.  So I did.

Color me deeply impressed.  While you’re at it, add some heavy tints of addicted.  I started by modeling our kitchen, and now I want to do the whole frickin’ house.  I’m starting to eye local landmarks for recreation and contribution to the Warehouse and Google Earth.

I don’t have time for this.  I need help.  Stop me before I model again!

Browsers Boosted

In response to my post about Camino and Firefox, Simon and Smokey Ardisson sent along the following:

  • AsceticBar by (who else?) Jon Hicks Stuart Morgan removes all the icons in Camino’s Bookmarks bar without killing them off in the actual Bookmarks menu.  Exactly what I wanted.  Thanks to Smokey for pointing it out, and Hicksy Stuart for writing it!

  • A Firefox extension that fixes its last-tab behavior in OS X when “always show tab bar” is turned on.  This was contributed by Simon in a comment on Bugzilla bug 348031, and once I installed it, I found Firefox much easier to tolerate.  I hope that this gets permanently fixed in a future version of Firefox, but until that happens, we’ve got the extension to paper over the problem.

My heartfelt thanks to both gentlemen for their pointers and efforts!

Odd Seating Arrangments

This evening, we decided to cap off the weekend with dinner out.  Carolyn was in the mood for french fries, and the rest of us were looking for decent dinner fare, so we decided to hit Brennan’s Colony.  This is one of the more fascinating restaurants on our side of town.  From both the outside and the inside, it looks like a low- to middle-rent bar, all uncushioned wood benches and odd angles and dimmish lighting.  The baseline menu is burgers and fried food at very affordable prices.

And then you get the dinner menu, and you wonder from which other restaurant they swiped their menu.  Chicken breast stuffed with goat cheese in a bearnaise reduction, or words to that effect.  Mint-crusted New Zealand rack of lamb.  Et cetera.  It is, to use a word I picked up on my last trip to Ye Jolly Olde Englande, a gastropub, only with really good food.

We hadn’t gone for a while because, being a bar, smoking was permitted, and while they had an area labeled “No Smoking” it was about as effective as setting up a ring of buoys just offshore and marking that area “No Water”.  We used to go every now and again in olden days, but after Carolyn’s arrival, it was stricken from our dining list for the obvious health reasons.  However, Ohio voters passed an indoor smoking ban late last year, so we could once again eat and breathe.  Everybody woohoo!

Only when we arrived and asked for a table on their newly opened outdoor patio, we were told Carolyn wasn’t old enough to be seated there.  We could eat indoors, but the patio was off-limits to anyone under the age of eighteen.  This baffled us just a little all by itself, and then we turned around to behold a pre-teen boy sitting at the bar, eating a sandwich and drinking a Coke.  At least we hoped it was a Coke.

We brought this oddity (and, if I’m not mistaken, violation of Ohio state law) to the staff’s attention, and were told that he was seated there because they were so busy.  But no kids on the patio!  No no!  That would be, um, whatever they feared would come of allowing children to eat at an outdoor table.  The apocalypse, no doubt.

So we ate at The Tavern Company a little way down the street, where they were more than happy to have us sit wherever we liked, indoors or out—the presence of a smallish, well-behaved child notwithstanding.

I think we’ll keep to that seating arrangement for as long as the policy at Brennan’s remains.

Tweaking Camino

A while back, I got fed up with the memory leaks of Safari, but found Firefox to be a bit too poky for everyday browsing.  Also, I can’t even find words to describe my seething hatred of Firefox’s insistence on keeping a blank window open when I close the last tab in said window.

So I started using Camino as my default surfing browser.  Firefox is still my web development environment, of course; I just seethe for a moment when a blank window occurs and then keep going.  Life in Camino has been a mostly positive experience, but there are a few things that really irk me.  I’m wondering if the (Lazy)web can help me fix them.  To wit:

  • The form autofill routines latched on to some early mistakes of mine, and now just will not let go (for example, my name gets filled into the e-mail field and vice versa when commenting on WordPress blogs).  I want to fix this.  Where do I find that information?

  • Safari has an autofill feature I really like, which is that it remembers every input ever made for a given field on a given page, and uses them for autocompletion.  For example, it remembers every blog post title I’ve ever input through it, which helps me avoid duplicates.  Is there a way to get or add something similar for Camino?

  • Is there a way to turn off all favicons, including the default green diagonal bookmark, in the Bookmarks bar, but leave them in the Bookmarks menu?  All I can find is browser.chrome.favicons, which seems to kill all favicons everywhere, and doesn’t seem to turn off the green guys (unless I did something wrong).

Camino hasn’t been all pain, certainly.  I absolutely love its state restoration feature, for one.  And once I got into about:config and flipped a few settings (such as disabling “Delete” as a back button equivalent), and ran the shell command to get inline URL autocompletion (as documented most of the way down this “Hidden Preferences” page), I was much more satisfied with my Camino experience.  I’d just like to get it the rest of the way there, if I can.

Diagnostic Styling

On stage at An Event Apart Chicago, I made reference to recent efforts I’ve been making to develop a set of “diagnostic” styles.  I’d hoped to have them ready for presentation in Chicago, but didn’t get it done in time.

Well, they’re still not really done, but as I’ve now torn them apart and rebuilt them three or four times, with no real end to that cycle in sight, it’s time for me to get them off of my hard drive and into the public eye.  It’s a little bit complicated, so rather than post the whole thing in this entry, I’m going to link to a demonstration page.  I first want to say a few things about it, though.

The primary goal here is to have a set of rules that can be applied during the development phase of a new layout.  These rules’ aim is to visually highlight problems in the markup.  For example, here’s one of the rules:

a[href="#"] {background: lime;}
a[href=""] {background: fuchsia;}

That brings some eye-watering attention to any link that has an empty href, or is (most likely) being used as a JavaScript trigger with no fallback.

Where things got tricky was when I wanted to do things like higlight images that didn’t have alt or title attributes.  In a perfect CSS3 world, I could just say img:not(img[alt]) to select non-alted images.  At least, I think that’s what I would say—:not() syntax makes my temples throb.  Since I was developing these with the idea of releasing them to a more general development audience, though, I decided to use regular old non-:not selectors.

So what I ended up doing, in slightly simplified form, was this sort of thing:

img {outline: 5px solid red;}
img[alt][title] {outline-width: 0;}
img[alt] {outline-color: fuchsia;}
img[alt], img[title] {outline-style: double;}
img[alt=""][title], img[alt][title=""] {outline-width: 3px;}
img[alt=""][title=""] {outline-style: dotted;}

The logic works out like so:

  1. Set all images to have a big red outline.
  2. If an image has both alt and title attributes, set the outline width to zero.
  3. If an image has an alt attribute, set the outline color to fuchsia.  This means the outline of any image that doesn’t have an alt attribute will stay red.
  4. As long as an image has either an alt or a title attribute, make its outline style double.
  5. If an image has an empty alt with any kind of title, or vice versa, make the outline’s width three pixels.
  6. If an image’s alt and title attributes are both empty, then make the outline dotted.

Whew.  Maybe I piled a few too many conditions in there, but I wanted to get some finer granularity on the results, which you can see demonstrated (along with several other things, like highlighting table headers without scope attributes and tables without summary attributes) at the diagnostic demonstration page.  On that page, you’ll see a number of examples and the style sheet that drives them all.  If it’s getting in the way of seeing what’s going on, move the mouse over it to mostly clear it away without actually removing it.  Mouse back out to bring it back.  (Maybe I should reverse those states—what do you think?)

Admittedly, much of what these styles do can be replicated with tools like the Web Developer Toolbar.  The advantage I find with writing my own diagnostic styles is that I can tune them to present exactly the way I want them.  Outlining deprecated elements is fine, but what if I’d rather make them lime-green on cyan to really drive the point into my optic nerves?

Anyway, I don’t for an instant think that these constitute a replacement for the WDT.  They’re just another handy tool to have in the toolbox.

A final note: when actually using diagnostic styles, all of the declarations should be marked !important so as to ensure their application.  I left those directives out of the demo page for clarity’s sake.  If you’re going to use diagnostic styles of this sort in your own projects, remember that you’ll need to add them.

I’m putting these out for comment, suggestions, and general community improvement.  Anyone see things we could add or upgrade?  Let us know!

Torna A Surriento

Ma nun me lassà, Nun darme stu turmiento!

Luciano Pavarotti died last night of pancreatic cancer at the age of 71.

Among my “classical” recordings, the original Three Tenors concert holds a special place, one that has survived nearly every iPod reorganization I’ve undergone.  What I find most fascinating about that recording is the marked contrast between the three stars, and just how much Pavarotti stands out.  I’ve thought about the reasons why that is, and I think it comes down to his restraint in the use of vibrato.  Whenever I hear a singer whose long notes are more warble than tone, I wince.  I recognize the physical skill that goes into producing the sound, but the result is actually uncomfortable to me.  This is why there’s hardly a soprano I can stand; they all seem to exist solely to find long notes to strangle.

Pavarotti, in contrast, used vibrato as a shading on his notes.  At their core, they were long and pure and steady.  Yes, at times he went for all-out vibrato, but it always seemed to make sense when he did.  He wasn’t warbling to show that he could do it; he did it when and how it was right.  That, coupled with the sheer power of his voice, creates an emotional punch that I’m powerless to comprehend but joyful to behold.

I listened to some Pavarotti this morning, and though his heartbreaking renditions of “Nessun Dorma” and “Torna A Surriento” have always misted me up a little, this time there was an extra tightness in my throat.

Part of me hopes that nobody is asked to sing at his memorial services; or, if anyone is, that they turn down the invitation.  Nobody could do the job as well as he would have.

E noi dovrem, ahimè, morir, morir!

September 2007
SMTWTFS
August October
 1
2345678
9101112131415
16171819202122
23242526272829
30  

Archives

Feeds

Extras