Web Design and Development

A new design system for Drupal.org

Drupal - Mon, 04/11/2016 - 18:17

As mentioned in our previous post, one of the initiatives we are working on this year is building a new visual system for Drupal.org.

It has been 7 years since Mark Boulton worked on a design plan for Drupal.org. Since then the web has come a long way. So has Drupal. Drupal.org needs a modern design, and the Product team at the Drupal Association has been working steadfastly on a plan to make that happen.

Building on insights from our user research and content strategy work, we have begun laying out a foundation for the future design system for the site.

Goal

Update Drupal.org to reflect the flexibility, modernity, and community of Drupal itself.

Design Principles

Before we started work on the design for Drupal.org we needed to iron out our process and the principles we wanted to keep in mind throughout our work.

To that end, tvn and I holed up for a weekend design retreat, which resulted in tons of post-it notes about what Drupal.org design looks like, what it should look like, and what we can learn from others -- to develop the design principles that will move Drupal.org forward.

Working on design principles for http://t.co/H0d2MHDCaS with @DyanneNova pic.twitter.com/XVZ0bgPlTe

— tvn (@tvnweb) July 25, 2015

After much deliberation, condensing, rewriting, and discussion with the wider Engineering and Communication teams, these are the principles we found to be our best guiding mantras:

Start with user needs.
We only design for real people. We verify their needs and let that information be our guide when designing anything.

Keep it simple. Focus.
We do less, but better. We focus on the areas we can have the most impact. Our designs are simple and clean, and our messages are clear. We strive for brevity and avoid clutter.

Be consistent. Re-use.
Our designs should be part of a consistent, cohesive system. We don’t introduce new patterns if we can re-use or improve any of the existing ones.

Be accessible.
Our designs should be usable by anyone, on any device or screen size, on a high speed connection or a slow network, by people with different native languages, and regardless of their accessibility needs.

Be relevant. Try new things.
Our designs are relevant and fresh. We keep up with the latest trends and are not afraid to try something new.

Iterate quickly.
We do small and quick iterations, continuously improving the experience. We experiment and test out different approaches.

Use Data.
We use data to support and drive our decisions. This includes analytics, data from testing and experiments, data gleaned through user research methods including interviews, surveys, and so on.

Work openly. Be honest.
Our designs are honest and authentic, and our intentions are transparent. We call things what they are. We respect our community values. We communicate openly and often.

Engage and empower.
We design experiences that unite our users and empower them to collaborate and do great things, because they can.

Be friendly.
We create friendly and welcoming environments. We want our users to feel welcome and supported.

Design Vision

Once we had our design principles in place we needed to move from those abstract guidelines to actual design plans for the website.

After DrupalCon Barcelona, we set aside time for another design retreat. This time tvn lost her voice on day 2, so miming and typing became a fun part of the workflow.

Our first step was to create a mood board of inspirational user interfaces to give us a beginning design language and a starting point for discussion.

Then we began our work with style tiles. I created four first drafts, informed by our mood board. One was softer, with varying shades of blue. At the other extreme was a largely monochrome design, with only tiny hints of the Drupal blue. After a few rounds of reviews and revisions we came up with the following visual system, which we feel matches our goals and gives a general idea of the mood, colors, and visuals we plan to move towards.

The general mood here was inspired by the idea of builders and makers working together to build something larger. We combine blueprint textures, single-width line icons, and an open typeface to make Drupal.org feel like the home to a continually improving framework.

We’ve kept the Drupal blue, and tweaked our green to bring it to a cooler shade. We’ve added darker tones for every color to give us more opportunity for high contrast.

The end goal is to make Drupal.org a useful space for contributors and users alike with a consistent quality of design throughout the site.

To that end, we’ve started work on a pattern library which will categorize all of the different design patterns used on Drupal.org. As we build out new patterns for new features they will be added to the library as well. The styles will be automatically inherited from the theme, which will make maintenance of the library as simple as adding relevant content to a page.

Iterative Approach

To support our current prioritization we knew we would need to use a very iterative process for launching design updates. Our strategy is to make design updates as we can when a new feature is prioritized. As each area of the site is functionally improved, it receives visual improvements as well. You’ve seen some of these updates already in the Drupal 8 launch and in the smaller updates to Drupal.org since last November.



With the Drupal 8 launch came a re-styled header for Drupal.org.

Release pages also received a small update to the download area, with clearer calls to action.

Shortly after that, we held a membership drive with a banner and a front page region highlighting community members. And just a few weeks ago we set up a new banner for promoting community elections to the Board, which can also be used for any important announcements going forward.

Next Steps

Our next big project is Documentation. We’ve been toiling away on these features for months now as part of our overall content restructure work. After the first pass of wireframes and design mockups, we collected input from documentation users via usability testing held remotely and in person at the Drupal Association office in Portland, Oregon, and at DrupalCamp London. Based on all the feedback, we've done a few revisions on our initial ideas and designs. We've spoken with a wide range of community members, from newcomers to masters, and their input was invaluable for arriving at a design that really works for the user.

You can see some of the new patterns we’ve begun work on in this mockup, such as the documentation section header and tags. We also have a pattern for related content which isn’t visible in the image. In our usability testing, we found that wayfinders were incredibly important to the experience of documentation, so we spent considerable time on improving the breadcrumbs and menu navigational patterns before arriving at what you see above.

How to get involved

There are a number of ways to get involved in improving Drupal.org. You can read more about general volunteering here.

If you’re interested in joining our usability testing sessions held both remotely and in person at major Drupal events, please fill out this form and we’ll reach out to you when the next session is being planned.

To post an issue about design on Drupal.org, use the project issue queue at Drupal.org Design. This issue queue will replace the Bluecheese theme queue going forward as a central place to report issues or inconsistencies with Drupal.org design. Meta discussions of design on Drupal.org are also welcome in the queue.

If you’d like to participate in quick design discussions about Drupal.org and be available to give feedback on upcoming design decisions, join us on Slack at channel #drupalorg-design.

As we incrementally roll out new features, you’ll see Drupal.org move ever closer to our updated visual system. Thanks for coming along for the ride!

What’s new on Drupal.org? - March 2016

Drupal - Fri, 04/08/2016 - 13:32

Read our Roadmap to understand how this work falls into priorities set by the Drupal Association with direction and collaboration from the Board and community.

Drupal.org updates Syntax Highlighting

A WYSIWYG editor(CKEditor) is coming to Drupal.org soon to improve the editorial experience- and to take advantage of the same functionality that made CKEditor the choice for Drupal 8 core. However, as a stepping stone to that goal, we need to ensure that the formatting of <code> blocks throughout Drupal.org is preserved.

This has lead us to using Prism.js for syntax highlighting on Drupal.org. You can see this change in any <code> or <?php> block throughout the site, such as this example of function hook_field_info_alter(); below:

function hook_field_info_alter(&$info) { // Change the default widget for fields of type 'foo'. if (isset($info['foo'])) { $info['foo']['default widget'] = 'mymodule_widget'; } }

This is the first step, but with a better syntax highlighting library in place, we are pushing hard to make CKEditor itself available on Drupal.org.

Documentation Usability Testing

In March members of the Drupal Association engineering team also spent time doing usability testing with a prototype of our new Documentation content type. This testing, performed with a representative sample of users of different experience levels with Drupal, helped validate our design direction for new Documentation pages and Documentation Guides on Drupal.org, and gave us some valuable feedback for further refining our design as we move into implementation. While we're not yet ready to share all the details of the new Documentation experience, we're very excited to share this with the community soon.

Release File Hashes

A file hash can be used to verify the integrity of a file downloaded from a trusted source. Drupal.org provided an md5 hash on the list of a project's releases (here's the release listing for Drupal core, for example), but we have expanded the file hash options to include: md5, sha-1, and sha-256.

Because many users do not use file hashes, these hashes are not displayed by default. Any user who does want to access these file hashes can do so from a toggle on the sidebar of a release page. Your preference for what file hash to view will be saved in your browser's local storage and displayed on all other release pages. The new sha-1 hashes will also be used in upcoming Composer integration.

Communications channels

Taking advantage of the new Sections and Blogs on Drupal.org, we're gradually working on improving our communication channels. It starts with the Drupal blog, and the Drupal.org blog (which you're reading now!) - but will soon affect all the ways we communicate about Drupal the software and Drupal.org the site.

You can learn more about communication channels here.

2016 Elections Complete

Lastly, but certainly not least - the 2016 election for the Drupal Association At-Large board member ended in March. For the first time, we promoted the voting process to all eligible voters with a targeted banner on Drupal.org. This gave us the broadest reach we've ever had when electing a board member, and the most ballots submitted. You can learn more about the elections process and the final vote here.

Congratulations Shayamala Rajaram - and thank you for supporting the community by joining the board!

Sustaining support and maintenance Drupal.org Outages

Unfortunately our work in March was disrupted on several occasions by a particularly tricky series of outages. Seemingly at random one of the Drupal.org webnodes would experience cache corruption and begin serving 500 errors. The issues did not seem to be related to a recent change, a singular area of the site, or an increase in traffic. After some diligent sleuthing we began to see some patterns in the cache corruption.

In the end, we were able to determine that all the outages were linked to the same bug in Drupal core's handling of SchemaCache. Drupal.org has been patched and since then no cache corruption incidents have recurred. With a bit more community review (you can help!), hopefully the fix will be committed to core so other affected sites will not encounter the same issue that we did.

More Improvements and Bug Fixes

We made a few other infrastructural improvements and bug fixes in March as well. Not the least of these was deploying dedicated beanstalkd queue servers, to improve the reliability of Drupal.org job queues, especially when recovering from disruption.

We also fixed a regression on groups.drupal.org caused by the upgrade to PHP 5.4 the previous month. A bug in the date chooser caused the date of an event to be reset whenever the event was edited- an issue that we know was frustrating to many in the community who organize local events.

Lastly, we fixed an issue on jobs.drupal.org to make it easier for companies to renew their featured job listings (without having to reach out to us for manual support). We're seeing a marked increase in the Drupal Jobs interest since the launch of Drupal 8 and we'll continue to improve the Drupal Jobs platform to foster the Drupal ecosystem.

———

As always, we’d like to say thanks to all the volunteers who work with us, and to the Drupal Association Supporters, who made it possible for us to work on these projects.

Follow us on Twitter for regular updates: @drupal_org, @drupal_infra

Drupal 8.1.0 RC1 is available for testing

Drupal - Wed, 04/06/2016 - 14:46

The first release candidate for the upcoming Drupal 8.1.0 release is now available for testing. With Drupal 8, we made major changes in our release process, adopting semantic versioning and scheduled releases. This allows us to make significant improvements to Drupal 8 in a timely fashion while still providing backwards compatibility. Drupal 8.1.0 will be the first such update, expected to be released April 20.

Download Drupal-8.1.0-rc1

8.1.x includes an experimental user interface for migrating from Drupal 6 and 7, the BigPipe module for increasing perceived site performance, and more. You can read a detailed list of improvements in the announcements of beta1 and beta2.

What does this mean to me?
For Drupal 8 site owners

The final bugfix release of 8.0.x has been released. 8.0.x will receive no further releases following 8.1.0, and sites should prepare to update from 8.0.x to 8.1.x in order to continue getting bug and security fixes. Use update.php to update your 8.0.x sites to the 8.1.x series, just as you would to update from (e.g.) 8.0.4 to 8.0.5. You can use this release candidate to test the update. (Always back up your data before updating sites, and do not test updates in production.)

For module and theme authors

Drupal 8.1.x is backwards-compatible with 8.0.x. However, it does include internal API changes and API changes to experimental modules, so some minor updates may be required. Review the change records for 8.1.x, and test modules and themes with the release candidate now.

For translators

Some text changes were made since Drupal 8.0.0. Localize.drupal.org automatically offers these new and modified strings for translation. Strings are frozen with the release candidate, so translators can now update translations.

For core developers

All outstanding issues filed against 8.0.x are automatically migrated to 8.1.x after the final 8.0.x patch release. Future bug reports should be targeted against the 8.1.x branch. 8.2.x will remain open for new development during the 8.1.x release candidate phase. For more information, see the release candidate phase announcement.

Your bug reports help make Drupal better!

Release candidates are a chance to identify bugs for the upcoming release, so help us by searching the issue queue for any bugs you find, and filing a new issue if your bug has not been reported yet.

Note that there are known issues with the experimental Migrate module suite, especially the incomplete Drupal 7 to Drupal 8 migration path. If the bug you find is not covered by one of these issues, your detailed bug report with steps to reproduce is a big help!

Front page news: Planet DrupalDrupal version: Drupal 8.x

Restructuring Drupal.org

Drupal - Wed, 04/06/2016 - 09:33

In this post I'd like to talk about one of our major projects for 2016, which comes as a follow up to the content strategy project of 2015.

Content restructure

Last year we presented our findings from the content strategy developed by Drupal Association staff in collaboration with Forum One. This year we're focusing on bringing as many of those ideas to life as we can. We call this implementation phase 'content restructure'. We'll look at one area of the site at a time, audit its content, change the way it is created and stored (content type) if needed, redesign the way it looks and reorganize it into a more usable and findable structure, improving content quality and giving content creators better tools to maintain it along the way.

The backbone of the new content structure are 'sections' or top level groupings of content. We created infrastructure to make those possible and have already launched the first few.

Together with sections we've been rolling out blogs to improve how we communicate about specific topics on Drupal.org. Recently, I talked in more detail how blogs and sections fit into our overall plan of making it easier to communicate important announcements and news to the Drupal community.

Our current focus is Documentation area of the site. We're working on a complete revamp that will change the way documentation looks and works, and will change the way users can navigate and improve documentation. We're working closely with the Documentation Working Group and performing rounds of usability testing to ensure the changes we are working on will improve the user experience across the board. More details on this can be found in the issue queue.

A big part of the content restructure plan is a content audit and migration. This is especially true for documentation revamp, where we have thousands of pages to migrate into the new system. We'll be turning to the community to help us with this effort. Not only because that's too many pages for a small team like ours to migrate on our own, but also because we need subject matter experts to look at a lot of the pages and evaluate how accurate they are, whether they should be migrated or archived, and so on.

More than just content

Along with the content restructure project, we'll be doing important work that complements and supports it, though each component is not a discrete project on its own.

Developing visual design system

The current Drupal.org design is based on branding and design work done in 2008 by Mark Boulton Design and Leisa Reichelt. They did a great job, but even the most beautiful site will age. Since more than seven years have elapsed since the last redesign, it's time to update the site for a more contemporary look.

Our quest towards updating Drupal.org visually started in 2014 with the user research project, which brought us user personas. The next big step was the content strategy project, which laid the groundwork for the content restructure work discussed above.

Building on what we learned about our users, and how to structure our content to best serve their needs, this year we'll be introducing the new visual design system for the site. There will not be a single, comprehensive launch, where you wake up and suddenly Drupal.org looks completely different. We'll do it iteratively, in parallel with the content restructure, by redesigning the specific area of the site we are focusing on at a given time. This approach lets us introduce visual changes sooner, and iteratively improve and refine them as we go. In fact, you've already seen some of the elements of the new visual system appear with the Drupal 8 launch.

Later this week, our designer DyanneNova will share a bit more details about the work we've already done towards the new system and our next steps.

Updating content style guide

Along with restructuring content we also want to improve the quality of the existing content during migrations, as well as the quality of the content that will be created in the future. To this end, we'll be taking a look at the content style guide, and plan to refresh and update it. We also anticipate expanding the guide to add information about specific content types and communication channels.

Capturing user engagement and contribution

Another aspect of our content restructure work will touch on user engagement and contribution. As we go area through area of the site, redesigning it and improving its content, we'll be looking at what type of user engagement and contributions happen in that area. We'll be looking for opportunities to better capture them, and subsequently better recognize and display those contributions. For example, right now 'documentation edits' count on user profiles show the number of edits user has done to 'book page' content type items, which may or may not be documentation. We'll make that calculation more precise to display the actual documentation edits. We'll also be able to display specific parts of documentation a user maintains, similar to projects they maintain.

Increasing sustainability

An ongoing challenge at the Drupal Association is ensuring we have sustainable revenue to support our work for the community. As we do this work, we will be looking into improving existing revenue opportunities and introducing new ones to make Drupal.org more sustainable. We will also work closely with partners who may be willing to sponsor specific improvements to Drupal.org on behalf of the community.

Other initiatives

The content restructure is not the only project we are working on right now. Some of the other initiatives will be described in future posts. Check our Roadmap to see all the things in progress.

And if you happen to be at DrupalCon New Orleans this May, come to our session to get further updates on some of the topics discussed in this blog.

Pages