meyerweb.com

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

Archive: 'Commentary' Category

The Pivotal Ways

Five years ago yesterday, the suave and debonair Ethan Marcotte debuted a talk titled “A Dao of Flexibility” at An Event Apart Seattle.  I still remember the feeling in the room.  Those of us who were there realized that it was a pivotal moment for the web, even before Ethan had left the stage.  It was the moment that responsive web design burst forth into the world.

The title, and content, of Ethan’s talk explicitly paid homage to the rugged and handsome John Allsopp’s “A Dao of Web Design”, published fifteen years ago today at A List Apart.  It’s hard to overstate how much wisdom and prescience is distilled into that deceptively short piece.  As I said in the testimonial I contributed to ALA’s remembrance:

John’s insights are as sharp and relevant as ever, especially when we realize the web’s inherent flexibility isn’t just about layout—that, in fact, layout flexibility is one of the web’s least important features. I try to reread “A Dao of Web Design” at least once a year. You should, too.

There’s not much more I can add, and honestly, anything I tried to add to these seminal works of brilliance would only cheapen them.  Go, read; go, watch.  Remember where we’ve come from, and use that foundation to chart where we’re going.

On This Day

Earlier today, Facebook announced a new feature called “On This Day”.  With On This Day, you see pictures, posts, and other events that occurred on a given day.  If you’re familiar with Timehop, it seems very much like a Facebook-only Timehop.  That will probably seem limited and broken to actual Timehop users, but for the vast majority of Facebook users, it will be a new and potentially very welcome feature.

As you can imagine, given what happened with Year in Review, I’m very interested by On This Day.  I haven’t interacted with the actual product yet, so I don’t know what kinds of opt-in or opt-out features will be present.  If any.  From the screenshots in the Facebook announcement, it looks like they’ve taken a much more neutral direction with the visual design.  There are calendar pages and abstract photos, with few of them expressing much in the way of emotional content.  An exception is seen at the top center of the banner image on the announcement, depicting what appears to be a woman in love, but that’s actually a decoration on the banner, instead of a UI component.  Whether those sorts of things will show up in the UI, I don’t know.

But this is what I wonder: is Facebook about to hurt a bunch of people?  From the announcement:

To see your On This Day page, you can click on the On This Day bookmark, search for “On This Day,” or visit facebook.com/onthisday. You might also see a story in your News Feed.

Putting “a story in the News Feed” is exactly how Year in Review became a viral news story.  And it’s what distinguishes On This Day from Timehop or ThinkUp (which has “your most popular update” features).

If I install Timehop, for example, I know what I’m getting into.  I’m actively, consciously deciding to revisit events from past years by way of Timehop.  I can decide not to launch it at all on certain days, if I know what I see would be too painful.

On This Day, on the other hand, is part of an existing ecosystem.  Dropping On This Day into the Facebook news feed without consent is very much like having Timehop install itself onto your smartphone and then auto-launch, all without asking.  If this happened, we’d (rightly) take the responsible parties to task.  Patronizing dismissals that “you use a smartphone, you get what you deserve” would be relatively thin on the ground, whereas I’m sure there will be plenty of that directed toward any Facebook user upset by what an On This Day new feed entry shows them.  That was certainly the leading line of condescension around the Year in Review news feed post.

There isn’t much more to go on in the announcement, though I did notice:

…you can choose to subscribe to notifications so you’ll be alerted when you have memories to look back on. You can also edit and delete old posts, or decide to share your memories with friends.

Editing or deleting old posts is interesting, if a bit troubling to the historian in me, and the ability to sign up for notifications is a welcome sign of opt-in ethics, but what I notice here is what’s missing:  I don’t see any reference to an ability to opt out of On This Day, either for certain days or altogether.  It might be there and simply not referred to in the product announcement, but I wonder if this is something that Facebook users will simply have to get used to.

The timing of this has a personal resonance.  As I wrote about yesterday, we just passed the first anniversary of the day Kat and I were told about Rebecca’s second tumor.  For the next eleven weeks, both our posts and pictures from last year, wherever they’re housed, will form a chronicle of the last days of our daughter’s life.  How will we react to Facebook, how will we feel about our experience there, if On This Day constantly reminds us of those events?  Will this product increase our affinity with Facebook, or our antipathy?  Perhaps we might go to Facebook to catch up with friends and joke around with them a bit, as a form of mental respite.  Or, perhaps, we would have done that, but now will be unable to do so.  We’ll soon find out.

Lest anyone misunderstand, this isn’t just about Facebook.  It’s about every service or product that seeks to increase user affinity, and avoid user antipathy.  Facebook just happens to be providing some very obvious grounds on which to base these conversations.  Given their line of business and scale of operation, that’s probably to be expected.  I’ll be following this with great professional and personal interest.

Well, That Escalated Quickly

This post is probably going to be a little bit scattered, because I’m still reeling from the overwhelming, unexpected response to the last post.  I honestly expected “Inadvertent Algorithmic Cruelty” to be read by maybe two or three hundred people over the next couple of weeks, all of them friends, colleagues, and friends who are colleagues.  I hoped that I’d maybe give a few of them something new and interesting to think about, but it was really mostly just me thinking out loud about a shortcoming in our field.  I never expected widespread linking, let alone mainstream media coverage.

So the first thing I want to say: I owe the Year in Review team in specific, and Facebook in general, an apology.  No, not the other way around.  I did get email from Jonathan Gheller, product manager of the Year in Review team at Facebook, before the story starting hitting the papers, and he was sincerely apologetic.  Also determined to do better in the future.  But I am very sorry that I dropped the Internet on his head for Christmas.  He and his team didn’t deserve it.

(And yes, I’ve reflected quite a bit on the irony that I inadvertently made their lives more difficult by posting, after they inadvertently made mine more difficult by coding.)

Yes, their design failed to handle situations like mine, but in that, they’re hardly alone.  This happens all the time, all over the web, in every imaginable context.  Taking worst-case scenarios into account is something that web design does poorly, and usually not at all.  I was using Facebook’s Year in Review as one example, a timely and relevant foundation to talk about a much wider issue.

The people who I envisioned myself writing for—they got what I was saying and where I was focused.  The very early responses to the post were about what I expected.  But then it took off, and a lot of people came into it without the context I assumed the audience would have.

What surprised and dismayed me were the…let’s call them uncharitable assumptions made about the people who worked on Year in Review.  “What do you expect from a bunch of privileged early-20s hipster Silicon Valley brogrammers who’ve never known pain or even want?” seemed to be the general tenor of those responses.

No.  Just no.  This is not something you can blame on Those Meddling Kids and Their Mangy Stock Options.

First off, by what right do we assume that young programmers have never known hurt, fear, or pain?  How many of them grew up abused, at home or school or church or all three?  How many of them suffered through death, divorce, heartbreak, betrayal?  Do you know what they’ve been through?  No, you do not.  So maybe dial back your condescension toward their lived experiences.

Second, failure to consider worst-case scenarios is not a special disease of young, inexperienced programmers.  It is everywhere.

As an example, I recently re-joined ThinkUp, a service I first used when it was install-yourself-and-good-luck alpha ware, and I liked it then.  I’d let it fall by the wayside, but the Good Web Bundle encouraged me to sign up for it again, so I did.  It’s a fun service, and it is specifically designed to “show how well you’re using your social networks at a more human level,” to quote their site.

So I started getting reports from ThinkUp, and one of the first was to tell me about my “most popular shared link” on Twitter.  It was when I posted a link to Rebecca’s obituary.

“Popular” is maybe not the best word choice there.

Admittedly, this is a small wrinkle, a little moment of content clashing with context, and maybe there isn’t a better single word than “popular” to describe “the thing you posted that had the most easily-tracked response metrics”.  But the accompanying copy was upbeat, cheery, and totally didn’t work.  Something like, “You must be doing something right—people loved what you had to say!”

This was exactly what Facebook did with Year in Review: found the bit of data that had the most easily-tracked response metrics.  Facebook put what its code found into a Year in Review “ad”.  ThinkUp put what its code found into a “most popular” box.  Smaller in scale, but very similar in structure.

I’m not bringing this up to shame ThinkUp, and I hope I haven’t mischaracterized them here.  If they haven’t found solutions yet, I know they’re trying.  They really, really care about getting this right.  In fact, whenever I’ve sent them feedback, the responses have been fantastic—really thoughtful and detailed.

My point is that ThinkUp is a product of two of the smartest and most caring people I know, Gina Trapani and Anil Dash.  Neither of them comes anywhere close to fitting the Young Brogrammer stereotype; they are, if anything, its antithesis, in both form and deed.  And yet, they have fallen prey to exactly the same thing that affected the Year in Review team: a failure to anticipate how a design decision that really worked in one way completely failed in another, and work to handle both cases.  This is not because they are bad designers: they aren’t.  This is not because they lack empathy: they don’t.  This is not because they ignored their users: they didn’t.  This is such a common failure that it’s almost not a failure any more.  It just… is.

We need to challenge that “is”.  I’ve fallen victim to it myself.  We all have.  We all will.  It will take time, practice, and a whole lot of stumbling to figure out how to do better, but it is, I submit, vitally important that we do.

What Not To Say to a Grieving Parent

In the face of tragedy and grief, it’s hard to know what to say or do.  And one thing I’ve noticed is that some people—not most, maybe even not many, but more than enough—say and do what they think would help them, without really considering what might be helpful to the person who’s grieving.

I don’t really want to get into the doing side of things at this point, but I can definitely talk about the saying.  The most basic rule is:  don’t let your discomfort with tragedy and grief push you into saying whatever comes to mind.  A person’s grief is not a wall against which you should throw a spaghetti pot of nostrums, hoping that one of them will help.  Maybe one will, but the harm likely caused by the others will outweigh it.

The second most basic rule is:  don’t assume that a grieving person believes what you believe, or even that they believe what they believed before the tragedy.  They may surprise or even shock you.  The atheist may suddenly talk about an afterlife; the theist may angrily reject the existence of higher powers.  These may be temporary shifts, or not, but they are raw, honest expressions of grief.  Apply this rule in the exercise of the most basic rule, above.

Right now, I can only address this from the perspective of a grieving parent, so I will, though this all does apply to anyone who’s grieving—the child of a dead parent, the close friend of the recently deceased, and so on.  Let’s start out with things you should say to a grieving parent.

“I’m so sorry.”

You’ve let them know you feel sorrow for them, are thinking about them, and are generally there in support of them.  It seems like a lot for so little a sentence, but it’s all there.  I think this is just about the most universally acceptable thing you can say to a grieving parent, and it also has the benefit of being the most appropriate thing to say.

Be prepared for them to say “me too” or something like that; otherwise, they’ll probably thank you.  Do not tell them that no thanks are necessary.  Let them acknowledge your care and support in what is likely the only way they can manage, with the only words they can find.  Which leads us to the next thing you can fairly safely say.

“There are no words.”

Because after expressing your sorrow, there really aren’t.  There are no words that can explain it, no words that can make it better, no words that can take away their anguish.  I doubt there ever will be.

Beyond those two things, you can offer to help in some way—which is part of the doing that I said I wasn’t going to get into, but I’ll say here that you should only say this if you’re willing to do laundry or dishes or whatever else they request—or just sit quietly with them until they speak.  Then follow their lead in the conversation.  They may not speak at all, even if you sit with them for hours.  Be okay with this, or be somewhere else.


All right, so what do you not say to a grieving parent?  Honestly, we could be here all day with that, but I’ll skip over the ones that are obviously Just Wrong and address some of the most common ones that seem to pass by without comment.  And yes, I’ve had all of them said, tweeted, or Facebooked at me, or at least very near me.

Of course, all of these are dependent on the parent in question.  If they say their child is in a better place now, you can absolutely agree with them.  In fact, you should agree with them, or at least refrain from disagreement, regardless of whatever you personally believe.

Because that’s what you do if a grieving parent expresses a belief you don’t hold: You agree with them.  Now is not the time to be undermining whatever framework is holding them together; they have little enough of that as it is.  If you’re religious and a non-religious parent says that their loved one is gone forever, not existing at all, you go along with it.  If you’re non-religious and a grieving religious parent says their loved one is in a better place, in the arms of God, you go along with it.  This is about them, not you.  Adhere to the Ring Theory at all times.

That said, here we go.

“How are you doing?”

How do you think the parent of a dead child is doing?  Okay, I admit that this might be acceptable if you know them very well or if enough time has passed—though how could you know if enough time has passed?—and because it comes from a place of concern for their well-being, this might get half a pass.  Except what it usually does is force them to either lie conventionally (“I’m okay”) or tell the painful, probably swear-heavy truth.  Better would be “I’ve been thinking about you” or even “I’ve been worried about how you’re doing”, though not by very much.

It’s also very much the case that this has been culturally ingrained for many of us; it’s just a longer way of saying “hello”, fired off without thinking, and so it just slips out.  Grief creates an extraordinary circumstance, though, and you need to go into it challenging all of your preconceived notions about how to interact with other people.  Be aware of what you’re about to say and how it might affect the person in front of you.  (I mean, you should probably always do that anyway, but make sure you do it in this situation.)

“It’s all part of God’s plan.” / “God has a special plan for them.” / “Everything is in God’s hands.”

You just told the parent of a dead child that God planned the death of their child.  That God meant for it to happen, wanted it to happen, and in fact arranged events so that it would be sure to happen.  This is not comforting.  It is very much like the opposite.

“God needed another angel in Heaven.”

You just told the parent of a dead child that their loved one is gone because an all-powerful deity took their child away from them, on purpose, for its needs, not caring what it did to them.  Also, if they don’t believe in God (or even a version of God sufficiently similar to yours), you just said the equivalent of “Santa needed another elf in his workshop.”  Would you say that to a dead child’s parent?  Then don’t say this either.

“Now they’re watching over you.”

You just reminded the parents of a dead child that for all their care and efforts, they could not protect their loved one from untimely death, which is pretty much the most basic responsibility a parent feels.  Furthermore, it is the job (some would say calling, others would say privilege) of parents to watch over and protect their children, not the other way around.  Telling them that this arrangement has now been inverted does not help.

“They’re in a better place now.” / “They’re where they belong.”

You just told the parent of a dead child that there is a place better for them than the home that sheltered them and the family that cherished them.  That the child truly belongs somewhere other than with the people who loved them most.  Don’t do that.

“Everything happens for a reason.”

You just implied that the child is dead because something their parents did resulted in the death.  That wasn’t the intent, but it’s still in there, easily picked up on by parents racked with overwhelming regret and, very possibly, guilt.  (Even parents who did everything they could in a no-win situation are likely to feel guilt that they didn’t do more or couldn’t find a way out.)

“Maybe it’s for the best.”

You just told the parent of a dead child that it’s better their child is dead than still alive.  No.  Just no.


The one I almost included was “I’m praying for you”, because you don’t always know what the other person thinks of prayer.  In general, though, I think most non-religious people (even grieving parents) will mentally translate it to “I’m thinking of you and care about you”.  Of course, if you know for a fact the grieving parent is non-religious, you should probably think hard about skipping this one.  You can still pray for the non-religious, obviously, but say that you’ve been thinking about them.

There are a bunch more that are borderline.  “At least they aren’t suffering any more” is very risky, for example, even if the child was in fact suffering greatly before they died.  It reminds the parent of their child’s suffering, for example, and they may feel guilt as well as grief about that (see above).

As a last note, be careful about what terminology you use regarding death.  Some parents won’t want to say or hear that word, preferring instead phrases like “passed away” or “passed on”.  Others actually find phrases like “passed away” or “lost” to be more painful.  Again, take your cues from the griever.  If possible, don’t use any death-related terminology until they do, and then use the words they do.

To sum up:  think hard about what will help them rather than what will soothe you; do not contradict expressions of grief even when they conflict with your beliefs; be sure to adhere to the Ring Theory; take your cues from the griever.  And be prepared for just about anything.


My thanks to Gini Judd, Kate Kikel, and TJ Luoma for their pre-publication feedback on this post.

No Laughing Matter

From the wise and insightful Amber Fisher, who credits The Rocket Science Group’s Voice and Tone as an inspiration:

One of the things I teach tech writers: it’s okay to have fun with your audience most of the time. But never joke with frustrated people. If you’re delivering bad news, an alert, or helping a new user troubleshoot a problem, be straightforward and transparent.

As I’m sure Amber would be the first to say, said rule is not just for tech writers.  In any online interaction, synchronous or asynchronous, with someone you don’t know really, really well, that rule applies.  Always.  And the defense “Hey, man, where’s your sense of humor?” is usually the reddest of flags that you have already screwed this up, and should consider apologizing.

(I’m especially looking at you, Twitterers.)

The Stinger

(In television, the “stinger” is the clip that plays during or just after the closing credits of a show.)

On Friday, the Web Standards Project announced its own dissolution.  I felt a lot of things upon reading the announcement, once I got over my initial surprise: nostalgia, wistfulness, closure.  And over it all, a deep sense of respect for the Project as a whole, from its inception to its peak to its final act.

In some ways, the announcement was a simple formalization of a longstanding state of affairs, as the Project has gradually grown quieter and quieter over the years, and its initiatives had been passed on to other, more active homes.  It was still impressive to see the group explicitly shut down.  I can’t think of the last time I saw a group that had been so influential and effective recognize that it was time to turn off the lights, and exit with dignity.  As they wrote:

Thanks to the hard work of countless WaSP members and supporters (like you), Tim Berners-Lee’s vision of the web as an open, accessible, and universal community is largely the reality. While there is still work to be done, the sting of the WaSP is no longer necessary. And so it is time for us to close down The Web Standards Project.

I have a long history with the WaSP.  Way, way back, deep in the thick of the browser wars, I was invited to be a member of the CSS Action Committee, better known as the CSS Samurai.  We spent the next couple of years documenting how things worked (or, more often, didn’t) in CSS implementations, and—and this was the clever bit, if you ask me—writing up specific plans of action for browsers.  The standards compliance reviews we published told browsers what they needed to fix first, not just what they were getting wrong.  I can’t claim that our every word was agreed with, let alone acted upon, but I’m pretty confident those reviews helped push browser teams in the right direction.  Or, more likely, helped browser teams push their bosses in the direction the teams already wanted to go.

Succumbing to a wave of nostalgia, I spent a few minutes trawling my archives.  I still have what I think is all the mail from the Samurai’s mailing list, run through Project Cool’s servers, from when it was set up in August 1998 up through June of 2000.  My archive totals 1,716 messages from the group, as well as some of the Steering Committee members (mostly Glenn Davis, though George Olsen was our primary contact during the Microsoft style sheets patent brouhaha of February 1999).  If I’m not reading too much into plain text messages over a decade old, we had a pretty great time.  And then, after a while, we were done.  Unlike the WaSP itself, we never really declared an end.  We didn’t even march off into the sunset having declared that the farmers always win.  We just faded away.

Not that that’s entirely a bad thing.  At a certain point, our work was done, and we moved on.  Still, I look back now and wish we’d made it a little more formal.  Had we done so, we might have said something like the WaSP did:

The job’s not over, but instead of being the work of a small activist group, it’s a job for tens of thousands of developers who care about ensuring that the web remains a free, open, interoperable, and accessible competitor to native apps and closed eco-systems. It’s your job now…

And so it is.  These last years have shown that the job is in very good hands.

“Never doubt that a small group of thoughtful, committed citizens can change the world. Indeed, it is the only thing that ever has.” said Margaret Mead.  I see now that the way those small groups truly change the world is by convincing the rest of the world that they are right, thus co-opting the world to their cause.  Done properly, the change makes the group obsolete.  It’s a lesson worth remembering, as we look at the world today.

I’m honored to have been a part of the WaSP, and I offer my deepest samurai bow of respect to its founders, its members, and its leaders.  Thank you all for making the web today what it is.

Election Day Results

[FOR PUBLICATION WEDNESDAY 7 NOVEMBER OR WHENEVER ALL THE COURT CHALLENGES ARE SETTLED]

After a campaign season that seemed even more vitriolic and interminable than any before it, America finally made its choice for President.  To many, that choice was surprising, even unthinkable.  To his supporters, of course, the win was a welcome vindication after so many difficulties and setbacks.  Between the deluge of attack ads, the debate stumbles, and the lackluster polling, it must have seemed at times as if the odds were insurmountable.  Despite all the roadblocks, however, things moved his way in the late stages, providing enough lift to secure the election.

Of course, nothing will be easy: with a divided Congress, the President will have a tough time making progress on his legislative agenda, and overseas challenges are no less acute now that the U.S. election has been settled.  The budgetary situation is still a major problem, with the “fiscal cliff” and the prospect of yet another bruising Congressional showdown looming ever larger in the country’s headlights.  The one bright spot is that—assuming the will is found to avoid plunging over the cliff—the economic recovery is likely to continue, albeit as slowly and cautiously as ever.  To a populace wearied by the campaign, any positive news will be more than welcome.

(With apologies to The Economist.)

Customizing Your Markup

So HTML5 allows you (at the moment) to create your own custom elements.  Only, not really.

(Ed. note: this post has been corrected since its publication, and a followup clarification has been posted.)

Suppose you’re creating a super-sweet JavaScript library to improve text presentation—like, say, TypeButter—and you need to insert a bunch of elements that won’t accidentally pick up pre-existing CSS.  That rules span right out the door, and anything else would be either a bad semantic match, likely to pick up CSS by mistake, or both.

Assuming you don’t want to spend the hours and lines of code necessary to push ahead with span and a whole lot of dynamic CSS rewriting, the obvious solution is to invent a new element and drop that into place.  If you’re doing kerning, then a kern element makes a lot of sense, right?  Right.  And you can certainly do that in browsers today, as well as years back.  Stuff in a new element, hit it up with some CSS, and you’re done.

Now, how does this fit with the HTML5 specification?  Not at all well.  HTML5 does not allow you to invent new elements and stuff them into your document willy-nilly.  You can’t even do it with a prefix like x-kern, because hyphens aren’t valid characters for element names (unless I read the rules incorrectly, which is always possible).

No, here’s what you do instead (corrected 10 Apr 12):

  1. Wrap your document, or at least the portion of it where you plan to use your custom markup,Define the element customization you want with an element element.  That’s not a typo.
  2. To your element element, add an extends attribute whose value is the HTML5 element you plan to extend.  We’ll use span, but you can extend any element.
  3. Now add a name attribute that names your custom “element” name, like x-kern.
  4. Okay, you’re ready!  Now anywhere you want to add a customized element, drop in the elements named by extends and then supply the name via an is attribute.

Did you follow all that?  No?  Okay, maybe this will make it a bit less unclear.  (Note: the following code block was corrected 10 Apr 12.)

<element extends="span" name="x-kern"></element>
<h1>
<span is="x-kern" style="…">A</span>
<span is="x-kern" style="…">u</span>
<span is="x-kern" style="…">t</span>
<span is="x-kern" style="…">u</span>
mn
</h1>
<p>...</p>
<p>...</p>
<p>...</p>

(Based on markup taken from the TypeButter demo page.  I simplified the inline style attributes that TypeButter generates for purposes of clarity.)

So that’s how you create “custom elements” in HTML5 as of now.  Which is to say, you don’t.  All you’re doing is attaching a label to an existing element; you’re sort of customizing an existing element, not creating a customized element.  That’s not going to help prevent CSS from being mistakenly applied to those elements.

Personally, I find this a really, really, really clumsy approach—so clumsy that I don’t think I could recommend its use.  Given that browsers will accept, render, and style arbitrary elements, I’d pretty much say to just go ahead and do it.  Do try to name your elements so they won’t run into problems later, such as prefixing them with an “x” or your username or something, but since browsers support it, may as well capitalize on their capabilities.

I’m not in the habit of saying that sort of thing lightly, either.  While I’m not the wild-eyed standards-or-be-damned radical some people think I am, I have always striven to play within the rules when possible.  Yes, there are always situations where you work counter to general best practices or even the rules, but I rarely do so lightly.  As an example, my co-founders and I went to some effort to play nice when we created the principles for Microformats, segregating our semantics into attribute values—but only because Tantek, Matt, and I cared a lot about long-term stability and validation.  We went as far as necessary to play nice, and not one millimeter further, and all the while we wished mightily for the ability to create custom attributes and elements.

Most people aren’t going to exert that much effort: they’re going to see that something works and never stop to question if what they’re doing is valid or has long-term stability.  “If the browser let me do it, it must be okay” is the background assumption that runs through our profession, and why wouldn’t it?  It’s an entirely understandable assumption to make.

We need something better.  My personal preference would be to expand the “foreign elements” definition to encompass any unrecognized element, and let the parser deal with any structural problems like lack of well-formedness.  Perhaps also expand the rules about element names to permit hyphens, so that we could do things like x-kern or emeyer-disambiguate or whatever.  I could even see my way clear to defining an way to let an author list their customized elements.  Say, something like <meta name="custom-elements" content="kern lead follow embiggen shrink"/>.  I just made that up off the top of my head, so feel free to ignore the syntax if it’s too limiting. The general concept is what’s important.

The creation of customized elements isn’t a common use case, but it’s an incredibly valuable ability, and people are going to do it.  They’re already doing it, in fact.  It’s important to figure out how to make the process of doing so simpler and more elegant.

May 2015
SMTWTFS
April  
 12
3456789
10111213141516
17181920212223
24252627282930
31  

Archives

Feeds

Extras