Posts from 2004

Hack and Slash

Published 20 years, 8 months past

Back in January, I reacted to Peter Nederlof‘s whatever:hover by musing that it would be nice to see behaviors used to extend IE in other useful ways, like adding generated content support and so on.  Dean Edwards, regardless of whether he saw what I had to say, is doing that and more with his in-progress IE7 behavior suite.  Can you say, “will add support for attrribute selectors, multiclass selectors, and adjacent-sibling selectors to IE/Win?”  Oh yeah… I thought so.  And that’s just the beginning.  He has generated content on his list of things that will be supported, and a whole lot more besides.  The behavior is currently alpha, but it’s everything I could possibly have hoped for and more.  I’m going to be keeping a close eye on Dean’s work, and will be putting it to use as it moves out of beta.

In a similar vein, Dean also created an XBL binding to let Gecko-based browsers use Microsoft behaviors.  I think he just might be a genius.  Thankfully, he’s using his powers for good instead of evil.

Hopefully, I can get one of you XSLT gurus to do the same on my behalf.  I have a problem that’s proven beyond my ability to grasp.  Basically, I have a list of events that include start and end dates; here’s the basic markup that drives it.  I can get a list of upcoming events, no problem; I just pass in information about the current date when I run the XSLT and do comparisons.  What I need is a list of recent events, where “recent” is defined as occuring within the past three months, even if those months straddle a New Year.  I also want to get at least the most recent event even if it didn’t happen within the last three months.  And, of course, I want any results sorted in reverse chronological order.  I cannot figure out how to do all that in XSLT.  Any pointers or takers for this one?  I could really use some help.

(Yeah, yeah, doing it with some database or other would be a snap.  I’m trying to do it in XSLT.  Think of it as a creative design constraint.)

On a totally different note, here’s an interesting pair of articles from SF Gate: Gay marriage momentum stuns both backers and foes and Where Is My Gay Apocalypse?  Thanks to Jeff Veen and Simon Willison for the pointers.


Family Leave

Published 20 years, 8 months past

Travel and work have conspired to keep me from updating in a while.  We headed off to New York City (or at least its eastern suburbs) for an extended weekend at Kat’s parents’ house, so Carolyn’s now taken her first two airline flights.  She was really well behaved, which was no doubt a relief to the people seated around us in the ERJ-135s (seating capacity: 37) we took to and from JFK.  Kat’s brother Neil flew in from San Francisco to meet his niece for the first time, and some friends and family in the area gathered on Sunday to meet Carolyn.  It’s a good thing she’s so cheerful and happy to meet new people.

While we were gone, I received some e-mail that hypothesized that last week’s masthead graphic was, um… was… er… let’s just say he wanted to know if it was an extreme anatomical closeup.  In a sense, the answer is “yes.”  It was a closeup from a picture of a giraffe’s eye taken from a distance of about two feet; the same picture, in fact, that I submitted to the Mirror Project.  I’ve been told that I should have an “About the Masthead” area of the site.  Somehow, I find it more fun to leave things a little mysterious, at least for the more abstract masthead images.  After all, if I explained everything up front, I wouldn’t get amusing e-mail.

There should be plenty of opportunities for you to guess.  This week’s masthead is #5 in a series of 26, and I expect I’ll have added even more before #26 goes up at the end of July.


Gathering Stormclouds

Published 20 years, 8 months past

Okay, maybe Tantek’s right and the CSS I devised yesterday wasn’t the greatest (note to self: avoid writing journal entries at 4:45am).  And yes, it would be more elegant, at least on the markup side, to use the href values to determine how to style links.  It feels a touch clumsy, for some reason, maybe because the selectors end up being so long and I’m used to short selectors.  Go check out what he has to say and suggestions for better selectors, and while you’re at it go take a look at substring selectors to get ideas for how to do even better.  (I don’t think anyone supports *= yet, so you’re likely to have to use ^= instead.)

Back in high school, my best friend Dave and I devised a scenario where water shortages in the American southwest became so severe that states literally went to war with each other over water rights and access, fragmenting the United States in the process.  It never really went much of anywhere, just an idea we kicked around, and that I thought about trying to turn into a hex-based strategic wargame but never did.  It’s always lurked in the back of my head, though, the idea of climate-driven warfare.

According to Yahoo! News, a Pentagon report asserts that climate change is a major threat to national security; well, actually, to global security.  And that if the global climate crossing a “tipping point,” the changes will be radical and swift.  In such a situation, economic upheaval will be the least of our concerns—we’ll be more worried about adding to the climate shifts with the aftereffects of nuclear exchanges.

I actually read about this on Fortune.com a few weeks ago, and although now you have to be a member to read the full article at Fortune, there’s a copy at Independent Media TV.  The Fortune article characterizes the report as presenting the possible scenarios if global climate shifts occur, but not claiming that they are happening or will happen.  It also says that the Pentagon agreed to share the unclassified report with Fortune, whereas the Yahoo! News article says the report was leaked after attempts to hush it up.  For that matter, the Yahoo! News article makes it sound like the report claims that The Netherlands will definitely be uninhabitable by 2007, and so on.  According to the Fortune article, that was one aspect of a scenario, not a concrete prediction.  This is probably due to the Yahoo! News article being a summary of an article in The Observer, which is a production of The Guardian and claims to be the “best daily newspaper on the world wide web.”  Uh-huh.

So I guess I’m saying read the Fortune article, as it gives more information and takes a more balanced tone—not that it sounds any less disturbing, really.  The fact that the report was commissioned at all suggests that the subject is being taken seriously at the Pentagon, which is not exactly a gathering place for leftist wackos.  I’ll be very interested to see what reaction, official or otherwise, is triggered by this report in the weeks to come.  My fear is that it doesn’t matter any more, that whatever accusatory words might get thrown around will just be insignificant noise lost in the rising wind.


License To rel

Published 20 years, 8 months past

If you thought XFN or VoteLinks were the last (or only) word on lightweight semantic link annotation, think again.  Tantek writes about the idea of adding a license value to indicate a link that points to licensing terms.  In his post, the expression of this idea is centered around Creative Commons (CC) licenses, but as he says, any license-link could be so annotated.  Apparently the CC folks agree, because their license generator has been updated to include rel="license" in the markup it creates. Accordingly, I’ve updated my CC license link for the Color Blender to carry rel="license", thus making it easier for a spider to auto-discover the licensing terms for the Color Blender.

Tantek also said of the idea of applying CSS to documents that uniquely styles license-links:

I wonder who will be the first to post a user style sheet that demonstrates this.

Ooo, me, me!  Well, not quite.  I don’t have a complete user stylesheet for download, but here are some quick rules I devised to highlight license links.  Add any of them to your user stylesheet, or you can use these as the basis for your own styles.  (Sorry, but they won’t work in Internet Explorer, which doesn’t support attribute selectors.)

/* simple styles */
*[rel~="license"] {font-weight: bold;}
*[rel~="license"] img {border: 3px double; color: inherit;
  padding: 1px;}

/* add a "legal" icon at the beginning of the link */
*[rel~="license"]:before {content: url(legal.gif);}

Here’s my question: should the possible values be extended?  Because I’d really like to be able to insert information based on what kind of license is being referenced.  For example, suppose there were a c-commons value for rel; that way, authors could declare a link to be rel="c-commons license".  Then we could use a rule like:

*[rel~="c-commons"]:before {content: url(c-commons.gif);}

…thus inserting a Creative Commons logo before any link that points to a CC license.  At the moment, it’s highly likely that the only rel="license" links are going to point to CC licenses, but as we move forward I suspect that will be less and less true.  I hope we’ll soon see some finer grains to this particular semantic extension.

If you don’t like using generated content for whatever reason, you could modify the rule to put the icon in the background instead, using a rule something like this:

*[rel~="c-commons"] {background: url(c-commons.gif) no-repeat;
  padding-left: 15px;}

The usual reason to avoid generated content is that IE doesn’t support it, but then IE doesn’t support attribute selectors either, as I mentioned.  So don’t add any of these rules to an IE user stylesheet.  Use Firefox, Safari, Opera, or one of the other currently-in-development browsers instead.

In other news, I was tickled pink (or maybe a dusky red) to see that for sol 34, one of the “wake-up” songs for the Spirit team was The Bobs’ Pounded on a Rock.  My hat’s off to you, Dr. Adler!  I’ve been listening to that particular album recently, mostly to relearn the lyrics.  I’ve been singing to Carolyn when I feed her, and some favorites of ours are Plastic or Paper, Now I Am A Hippie Again, Corn Dogs, and of course Food To Rent.  It’s awfully cute that she smiles at me when I sing to her, mostly because I know one day she’ll grow up, learn about things like “being on key,” and stop smiling when I sing.

In the meantime, though, she’s perfectly happy to rock on! Carolyn, sitting in a chair with her lower half covered by a blanket, raises her left hand above her head with the index and pinky fingers extended, exactly in the manner of hard rockers and head-bangers the world over.


Bonding

Published 20 years, 9 months past

There’s something about this picture that really works for me—there’s joy and hope and melancholy all wrapped up together, and that’s a mix I can rarely refuse.  It’s available as a 16″ x 20″ poster from Cafépress, and I’m seriously considering making the purchase.  If you like the image, or if you support the cause to which all proceeds will go, then get on over there and buy it!

Personally, I do support the cause benefiting from sales of the poster, which is to resist any attempt to amend the United States Constitution to ban same-sex marriages.  I primarily support that cause because in my view, there’s no good reason why the subject of who can or can’t be married should be a part of the Constitution, amended or otherwise.  I mean, if we’re going to start amending the Constitution to prohibit behaviors we don’t like, then when do I get my amendments banning civilian ownership of vehicles that get less than 30mpg on the highway, poorly formed HTML markup, and televangelists?  And if those seem silly, how come my dislikes are less worthy of being Constitutionally enshrined than somebody else’s?

Beyond that, I’m generally supportive of what’s happening in San Francisco, at least in a general sense—I’m not sufficiently informed about the specific legal situation in California to have an opinion about the legalities, but the fundamental purpose is A-OK with me.  Because as longtime readers (all four of you) can probably guess, I see no reason why homosexual couples should have any less ability to marry than heterosexual couples.  I once was friendly with a couple who had been together twelve years, wore marriage bands, and had thrown a ceremony in which they exchanged the bands.  The works, pretty much.  Yet they couldn’t get married, legally speaking.  They were a far better example of loving pair than a lot of hetero couples I’ve known, and yet they could never be spouses.  You might be wondering… were they male or female?  It doesn’t matter.  Which is, I think, sort of my point.  It isn’t original, but I thought it was worth repeating.

Especially since we now have a new federal appeals judge in place, one who said that homosexual acts are comparable to “prostitution, adultery, necrophilia, bestiality, possession of child pornography and even incest and pedophilia.”  I’m sorry, but if you can’t perceive a difference between activities engaged in by consenting adults and, say, an action perpetrated by a person upon a corpse or an animal, then you aren’t intellectually qualified to sweep the floor of the federal appeals court, let alone sit on it.

Deep breath.  Move on.

I guess Saturday was a day for talking about aggregator experiences; in a post made that day, Meryl put forth a different perspective on the topic than I did, and at about the same time.  I agree with Meryl that an aggregator that can present a styled article should provide the option of disabling that behavior, and just delivering the text content.  I just suspect that she and I would have different settings for that preference.


Seeing What’s Out There

Published 20 years, 9 months past

A relatively recent addition to the XFN What’s Out There? page is the XFN Dumper favelet, which lists all the XFN-enabled links in a page along with their XFN values.  I decided that I wanted a different presentation and a little more information, so I hacked up ben‘s XFN Dumper v0.2 and came up with XFN Dumper v0.21, which is currently in beta due to its problems running in both kinds of Internet Explorer.  If you’d like to try it out anyway, you can find it on my new XFN Tools page.  Once it exits beta I’ll move it over to the GMPG site.

I’ve spent the last two weeks (minus repair time, of course) running NetNewsWire Lite, and I’ve discovered that it’s addictive in exactly the wrong way: hard to give up, even though I really want to do so.  This is no reflection on the program itself, which is excellent.  The problem I have is with the fundamental experience.

Allow me to explain.  In order to visit all my favorite weblogs/journals/whatever, I had a collection of home page URLs in a group in my favorites toolbar.  That way I could open it up and go straight to a site, or else command-click on the folder to open them all up in tabs.  The whole group would open up, each site to its own tab, and then I could close each tab as I read what was new, or else determined that there wasn’t anything new since the last time I dropped by.

Now, of course, I have an RSS aggregator that tells me when something new has appeared on a site.  Thanks to NetNewsWire, I’ve become much more efficient about keeping up with all the weblogs I read.  I’m also losing touch with the sites themselves, and by extension, with the people behind those sites.

What I’ve come to realize is that half the fun of visiting all those sites was seeing them, in enjoying the design and experience that each author went to the effort of creating—the personality of each site, if you will.  Sure, I’ve seen The Daily Report a zillion times; who hasn’t?  I still got a bit of an emotional boost from dropping by and feeling the orange, even if Jeffrey hadn’t written anything new.  The same goes for mezzoblue, and stopdesign, and all the others.  Maybe it’s the same impulse that makes me play a record I’ve always liked, or re-read a favorite book for the twentieth time.  It doesn’t matter.  Part of my connection to the people behind the sites seems to be bound up in actually going there.  Using an aggregator interrupts that; it lessens the sense of connection.  It distances me from the people I like and respect.

And yet, thanks to that same aggregator, I can keep up with all those weblogs and half again as many news feeds in one tidy package.  The latest Slashdot Science and Apple news, xlab OS X, the W3C, and more feeds come pouring in.  I don’t have any connection with those sites, so that doesn’t bother me; in the case of Slashdot, I actually prefer getting the feeds because it means I can visit the referenced sites without subjecting myself to the comments.

The obvious solution is to strike a balance:  to use the aggregator for news, and go back to my tab group to read personal sites.  I’m going to give it a whirl, although the raw efficiency of the aggregator is so compelling that I feel a deep reluctance to unsubscribe from the personal-site feeds.

That’s what I mean by the experience being addictive in exactly the wrong way.

I suspect that what I may do is keep all the feeds, but when any personal site is updated, I’ll go visit them all by command-clicking the bookmark group.  That way I’ll catch up with the folks who have something new for me to read, and at the same time visit everyone else—just to say, if only to myself, “You’re still there, and I’m still dropping by to see you, and that’s how it’s supposed to work.”


Social Spam Shield?

Published 20 years, 9 months past

I expressed a faint hope yesterday that the spam problem would be solved, and wouldn’t you know it, a proposal along those lines popped up in my RSS feeds.  A couple of researchers have published a paper describing a way to use social networks as an anti-spam tool.  In brief, the idea is to build e-mail cluster maps.  As reported in Nature, the researchers:

…decided to tackle the problem by taking advantage of the fact that most people’s e-mail comes from a limited social network, and these networks tend to be clustered into clumps where everyone knows each other.

If I understand the concept correctly, those of you who decide, on a whim, to e-mail me with a question about CSS or to comment on something I’ve written would never get through if I were using such a system.  If you’re nowhere near my cluster, then I don’t see how you’re going to get through.  If the only criterion for being assumed a ‘real person’ is that you’re sending from a cluster, then all spammers would have to do is form their own clusters.

I’m quite interested in social networks these days, but I’m not sure that spam is one of the problems a social network can really fix.  At this point, I’m coming to believe that e-mail delivery fees are the only possible solution, and I have grave doubts it would work.  I’ve seen this idea described a few times, and here’s how it generally works.

  • Everyone gets to set a cost for accepting mail.  I could say, for example, any message has to have a 10-cent delivery fee paid for me to even accept it.  You might set the threshold at five cents, or 50 cents.
  • When sending a message, you authorize up to a certain amount to be paid for delivery.  I might say that I’ll attach three cents to every outgoing message.  For any account with that delivery fee (or lower), the message will reach the inbox, and I’ll be charged three cents.  For any account with a higher delivery fee, the message is bounced back with a “needs more money to get through” error.
  • Anyone can choose to refund the delivery fee, either one at a time or by creating a “free entry” whitelist.  So I might set my delivery fee at 50 cents, but permanently give my friends a free pass into the Inbox.  For random correspondents with legitimate inquiries, I could give their delivery fee back.  For spam, I could read it and collect the delivery fee.

It sounds great, and the technology could probably be created without much difficulty.  The general idea is that if you don’t want to see spam, you reject all messages with too low a delivery fee; if you want to stick it to the spammers, you read their messages and collect their money.  I still see a few problems with the idea.

  1. If a spammer manages to fool my system into thinking the spam is coming from a friend, it gets in for free.  If the mask is good enough, I never get a chance to collect the fee.
  2. Who’s going to volunteer to run the micropayment system that would have to underpin the whole setup?  And if there are no volunteers, then where’s the business model that would be needed to get a company to do it?
  3. How does one keep the spammers from hacking, bypassing, or otherwise fooling the micropayment system, and wouldn’t any effective techniques to do so work just as well for the current mail system?
  4. Assuming there is a micropayment structure in place, what’s to keep large ISPs from charging everyone a cent to pass a message through their servers—thus making e-mail no longer free for anybody?

Maybe that last point would be an acceptable price to pay for ending spam.  It would pretty much kill off listservs, though, and that would sadden me quite a bit.  Even at a penny per message, every post to css-discuss would cost $35.67 to deliver to all the subscribers (as of this writing).  On average, we get about 50 posts per day, so that’s $1,783.50 daily, or $650,977.50 annually.  If I had that kind of money, I’m pretty sure that I wouldn’t spend it on a mailing list.  I’d buy a Navy fighter-bomber instead.

On the other hand, with a delivery-fee e-mail system in place, I could very easily set up an account where people could send their CSS questions for a delivery fee of, say, $29.95.  If I accepted delivery, that would get you a detailed answer to your question, or else a refund of the delivery fee if I didn’t answer (or there was no answer to be had).  So that would be kind of cool.  I suppose I could approximate the general idea today using PayPal or some such, but that would mean going to the effort of setting it up, which isn’t something I’m likely to do given that I have no evidence that there’s any real demand for its existence.  Actually, the presence of css-discuss pretty much says that there isn’t, since it’s a whole community of people providing help for free.

So I got started on all that because of the idea of using social networks for spam countermeasures, and like I said I’m interested in social networking these days.  In that vein, I was rather amused to see myself at #2 and #4 on rubhub’s new Top 10 lists, and not in the least bit surprised to find Zeldman sitting atop both lists.

I was also quite fascinated by Jonas’ ruminations on how XFN, VoteLinks, and related technologies can easily form the basis for rudimentary trust networks.  Jonas, a sociologist by training, has been writing some very interesting things about the semantic web and social networking recently, which is why I’ve just added him to my blogroll and RSS aggregator.  As he points out, combining XFN and VoteLinks would be a snap, and has the potential to enrich the semantics of the Web.  Instead of just counting links to a page, a community assessment of that page could be tallied.

What interests me even more is the next step.  What else can be done with link relationships, and how will the pieces fit together?  How many small, modular metadata profiles would it take to begin semanticizing the Web?  I suspect not too many.  This seems like a clear case of emergent properties just waiting to happen, where every incremental addition dramatically increases the complexity of the whole.  John Lennon once said that life is what happens while you’re making other plans.  Meaningful technological advancement seems to be what happens while committees are making other plans.  It could very well be that the Semantic Web will come to pass because the semantic web arose on the fringes and paved the way—that the latter will become the former, simply by force of evolution.  That strikes me as rather poetic, since it means that the principles Tim Berners-Lee followed in creating and defining the Web would become the keys to where he wants to go next.


Fear The Cute!

Published 20 years, 9 months past

Okay, enough talking about computer repair; it’s time for another picture of Carolyn.  It’s one of the first good ones we have of her smiling, and this is, for her, a relatively understated smile.  When she’s happy, she’ll let loose with grins so wide her eyes scrunch shut.  She actually smiles quite often, but each one is of fairly short duration—and when she does smile, we’re too busy enjoying the sudden rush of dopamine and other neurochemical whatnots our brains start pumping out.  It’s really, really hard not to smile back.  Not that we’re resisting.

I keep meaning to crate an actual picture gallery on her personal page, but other stuff keeps getting in the way.  Heck, I haven’t even created an e-mail account for her, mostly on the grounds that it does her no good until she learns to type.  I just hope that by the time she’s old enough to want an account, Carolyn won’t have to deal with the volume of spam we see every single day.  I’m not holding my breath, though.

Love the haircut, myself.  I think this may well be the first published picture for which she tries to hurt me, a decade or so from now.  Sorry, sweetheart, but it was just too cute not to share.


Browse the Archive

Earlier Entries

Later Entries