wohoo!
i love
minimal
Joomla!

Joomlas List Views

In the last few weeks I invested quite some time into reading and thinking about usability. Joomla 1.6/1.7 has made a great leap in terms of functionality, a lot of features are now implemented in a consistent manner and the behavior throughout Joomla is identical. However, while the functionality has been improved a lot, the usability kinda crashed. I personally find 1.6/1.7 a lot harder to use, especially for inexperienced users, than 1.5. The best example for that in my point of view, is the screen to create menu items. When creating an article menu item in 1.5, you had 3 sliders with parameters on the left. In 1.6/1.7 its the baffling number of 7 sliders and each slider contains a lot more parameters than in 1.5.

I think we desperately need to focus on usability again, even if that means that some functionality is removed again. I wont write about what to change in the parameters and all and how to achieve that goal (simply because I don't know) but I want to write about some ideas that I had together with the list views in Joomla.

If you look at components in Joomla, 98% of all components are "identical". They have a list view, listing the content items, and when you click an item, you get to an edit view, where you edit that content item. There is no big difference between a weblink, an article, a list of forums, products or webshop orders. The current list views in Joomla (especially in the core components) are not very user friendly. Every action creates a page reload, most of them are cumbersome and need to be specially learned. For example sorting the items can either be done by clicking the little arrows up and down or by typing in the numbers, which is both not the way we naturally sort things. In the real world (and in quite a lot of programs these days) you simply grab an item and move it to the position where you want it to be.

My research and thoughts have brought me to 8 rules regarding list views that Joomla currently violates and that I'd like to change over the coming months:

  1. Filters only reduce the list of items
  2. Filters only filter information that is visible in the table
  3. Filters are spacially near the column that it has an effect on
  4. Filtering has to be visible directly
  5. Ordering has to be visible directly
  6. Data, that has been made invalid by a different ordering is not made visible
  7. Data visible in the table should be changeable directly
  8. Operations that directly return to the list view should not require a reload

Rule #1: Filters only reduce the list of items

Did you ever search the trash or the archived articles? Joomla currently puts the trashed and archived state together with the published and unpublished state into the filters. Selecting the trash removes the complete current list and shows a new list of items that have this state. While from a technical point of view this is correct (its just a filter on an integer in one database column) it does not fit with the concept that the user has of his data. Maybe this is best compared with a desk. You have all your written articles on a desk, some of them in a pile that you still need to review and thus are not published, some in a pile that you are going to send out the way they are. (hence, published) If you now put something in the trash, you take it FROM the desk and put it in the trash can underneith the desk. Its not part of your work environment anymore. Its especially not a part of the order of items ON your desk anymore. This is similar with the archived state. You take a document from your desk and archive it in a folder in your shelf. Again, it is gone from your desk. While it might be right that in the code its just a filter on that one column, the archived and trashed state are completely different in the minds of the people to the published and unpublished state.

 

Rule #2: Filters only filter information that is visible in the table

Joomla is not exactly violating this rule all the time, but for example in the menu item list view, you have a filter for the different menus, but there is no column "menu" that corresponds with that filter. I would again opt for either removing that filter and displaying the different available menus in a different way or to show a complete list of all menu items. Currently its only possible to display the items of one menu at a time.

Rule #3: Filters are spacially near the column that it has an effect on

Joomla has improved in this area in 1.6/1.7 already a lot compared to 1.5. Filters are generally in the same order as the columns. But they are still mashed left and right above the actual list. How about putting the filter directly above its column, where it takes effect? Maybe even hide it a little bit behind the column, only showing it when hovering over it or something, maximizing the screen real estate for the actual list and reducing the noise around the list.

Rule #4: Filtering has to be visible directly

When you currently filter a list in Joomla, the only indication that you are filtering by a value is the state of the filter list above the list. Why not color the background of the column? Its a visible clue that you are displaying data based on this column. If we are putting the filters directly above and behind the respective column, we might wanna put the value by which we are filtering below the column title.

Rule #5: Ordering has to be visible directly

Basically this is the same as with Rule #4. How about coloring the border of the column? Give the user direct visible clues.

Rule #6: Data, that has been made invalid by a different ordering, is not made visible

This basically applies only to the ordering column. When the column can not be used and its content is not understandable without changing the ordering back to "ordering", why display the column at all?

Rule #7: Data visible in the table should be changeable directly

The question is, why we have to load the complete edit view to simply rename an article or put it into a different category. Inline-editing FTW! Its faster, requires less server load and especially for countries with a difficult bandwith situation, it makes working with Joomla faster.

Rule #8: Operations that directly return to the list view should not require a reload

Publish/Unpublish, changing the order of items, inline-editing, they all don't necessarily require a reload. How often have you clicked half a dozen publish icons in rapid succession only to have the page reload and only one or two items unpublished? These actions have to be ajaxified.

These 8 rules could greatly improve the list views of Joomla and would make most of the buttonbar superfluous. Add an icon for archived and trash where you can drag and drop the list items to and we have a go. This is not something that we will be able to achieve in two days work, but I think its time to tackle this area of Joomla.


blog comments powered by Disqus