Thoughts on D8UX Strategy

By Bojhan on 30 Nov, 2011

Drupal 8 development has been underway for some time now and we're seeing increased activity around issues that aim to improve Drupal usability.

What's been missing is an overview of where we should focus our time and energy when tackling Drupal user experience challenges. This post provides an outline of the topics we want to focus on to make Drupal 8 great.

In a nutshell, we want to:

  • Kick off some essential core UX design projects in the next months.
  • We will work on the content creation experience, fields UI and extending Drupal.
  • And last, we want to position the default profile(s) of Drupal core, and define a community-driven framework for making decisions on their directions.

One of our biggest challenges, is that we lack developers who are involved in each of these topics. We learned, that the best way to get great developers ready and willing to contribute to UX initiatives are, is when there are well-researched, solid design proposals. So lets all start there.

I presented a D8UX strategy talk at BADCamp, touching on the main core interfaces we want to improve.

Features come and go, tools are here to stay

Our core site building tools are rusty. They haven't seen much overhaul from a UX perspective in the last few release cycles and are often using UI concepts introduced years ago. These tools have fundamental issues that affect large parts of the Drupal ecosystem.

For the next months we will focus our design efforts on the fundamental overhauls of these core tools:

1. Content creation - Our content creation flow is hard to customize and provides few good defaults.
We worked hard on improving the UX for content creators in Drupal 7, but left out an important part - improving the actual content creation screen. In Drupal 8 we want to continue this work and finish revamping the content creation screen, add additional work flows (save as draft) and integrating more with contrib (providing better defaults for; media, WYSIWYG, vertical tabs).

This is a relatively self-contained design problem, which should result in specific actionable tasks. It’s also one where the problems are quite clearly layed out, therefor we will attack this one first as a good warming up for everyone who wants to be involved, before we dive into the more complex design challenges.

Jared Ponchot from Lullabot, has been working with us on revamping the content creation screen. We expect to be able to show details of this soon and we will need help to resolve some long standing issues around workflow.

2. Field UI - Creating fields is cumbersome, you are thrown into a complex user interface modeled after building data structures instead of matching the mental model of creating forms and their displays.
Custom content types with fine-grained control over individual fields is one of Drupal’s best product features. However, usability testing has clearly shown that the user interface we provide for this is just too complex for new users as well as existing users. There is a significant disconnect between the configuration interface and the end result. The user interface is modeled after the technical implementation, it quite literally reflects the database structure for how field definitions are stored.

We have seen that the formbuilder approach to the Field UI, solves a large deal of this conceptual problem. After a long period of discussion, we decided that this is something we want to persue in Drupal 8.

Swentel from Krimson has a sandbox up with a proof of concept implementation. We want to kick start this project early 2012, and need a lot of help in building this out.

3. Extend - Finding the right module for your use case is hard, and keeping things up-to-date is an recurring chore that is easily ignored.
The ability to extend Drupal with modules and themes is another big strength of Drupal. But sadly, most people are overwhelmed at the sight of the Modules page, and more often than not get lost in the process of trying to find the right module for their use case.

In the Drupal 7 cycle a lot of ground work has been put in place that allows us to now attack big parts of this problem from redesigning the modules page, improving the update manager, updating core, to last but not least adding a project browser that lets you browse modules and themes on Drupal.org from within your Drupal installation.

Currently we have no one who wants to lead up any of these parts. It is quite a complex domain, but given its such a central part of the Drupal experience we hope more contributors get involved.

These are all hairy, complex problems
Each one of these topics will need to be worked on from different angles. By breaking them up into small achievable steps, we can focus developers on specific tasks and get the most out our limited resources, while building towards the end goal.

Besides these few major topics, we have a large number of smaller projects that we are involved in from improving the toolbar, shortcut, dashboard to supporting other core initiatives; mobile initiative, configuration management initiative, web services and context core initiative and the multilingual initiative.

Snowman – the core product

What makes Drupal, Drupal? We return to this fundamental question regularly during each release cycle. The presentation above sheds some light on our definition but it is still important to define a shared product vision for the core install profile(s). For whom are we optimising our core site building tools? This will have a profound impact on our ability to successfully create something like Snowman. So, this is no small task.

The Snowman project is one attempt at creating a core installation profile that brings a focused experience:

Build a local community website, get you 60% there but focus on finding Drupal’s strengths. Small groups collaborating on a project who want to tell the world & convince others to join them.

What Snowman currently lacks is extensive research on what the targeted audience really needs. We’re currently navigating this terrain only on assumptions and a few write-ups done by Drupal insiders. We need a clear understanding of the desired features and the expectations for the overall experience to set a direction that the community can support.

This involves framing the areas Drupal competes in, creating a good understanding where it is better than others and where it is good enough. If we can capture this in a few essential words we have defined a vision that will help inform and inspire decisions at any scale.

We are looking for contributors to help out with running the necessary research, analysis and reporting to the community.

Next steps..

The proposed direction above comes from a lengthy process talking to core contributors and assessing our resources. Clearly these are the first more formalized thoughts that we have put out, but we intend to keep this up and talk more about future and current activities.

Dries has recently called for Drupal community leaders to find ways to scale themselves. For the UX-Team this means being less intensely involved in each issue and more in mentorship and attracting new contributors. It is no secret that the UX-Team apart from occasional influxes (D7UX) has been rather small, with few to no dedicated developers.

We hope by taking this more methodological approach to designing within the community, that there is more clarity and incentive to be involved. We have a lot of big and small challenges whom are in need of more developers.

  • We have been having bi-weekly UX meetings in #drupal-usability in IRC on Mondays at UTC 8PM (4PM EST), and will continue to do so. We will be reviewing contrib UI (bring yours!) and discussing the UX topics.
  • Get involved with the discussion and work on each topic! Ask me or Roy if you have any questions.
  • Follow our list of UX priorities.

We would love to hear your thoughts. Is the focus right? Can you be part of this?

Co-authored by Roy Scholten with great reviews by dcmistry, KatteKrab and catch.

Discussion

Focus is spot on.

As someone who has not been involved in the discussions the one part I would question is Snowman. It could be more generic than community sites? I would like see a 'Drupal Extended' released, with really robust integration and support for a few must-have contrib modules, Ctools, Views, Panels, Rules and some smaller ones (Global Redirect, maybe Admin Menu). Also to be considered for inclusion, Form Builder, Display Suite, and possibly some robust Ajax tools.

@John_B The idea for the Snowman profile is not to be generic, because this is what Drupal has always tried to be. There have been several ideas to encapsulate more contrib modules, but for Drupal 8 this does seem unlikely to happen. What we do expect is that install profiles, will be easier and therefor more starter profiles for intermediate Drupal users will start appearing.

I would like to see an option to turn off the admin toolbar window, when you edit content. So you can edit your content inside your site. Think about this: Drupal 8 focuses on HTML 5 and most developers use html 5 to create responsive websites. If you use the edit wyswig textarea in a window you dont see how the content will scale, how the context and content will be changed, how the blocks affect the layout.

Definitely looking to come along and join in the discussion on this.

I would love to see inline editing too. I know there are issues with relying on AJAX, and solid fall backs would needed, but this is one of the biggest places where Drupal is way behind. I also appreciate it is probably a huge amount of work.

Will join in on the proper threads on d.o

Add new comment