The empty text solution we added in #503868: No "empty text" Table Row For Empty Menus to the Menu item page should be treated as a pattern for all similar 'Empty text' situations. A patch will follow.

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

Sutharsan’s picture

Status: Active » Needs review
FileSize
30.85 KB
48.21 KB
7.42 KB

The attached patch rolls out the pattern on vocabulary, taxonomy, contact category, content types, URL alias, forum, aggregator and triggers. Two screenshot attached for evaluation.

kika’s picture

Status: Needs review » Needs work
FileSize
26.72 KB
20.63 KB

- in aggregator, one table field seems empty
- no fix for "no bundles available" when there is no content types

kika’s picture

Forget bundles thing, it was my bad -- CCK UI installed, doh! I own a beer to Sutharsan.

Sutharsan’s picture

Status: Needs work » Needs review
FileSize
7.47 KB

Revised patch fixes the feed page. The Content type page looks like this because you have installed CCK. This issue is for core only.

kika’s picture

Status: Needs review » Reviewed & tested by the community

Works as advertised in all cases: taxo, path, content types, contact, forum, triggers, aggregator. Nice simple improvement.

webchick’s picture

Status: Reviewed & tested by the community » Needs work
Issue tags: +Needs documentation

Yay for consistency! Committed to HEAD.

We should document this in the module upgrade guide so that module developers will make this change and we can retain consistency. Marking needs work until this is done.

I'm curious, though; if the goal of UX is to remove needless words, why the word "now" at the end of "Add X"? That seems superfluous to me.

kika’s picture

-1 on "now"

keith.smith’s picture

Status: Needs work » Needs review
FileSize
9.07 KB

Agreed. This is a really nice improvement, but here's a patch to drop the "now".

Bojhan’s picture

Status: Needs review » Reviewed & tested by the community

@webchick lol at the needless.

This is good.

webchick’s picture

Status: Reviewed & tested by the community » Needs work

Ok, committed "now" removal to HEAD. :) Steve Krug would be proud.

Back to "needs work" for documentation.

bergco’s picture

Assigned: Unassigned » bergco

I'll add the correct form to the screen text style guide. I uploaded the first version of the style guide to the documentation issue queue (http://drupal.org/node/504064), but I'll update it later this week and I'll put it in the handbook-section.

Gary Feldman’s picture

The word available has the wrong connotation for me. It suggests that items might have been available from some unnamed external source, but aren't. Particularly for something like forums, it suggests that they're there, but offline at the moment. The word I expect to see is defined, e.g. No terms defined.

But the "Omit unnecessary words" principle doesn't excuse bad grammar or incomplete sentences. A complete sentence would be There are no terms defined. This highlights that it's passive voice (or reflexive, for available, but that's a nit). More importantly, it's highly idiomatic. Even though it's simple, non-native speakers can still stumble over it.

So why not something that fixes all these problems: Get rid of the No whatever, and just say Add the first term (or first feed, first forum, etc.). By saying first, it's clear that the current count is zero. This eliminates an entire sentence, getting directly to the point of what to do next.

webchick’s picture

Gary, I didn't quite parse all of that (it's late here ;)). Could you do a "before" and "after" string so we can see your suggested improvements in context?

Gary Feldman’s picture

Currently there's one line that reads

No categories available. Add category now.

My suggestion is that it just read

Add the first category now.

This way, it's one sentence instead of two, without sacrificing information. (Aside: The now feels right to me, but I can live without it.) If a screen shot would help, I'll try to get to it tomorrow.

Sutharsan’s picture

The text 'Add category' was intentionally chosen to match the text of the tab. This give the user an indication that both links are pointing to the same place and perform the same action. I understand the problem of the word available but for the rest there is nothing incomplete or bad grammer with these sentences. And further having an explicit message 'No categories' is i.m.o. better than the implicit 'add first'.

Gary Feldman’s picture

That's a valid point about having the wording match the tab, though I'm not sure how important that is for a message that may only be seen once. However, it may also explain why the wording has fallen into the trap of computer short-speak. Fragments that are fine for tabs, menus, or even lists aren't appropriate for a prose context.

When I come across a fragment like No categories, with no context, I get stuck looking for the subject and verb. I can't tell whether it's a message meant for me as a user or an internal message, meant for a developer but leaking out to the user. I can't tell whether it's a normal situation or indicates an error somewhere, either in configuration or in something I did to get here. Does it mean no categories in the system, or no categories in my submission? It can get worse with other words. Suppose I write a module that manages networks or connections. If I see No connections, does that mean no connections defined in the database or that my router has gone bad?

For the sake of comparison, I looked at both the MySQL command line and phpMyAdmin, to see how they reported a query that has an empty result. At the command line, MySQL returns "Empty set". It's not great, but it's ok because command-line SQL is for developers, plus I know precisely what I did, and result sets are part of the jargon. On the other hand, phpMyAdmin says "MySQL returned an empty result set (i.e. zero rows)". It's a complete sentence (subject, verb, object), it makes it clear that the message pertains to MySQL and not anything that I did. (I can't emphasize this enough. New users blame themselves, and No is a blame word. Don't leave the cause of no up to the users' imaginations.)

I hate to carry on like this, but I fought this battle once, long before the web, when developers who learned by writing code on tiny machines for other technical people couldn't break those habits. There's a long history of computers issuing unreasonably terse messages, driven not by clarity but by the limits of 16K (yes, K) of main memory. Let's not repeat history.

(Aside: I just enabled forum on my testbed site, and it says "There are no existing containers or forums. Containers and forums may be added using the add container and add forum pages," which seems great to me. So now I'm confused as to the origin of the terse form.)

Bojhan’s picture

Sorry, but what are you suggesting?

bergco’s picture

Assigned: bergco » Unassigned

Pattern added to Handbook, section User interface best practices http://drupal.org/node/501452.

jhodgdon’s picture

webchick in #6 marked this "needs documentation" and said it needed to be added to the module upgrade guide. However, looking at the patch in #4, I am not seeing any API change that needs to be reported to module maintainers... It sounds like more of a UI text standards change, asking developers, in the case that a table of content is empty (this is taken from #503868: No "empty text" Table Row For Empty Menus) to display:

- Empty text and 'call to action' link displayed in a table. The same kind of table used to display the content when available.
- No table headers
- Link consisting of the same text a used in the action tabs on the same page.

#18 above reported that this was added to the Handbook, but I' don't see it in User interface best practices http://drupal.org/node/501452

That seems like a good place to put this information. Any thoughts?

jhodgdon’s picture

Status: Needs work » Fixed

The advice on what to do with empty tables has been added to the Tables section of http://drupal.org/node/501452

I don't think there is anything left to do on this issue.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

kika’s picture

Version: 7.x-dev » 8.x-dev
Issue tags: -Needs documentation, -d7uxsprint +Usability, +UI pattern, +d8ux

Time to resurface this old thread -- there are still some empty tables left what did not got proper empty text pattern treatment:

#1473198: Empty table pattern for "Edit [book's] order and titles" admin page
#1282156: Convert IP-blocking table to "Empty table pattern"
#1473214: Empty table pattern for "OpenID identities" user page

When those issues will be fixed this old fellow can rest again.

kika’s picture

Status: Closed (fixed) » Active

Reopeining as long as all empty tables are properly handled.

kika’s picture

jhodgdon’s picture

Can we consolidate on just one follow-up issue rather than two?

kika’s picture

Marked #664394: Convert remaining tables to "Empty table pattern" as dupe. This one contains more of the backstory (even somewhat open issues).

Devin Carlson’s picture

Status: Active » Fixed

All remaining "empty text" issues have been committed to D8 and are also committed/RTBC for D7.

Status: Fixed » Closed (fixed)
Issue tags: -Usability, -UI pattern, -d8ux

Automatically closed -- issue fixed for 2 weeks with no activity.