Firefox makes a decision, removes an option

Back in 2011, I wrote about how we need to make decisions in open source. This is not a new idea — it is rooted in the guiding philosophies for WordPress to make decisions, not options.

Perhaps unsurprisingly, Hacker News is now up in arms about Firefox 23 removing the “Disable Javascript” option. I’m really glad to see ex-Mozilla guy Gregory Koberger with the top comment there, linking to a fantastic piece called Checkboxes that kill your product. “A little historical baggage can be a dangerous thing when multiplied by a few hundred million individuals,” wrote Alex Limi, who does product design strategy at Mozilla. (I had a chance to meet Gregory at a conference in 2011 and he’s a great web dev follow on Twitter.)

In WordPress 3.5, I spearheaded a quiet but major purge of UI options. We removed ten of them. And we moved another off its own page, which let us drop down to six settings pages, down from eight in 2010. My napkin math shows we removed 15 percent of all settings. That’s a huge improvement. Some of these were break-your-site options. Others might cause confusion. And we have ongoing efforts to simplify or improve a few other settings as well.

When talking about decisions versus options, I often tell the story of Firefox 4’s change to tabs on top. I even watched a seven-minute YouTube video explaining exactly why this was a better user experience. (And I couldn’t agree more.) But then, at the end of the video, after all of the convincing arguments, they mention there is an option to put it back. My heart sank. It was a compelling video, but the community forced them to compromise by keeping in core a completely separate workflow, despite making a strong statement that it was clearly inferior. Firefox is highly extensible. An extension could have changed it back. By keeping it in Firefox core, you now have double the user flows to test, your QA testing suffers, users suffer, everything suffers.

Firefox may be the people’s browser, it may be the one true open browser project, but that doesn’t mean it is a kitchen sink. I didn’t actually realize that Firefox still had the Disable JavaScript option. I have been using an extension to toggle JavaScript in Firefox, as sometimes I have to test no-JS situations. The fact that I didn’t know the option existed, though, is only one indication that this is a problem. This single option enables a user to do so much damage to their web browsing experience that it is absurd for it to exist. This is Limi’s point.

I can’t quote from the writings of GNOME contributor Havoc Pennington enough. His posts did a lot to inform early development of WordPress, and continue to make an impact today. Here’s what I shared in 2011:

It turns out that preferences have a cost. Of course, some preferences also have important benefits – and can be crucial interface features. But each one has a price, and you have to carefully consider its value. Many users and developers don’t understand this, and end up with a lot of cost and little value for their preferences dollar.

  • Too many preferences means you can’t find any of them.
  • Preferences really substantively damage QA and testing.
  • Preferences make integration and good UI difficult.
  • The point of a good program is to do something specific and do it well.
  • Preferences keep people from fixing real bugs.
  • Preferences can confuse many users.

I find that if you’re hard-core disciplined about having good defaults that Just Work instead of lazily adding preferences, that naturally leads the overall UI in the right direction. Issues come up via bugzilla or mailing lists or user testing, and you fix them in some way other than adding a preference, and this means you have to think about the right UI and the right way to fix problems. Basically, using preferences as a band-aid is the root of much UI evil.

For more written by Pennington, see these essays from 2002 and 2004.

Perhaps tellingly, I also wrote then “WordPress is known for its simplicity and usability, but I can still think of a half-dozen options I wouldn’t hesitate to remove under the right circumstances.” In WordPress 3.5, the circumstances were right. Promise kept!

Addendum: In that long Hacker News thread (300 comments and climbing) Gregory also commented:

Try an extension? Power users aren’t the target market for this decision, and that’s why add-ons exist.

This is also a great time to review the sections Designing for the Majority and The Vocal Minority on the WordPress philosophy page.

America runs on Dunkin, but new DC location snubs those in wheelchairs

Want to go here? You can, as long as you're able to walk.
Want to go here? You can, as long as you’re able to walk.

D.C. patrons of a new Dunkin’ Donuts on K Street can enter a raffle tomorrow to win 52 free cups of coffee.

Well, it might be a little difficult if you’re in a wheelchair.

A few weeks ago, my wife Keri Kae was stunned to see a wheelchair user just holding the door open, unable make it down the stairs and looking hopeless. Someone just as aghast bought him a cup of coffee. She later confirmed with an employee that there was no wheelchair access, not through the main entrance or otherwise. Just thinking about it aggravates me — but I can’t even begin to imagine what this guy felt, and what many after him will feel.

I’d be astounded if this wasn’t a violation of the Americans with Disabilities Act. We’re talking brand new construction here; this place just opened. Take a look at photos of the construction for yourself. And there’s room for a ramp — after all, it’s their largest location in D.C.

Maybe it’s legal and some have just learned accept that some places won’t be accessible for them. But Dunkin’ Donuts is a multinational corporation with billions in annual revenue and a very strong brand. Whatever the franchisee relationship is here, this is just appalling. There’s not even a sign on the door. This certainly brings some sad irony to their America Runs on Dunkin’ slogan.

How do we fix this? To start, any blogs that wrote about their grand opening coffee raffle have a new inquiry to make. (Update: DCist has already made theirs.) They’re also on Twitter: @dunkindonuts and @dcdunkin. They’re using the hashtag #KSTDunkin. I’m trying to get in touch with the D.C. Office of Disability Rights and DCRA as well.

I just hope no disabled veterans go there to buy a Stars & Stripes donut — now available for a limited time.

Keynoting php[tek] in Chicago, May 14-17

I’m excited to announce I’m giving a keynote address at php[tek] 2013. It’s a fantastic PHP conference put on by the folks behind php|architect. “The premier professional PHP conference with a community flair,” #tek13 has a rockstar speaker line-up, four tracks of content, and a day of training. I’m thrilled to be attending the conference — I also attended #tek11 — let alone speaking.

Last night I tested a few ideas at the DC PHP meetup and got some great feedback from the attendees. Some early reviews:

I’m continuing to conduct a lot of research for this talk. There’s a lot WordPress has learned over the years, so I’ve been searching through the codebase and old commit messages, as well as compiling a ton of data and statistics. If you have anything you think might help, please contact me. Here’s the full talk description:

WordPress is Everywhere: Extreme Portability as a Double-Edged Sword

WordPress has tens of millions of users worldwide and powers over a fifth of new sites. But such a large and diverse user base presents unique challenges, and as it approaches its tenth birthday, the WordPress codebase is showing its age. So why is it so ubiquitous?

The answer lies not in its UI, UX, ecosystem, or community, though those are certainly among its strengths. The answer lies instead in a core philosophy that holds the user above all else.

This user-centric design starts not with the interface, but rather with the code itself. Developers should approach software development with an unwavering promise they will deal with the nonsense instead of passing it off to the user.

Some WordPress positions might seem draconian and inflexible. Backwards compatibility is almost never broken. The technical requirements appeal to lowest common denominators. But because the project maintainers deal with all the pain — technical debt, difficulties with PHP, working on as many server configurations (and misconfigurations) as possible — its users don’t have to. Thanks to the WordPress project’s portability efforts, you can pick a web host or a PHP configuration at random and WordPress will run on it. Because of this, adoption has soared.

The way WordPress operates is not for everyone. But whether your projects are used by 10 users, or 10 million, it may help you to see your code in an entirely new light.

Tickets are still available. Hope to see you there!

iPads in education

What a headline from Talking Points Memo: Apple iPad Mini May Cause Problems For Education, McGraw Hill Exec Says. The interview is a doozy, but this whining from McGraw Hill senior vice president Vineet Madan got me:

“If I were a teacher who had spent the last pennies of his or her budget buying new iPads for students a few months ago, I don’t know if I’d be too happy waking up and finding out that there’s a new iPad with a completely different connector cable now.”

“If you’re operating in a classroom that has iPads, now if you want to upgrade or replace a device, you’re going to have to maintain multiple chargers.”

So let me get this straight: They use their budget on iPads, and then find more money to later upgrade the devices, and their concern is the connector cables?

Sorry, but why the hell wouldn’t they be happy? They have iPads. Teachers want them because they are incredible educational tools. Do you really think teachers are going to complain about a few connector cables? 1 Someone needs to explain to him the right cable comes with the iPad when you buy it. Do you really think teachers are going to complain when they have iPads to begin with? They don’t care what generation the iPad is. 2 They just want tools that can make a difference. And what a difference an iPad can make in so many fields, especially the sciences and mathematics.

My high school in Connecticut issued laptops to every student. (It was a magnet school with a focus on technology and international studies.) Each grade, 6 through 12, had a different model, which was replaced every few years. That means different power cords, batteries, and spare parts. This is not something to complain about. I’m grateful I had this much access to technology growing up, and I’m ecstatic that my one-day children will be immersed even more. From 1999 – 2006, I went through four laptops. You know how many textbooks — McGraw Hill or otherwise — I was able to access on them? None. That is something to complain about.

We should hardly be surprised that a textbook company is trying to temper Apple’s influence with this kind of drama. Many phone companies have lost some control of their domain to Apple. Textbook companies are next.


  1. And aside from that, who hasn’t juggled multiple chargers? Phones only began to gravitate to micro USB a few years ago. Then there’s cables for portable hard drives, bluetooth devices… I have a bag of old BlackBerry chargers I’ll never be able to use. Man, that was silly — I should have stayed with my BlackBerry Bold and saved myself the trouble.

    It’s also not like Apple is going to change their connector again anytime soon. The 30-pin connectors long overstayed their welcome and Lightning is clearly built to last.

  2. My friend Andrew Spittle said this post reminded him of Harry Marks quoting a few tech writers throwing a tantrum over their third-generation iPad being out of date. Read to the end.