Throughout 2015, a few people who’ve seen me present “Designing for Crisis” at An Event Apart have noticed that, on the slides where I have filler text, it’s a localized variant. In Washington, DC, for example, one section started out:
Andrew ellicott lobortis decima thomas jefferson vulputate dynamicus fiant kingman park sollemnes ford’s theater. Vero videntur modo claritatem possim quis quod est noma howard university consequat diam. Blandit ut claram north michigan park seacula judiciary square william jefferson clinton hawthorne millard fillmore iis…
This was a product of some simple PHP I’d originally written to generate Cleveland-themed filler text a year or so back, which you can find at localipsum.meyerweb.com, and which I’d expanded upon to let me generate text for my presentations at AEA. The name comes from the original idea I had, which was to provide a list of cities/regions/whatever, so that users could pick one and generate some filler text. That never quite came together. I had a semi-working version once, but the UI was horrible and the file management was worse and I got discouraged and rolled back to what you see now.
I kept telling myself that I’d get back to it, do the city-selection thing right, polish it nicely, and then finally release the source. I’ve told myself that all year, as I manually swapped in city information to generate the filler text for each of my talks. Now I’ve finally admitted to myself that it isn’t going to happen, so: here’s the source. I chose a pretty permissive license—BSD-ISC, if I recall correctly—so feel free to make use of it for your own filler text. I’ll be happy to accept pull requests with improvements, but not package-management or complete MVC restructuring. Sorry.
I know, it’s a goofy little thing and the code is probably pants, but I kinda like it and figure maybe someone out there will too. If nothing else, we can look for a few laughs in the output and maybe—just maybe—learn a little something about ourselves along the way.
(P.S. Speaking of “Designing for Crisis”, look for a post about that, and more specifically video of it, in the next few weeks.)
Yesterday was the inaugural Rebecca’s Boardwalk, a fundraiser in support of Rebecca’s Gift. About two hundred people joined us for soft pretzels, snow cones, bounce houses, carnival games, face painting, and temporary tattoos. I saw former co-workers and even a high school classmate there.
Between the ticket sales (both admission and activity) and the money raised in the raffles and the silent auction, Rebecca’s Gift raised enough money to send another family on a healing trip. None of that would have been possible without a huge community of helpers and volunteers, so many that I could never thank them all. There are a few I’d like to specially note, however.
First, my wife Kat and our friend Karla, who are the co-founders of Rebecca’s Gift and the people who really put the whole Boardwalk event together. With help, of course, tons of help—but they were the driving forces. People often think that Rebecca’s Gift is something I put together, but I didn’t. It’s all them. The non-profit wouldn’t exist, and the event wouldn’t have happened, without their drive.
Second, David Leslie Johnson, who contributed signed scripts from The Walking Dead, a signed making-of book from Red Riding Hood, and a signed poster from The Conjuring to the silent auction. If you’re a horror fan, you might recognize David as the screenwriter of Orphan, as well as his involvement in the upcoming re-reboot of A Nightmare on Elm Street and the sequel to The Conjuring. He’s also one of my best friends, as he has been since late elementary school.
Third, Tattly, which donated a lot of boardwalk-themed temporary tattoos. For example, this Ferris Wheel design, and this very appropriately-themed set. If you’ve never seen Tattly’s tattoos, they’re really something. Vibrant, detailed, and most of all fun. If you’re looking for temporary tattoos, check them out first.
Fourth, Anshe Chesed Fairmount Temple, for providing us with the right space for the event, for giving us the support (and storage space!) we needed to pull the whole thing off, and for trusting us with both their facilities and their schedule.
And fifth, again, everyone who donated items and sponsored booths and bought tickets and came to have a good time, just down the hall from the preschool classes where Rebecca wowed everyone with her sparkly dresses and impish grin. It was an afternoon worthy of her name and her spirit. Thank you all.
It’s been a busy couple of weeks for Facebook, in terms of compassionate design decisions.
First they announced that they aren’t adding a Dislike button, but they are adding a set of six emoji reactions to the “Like” button, so you can indicate a wider range of emotion. Some people immediately linked this to Slack, as if emoji reactions hadn’t been a thing on social media for the last couple of years. I happened to see Sally Herships asking “what are your thoughts?” about it on Twitter (heh), and oh, I had thoughts. I ended up sharing some of those thoughts by phone, and one of them was part of a segment on American Public Media’s Marketplace.
It’s funny, in a way, that my thought on marketing and advertisers was what made it into the piece, because I think that was literally my whole thought about that side of things. Most of the rest of my conversation with Sally was about how Facebook could use these reactions as a way to avoid insensitive design choices. As an example, a status update that gets lots of interaction in the frowny-face or sad-face realm could be avoided when it comes to things like Year in Review. I said something to the effect of:
People are sharing everything about their lives, positive and negative, billions of us every day. That isn’t going to stop, so it’s great to see Facebook making changes to meet us where we are, or at least meet us partway.
These reaction emoji almost certainly aren’t the last word on this, but they’re a credible initial attempt. In more than one sense, they’re a first step into a larger world.
Next, Facebook introduced filtering for its On This Day (OTD) feature. This is another step in the evolution of On This Day, one that’s very welcome. Facebook had already been revising its language to be more humane, shifting from simple “Relive this memory” to nuanced language expressing care and openness.
With its new OTD preferences, Facebook now lets you define ranges of dates you’d like to be blacklisted, in effect, as well as people you don’t want to see memories about. I’d commented on the lack of this, back when OTD launched:
…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.
So far as I can tell, you still can’t opt out entirely; even if you turn off all notifications, you can still get memories inserted into your timeline. For me, I see about one a month, more or less. But here’s the interesting thing: they’re almost never my memories. In what I still regard as a major gamble by Facebook, On This Day will show you posts, pictures, and videos posted by someone else, but on which you were tagged. I presume (though I have no simple way to test) that adding a person in the OTD filtering preferences will prevent you from seeing memories in which they’re tagged as well as memories they posted.
If so, that’s a really smart step, as I can only imagine how a spiteful ex might abuse OTD. It still leaves open the possibility of old posts that you don’t remember being tagged on suddenly appearing. In many cases, that will be a delightful moment, but in many others, the exact opposite of that. This is why I regard Facebook’s decision to show you posts from other people a gamble. Even if they show unwanted memories to just 1% of their user base—a ridiculously low percentage—that’s literally 10 million people a day.
Still: wrinkles or no, flaws or no, the presence of filtering preferences is a major enhancement to On This Day. I could block out all of June 2014, if I so chose. There might be years where I blocked it, and others where I removed the block. The important thing is that I’m being given that capability, in an environment that’s already designed to show me memories and acknowledge that it’s easy to get that wrong. The user experience for adding filters is still clunky, but much like the reaction emoji, I view this as a credible first try, not the final word.
All this has made for some interesting Slack discussions between me and Sara, as we literally just finished the manuscript for our forthcoming, still-not-quite-titled-but-we’re-really-close-honest book on compassion in design. Which has references to things like On This Day, so we’re already revising a book that hasn’t even been published yet. And when will it be published? We’re pulling for early next year, which sounds like a long way away until you remember that 2015 is getting close to done.
Kudos to Facebook, both for its efforts to be kinder in what they do and for its willingness to try. Not many businesses, let alone social-media titans, have had the courage to think about what can go wrong in this realm, let alone actually acknowledge missteps and work to do better. Well done.
One month from today is the first-ever Rebecca’s Boardwalk, a fundraiser in support of Rebecca’s Gift. It’s a family-friendly afternoon of carnival games with actual prizes to be won, a facepaint and temporary tattoo booth (many thanks to Tattly for their generous support!), indoor mini-golf and bounce houses, boardwalk food, and a pretty great silent auction. We’ll have everything from gift-card grab bags to artisanal meat parties to signed shooting scripts from The Walking Dead up for bid!
All of the proceeds will go to fund the mission of Rebecca’s Gift, which is to provide healing family vacations after the death of a child. The organization has already raised enough to assist at least two families in 2016. We’d very much appreciate your support in helping us lend a helping hand to more families in desperate need of time to reconnect, rebuild, and relax. It’s one of the very few organizations we know of that supports families after a child’s death, as opposed to before. This is something I touched on in a piece I wrote for Natural Papa back in September, in conjunction with St. Baldrick’s. It’s something Kat and our friend Karla are determined to do something about, and I’m honored to support their efforts.
I very much hope you can join us for Rebecca’s Boardwalk, or if not, support the event via a sponsorship. Rebecca loved travel and boardwalks in particular, and we can’t think of a better way to celebrate her life while striving to help others heal as best we can.
(Side note for the web folks in the audience: the Rebecca’s Gift site in general, and the event page in particular, makes use of flexbox for simple layout. Just in case you were looking for a public deployment example.)
It’s time for a semi-periodic update on CSS: The Definitive Guide, 4th Edition! The basic news is that things are proceeding, albeit slowly. Eight chapters are even now available as ebooks or, in most cases, print-on-demand titles. Behold:
CSS and Documents, which covers the raw basics of how CSS is associated with HTML, including some of the more obscure ways of strapping external styles to the document as well as media query syntax. It’s free to download in any of the various formats O’Reilly offers.
Selectors, Specificity, and the Cascade, which combines two chapters to cover all of the various Level 3 selector patterns as well as the inner details of how specificity, inheritance, and cascade.
Values, Units and Colors, which covers all the various ways you can label numbers as well as use strings. It also takes advantage of the new cheapness of color printing to use a bunch of nice color-value figures that aren’t forced to be all in grayscale.
CSS Fonts, which dives into the gory details of @font-face and how it can deeply affect the use of font-related properties, both those we use widely as well as many that are quickly gaining browser support.
CSS Text, which covers all the text styles that aren’t concerned with setting the font face—stuff like indenting, decoration, drop shadows, white-space handling, and so on.
Basic Visual Formatting in CSS, which covers how block, inline, inline-block, and other boxes are constructed, including the surprisingly-complicated topic of how lines of text are constructed. Very fundamental stuff, but of course fundamentals are called that for a reason.
Transforms in CSS, which is currently FREE in ebook format, covers the transform property and its closely related properties. 2D, 3D, it’s all here.
Colors, Backgrounds, and Gradients, which covers those three topics in FULL GLORIOUS COLOR, fittingly enough. Curious about the new background sizing options? Ever wondered exactly how linear and radial gradients are constructed? This book will tell you all that, and more.
Here’s what I have planned to write next:
Padding, Borders, Outlines, and Margins — including the surprisingly tricky border-image
Positioning – basically an update, with new and unexpected twists that have been revealed over the years (case in point)
Grid Layout – though this is coming faster than many of us realize, I may put this one off for a little bit while we see how browser implementations go, and find out what changes happen as a result
My co-author, Estelle, has these three chapters/short books currently in process:
Beyond those 14 chapters, we have eight more on the roster, covering topics like floating, multicolumn layout, shapes, and more. CSS is big now, y’all.
So that’s where we are right now. Our hope is to have the whole thing written by the middle of 2016, at which point some interesting questions will have to be answered. While most of the book is fine in grayscale, there are some chapters (like Colors, Backgrounds, and Gradients) that really beenfit from being in color. Printing a 22-chapter book in color would make it punishingly expensive, even with today’s drastically lower cost of color printing. So what to do?
Not to mention, printing a 22-chapter book is its own level of difficulty. Even if we assume an average of 40 pages a chapter—an unreasonabnly low figure, but let’s go with it—that’s still a nine hundred page book, once you add front and back matter. The binding requirements alone gets us into the realm of punishingly expensive, even without color.
Of course, ebook readers don’t have to care about any of that, but some people (like me) really do prefer paper. So there will be some interesting discussions. Print in two volumes? Sell the individual chapter books in a giant boxed set, Chronicles of Narnia style? We’ll see!
(Note: This is not about what Tufekci writes about, exactly, and is not meant as a rebuttal to her argument. I agree with her that post-ranking algorithms need to be smarter. I also believe there are design solutions needed to compensate for the unthinking nature of those algorithms, but that’s a topic for another time.)
Tufekci’s piece perfectly describes the asymmetrical nature of Facebook’s “engagement” mechanisms, commented on for years: there is no negative mirror for the “Like” button. As she says:
Of course he cannot like it. Nobody can. How could anyone like such an awful video?
What happens then to the video? Not much. It will mostly get ignored, because my social network has no way to signal to the algorithm that this is something they care about.
What I’ve been thinking of late is that the people in her network can comment as a way to signal their interest, caring, engagement, whatever you want to call it. When “Like” doesn’t fit, comments are all that’s left, and I think that’s appropriate.
In a situation like Tufekci describes, or any post that deals with the difficult side of life, comments are exactly what’s called for. Imagine if there were a “Dislike” button. How many would just click it without commenting? Before you answer that question, consider: how many click “Like” without commenting? How many more would use “Dislike” as a way to avoid dealing with the situation at hand?
When someone posts something difficult—about themselves, or someone they care about, or the state of the world—they are most likely seeking the support of their community. They’re asking to be heard. Comments fill that need. In an era of Likes and Faves and Stars and Hearts, a comment (usually) shows at least some measure of thought and consideration. It shows that the poster has been heard.
Many of those posts can be hard to respond to. I know, because many of the Facebook posts my wife and I were making two years (and one year) ago right now were doubtless incredibly hard to read. I remember many people leaving comments along the lines of, “I don’t know what to say, but I’m thinking of you all.” And even that probably felt awkward and insufficient to those who left such comments. Crisis and grief and fear in others can make us very uncomfortable. Pushing past that discomfort to say a few words is a huge show of support. It matters.
Adding “Dislike” would be a step backward, in terms of emotional intelligence. It could too easily rob people who post about the difficult parts of life of something they clearly seek.
Originally published at Medium on July 30th, 2015.
Yesterday, I decided to try importing a story to Medium. I’d hunted around for a way to auto-post to Medium from WordPress, which runs the blog portion of meyerweb (the rest is mostly HTML, with a little PHP here and there), and hadn’t found one. Then I found the “Import story” feature on Medium and thought, Sure, why not?
So I tried it out on my most recent post, which also happened to have some code in it, as my posts sometimes do. The process was, as anyone who’s used it can tell you, very simple. Paste in a URL and the content gets sucked in.
Well, except for code blocks.
I’d structured the block with a pre element, as I always do, and yet the line-breaking was stripped away. It looks like my indentation tabs were preserved, but without the linefeeds, they didn’t have nearly the same utility.
The real problem is that the importation of the code block stopped cold at the first <, dropping the rest of the code on the floor. Now, I admit, I didn’t escape or entity-ize the character in my source, and maybe that was the problem. Still, I feel like an import tool should be a little smarter about things like less-than symbols on import. Otherwise, how many less-than-threes will end up as just plain threes?
Fortunately, the fix was simple: I went back to the original post, drag-selected the whole code block, copied, went back to Medium, drag-selected the mangled code, and hit ⌘V. Done. It was properly formatted and no less-than terminations occurred.
Today, I’m experimenting with writing my post on Medium first, after which I’ll repost it at meyerweb. This is likely the only time I’ll do it in that order, given my experience over here. Captions are deucedly hard to edit (at least in my browser of choice, Firefox Nightly), the apparent inability to add simple decorations like border to images, and the apparently intentional, active enforcement of single-space-after-sentence even when editing annoy me deeply. (Yes, that’s how I roll. Let’s not have the spacing argument here, please.)
I can see why Medium appeals to so many. It’s pretty frictionless, a lot more so than almost any other tool of its kind I’ve used. I mean, my WordPress install is pretty frictionless to me, but that’s because I invested a lot of time customizing it to be that way. Much like my browser, mail client, and other essential tools.
So anyway, that’s what I found during import and authoring on Medium. Here’s hoping this posts properly, and without the stray “in” that’s somehow shown up in my post, and which I can’t select, mouse to delete or otherwise remove through non-Inspector means. If only I could prepend an “f”!
Last year, in an effort to help him and many friends of mine struggling with the tragic death of Chloe Weil, I told Jeremy Keith I had let go of guilt over Rebecca’s death, and that was the truth. I mourned, I had regrets, but there was no guilt, because there was nothing we could have done except what we did. Her cancer and death was always going to happen, and the only thing—the only thing—we could have done to avoid it was to have never adopted Rebecca in the first place, thus causing some other family to experience all the joy and sorrow of her brief life. I accepted that, and it brought some small measure of peace.
All that was true. Almost all of it is still true…except for guilt. That came back, seeping into me so slowly that it took me a long time to realize it. When I finally recognized it for what it was, I realized it had been there for months. I also realized it was a particular form of guilt: survivor’s guilt. This came as a surprise, honestly. As it’s usually defined, at least as I understand it, survivor’s guilt seems to be recognized in the parents of children who take their own lives, but not to those whose children die from disease or accident.
If Joshua had asked why I was saying sorry, I would have told him I wasn’t apologizing because I felt guilty, but rather because I was sorry in the sense of sorrowful. Sorry he had to experience the death of his older sister, who died on her sixth birthday of aggressive brain cancer. Who had been gone just about 51 weeks on the day we had that conversation. Sorry she had been terminally ill, sorry the world is as harsh and unfair as it is, sorry his best friend in the world is dead.
But not sorry out of responsibility or guilt. At least, that’s what I would have said, but I’d have been violating one of my basic tenets of parenting. Because I would have been lying to him.
I wrote it, in part, to understand myself. But I published it in the hopes that it will help someone, some day, understand a bereaved friend or relative a little bit better…or possibly even themselves.