Planet

How Drupal Helps with the GoC's New Standards on Web Accessibility & Usability

Submitted by mgifford on

New CLF 3.0

OpenConcept has been participating working in the work of building a Drupal theme for the Treasury Board Secretariat's Common Look & Feel (CLF) for a number of years now.  We started distributing one in 2008 based on the Zen theme & Drupal 6.  It was pretty simple and relied on a great many modules to be downloaded & configured before it would work as expected.  We didn't get many contributions to improve the theme after providing it to a number of departments we and releasing it on IRCan, so we didn't invest much more in it.  At the very least it needed an install profile to allow the basic configurations to be set up so that it would be easier to get started.  

Then the CLF Office brought us in to look at the Web Experience Toolkit (WET). Admittedly, at first I wasn't a big fan, but the big picture initially presented by the CLF Office has become much more realistic in the last few months. A great deal of work has gone into improving & testing the code presented by WET on IRCan.  I love both that this framework is "Unless otherwise noted, computer program source code of the Web Experience Toolkit (WET) iscovered under Crown Copyright, Government of Canada, and is distributed under the MIT License." I think it's equally brialliant that the team behind this is reaching out to the Government of Ontario, Australia & is actively working to collaborate with other organizations to strengthen this framework. 

However, simply having a open source license doesn't mean that people or departments will devote any time or effort to doing so.  Fortunately an innovative team at Statistics Canada is pushing forward with an extremely promising initiative that promises to meet the needs of many departments struggling to meet WCAG 2.0 AA requirements. As with any community driven initiative you need at least one core member with a strong vision to push ideas and keep a project moving.  

The theme developed by StatsCan is using the Government of Canada's new Standard on Web Usability. This theme was only officially released earlier this month, so it is great that there is a solid implementation already available with a free software license. The theme is also an extension of the Drupal theme Genesis, which has done more than any other Drupal 7 theme to meet accessibility requirements. This allows for the new WET theme to be more closely tied to the Drupal way, which will reduce costs & increase security. 

Now StatsCan didn't develop this in isolation and worked with the RCMP, OpenPlus, LiquidCMS & OpenConcept to produce a very good Beta implementation. It's going to need greater contributions from other government departments who are already using Drupal or who are seriously considering deploying it.  This shouldn't simply be within the federal government, and hopefully the Government of Ontario is able to start contributing more as they start launching more sites with this platform (a big site is about to be launched soon I understand). It takes more collaboration to make this as robust as I'd like to see it. 

Intelligent Open Source Collaboration for Better Accessibility

Submitted by mgifford on

Recently as we've been working on enhancements to Drupal 8, we run into several situations where we are looking at the jQuery library.  Drupal's been including the free software jQuery for the last two releases and are using it more and more as it evolves. We were hoping we'd be able to simply leverage a solid accessible jQuery UI element rather than have to continue to enhance our own javascript widgets.  

jQuery UI 1.8 has an autocomplete widget in it so why don't we just use this rather than re-invent the wheel for Drupal 8.  Unfortunately based on some quick testing by Everett Zufelt the autocomplete widget wasn't as accessible as what we have implemented in Drupal 7. At the writing of this post there are nearly 200,000 websites that report running Drupal 7 and are benefiting from the enhancements we've made. Investing in Drupal core is already removing barriers for millions of people on live websites. jQuery improvements will have an even bigger impact. 

Now ideally we'd have lots of resources put into central libraries like jQuery because when these core projects get enhanced, everyone who uses them benefits.  It just makes so much sense to invest limited accessibility funding into the projects which will have the biggest bang.  Just take a look at some of these jQuery powered sites and projects. Just having Drupal and WordPress using them means that by default it's being used by a large percentage of the web.  

Now there have been attempts in the past to improve the accessibility of jQuery & related widgets.  The Paciello Group (TPG) developed this library of accessible jQuery widgets through funding by AOL and AEGIS.  There is a similar initiative that's being spearheaded by the Government of Canada to better integrate accessible jQuery widgets for their Web Experience Toolkit. jQuery is the recommended javascript library for the implementation of the federal government's Common Look & Feel.  All Government of Canada sites are required to be WCAG 2.0 AA compliant by the summer of 2013, so improving jQuery's accessibility is critical for government. These are both good initiatives, but I haven't seen evidence of the work moving upstream and being adopted by the jQuery community. 

The Definitive Guide to Drupal 7

Submitted by openconcept on

Definitive Guide to Drupal 7 BookOpenConcept has been donating books to the Ottawa Public Library for a couple years now, and so last fall I ordered a bunch of Drupal 7 books anticipating that we'd review them within our team & then order new ones to the library had a fresh copy. I ordered my copy of the Definitive Guide to Drupal 7 (DGD7) back in 2010 along with several others. Well, Drupal 7 took a while to get finalized and so many of the books which were started then didn't actually get finished until after Drupal core had been finalized in January.

It was just after Dries keynote at the Chicago DrupalCon that Benjamin Melançon approached me at the last moment to try to get an accessibility appendix added to the the book. With all of the accessibility enhancements that had gone into Drupal 7 & the emphasis that Dries gave it for the Drupal 8 process, it was clear that this needed to be covered in the book. It's been a long process working on Drupal core and I've had the pleasure to work with Bojhan Somers, Jacine Luisi, Károly Négyesi, Nathaniel Catchpole and Roy Scholten. I've met with other contributors at DrupalCons and DrupalCamps I have attended -- this is definitely a book which is very representative of this broad community. {C}

Adding a CSS Markup Detective to Drupal

Submitted by mgifford on

A sherlock monkeyI ran across Holmes by Red Root thanks to Sean Yo and decided to check out how well it would work within a Drupal environment. Turns out that this clever markup detective will dig through & quickly highlight improper HTML markup with quite a lot of accuracy. There's so much power in CSS 3 it's exciting to see how it can be used to enhance accessibility. You can see the full testing suite in action, but I've also deliberately added some errors within this page.

One of the challenges with accessibility is that even when you have a great theme & have evaluated the modules and plugins your site uses, you still have to grapple with user generated content. Holmes, the CSS Markup Detective, is a very simple tool which provides a great way to double check that your content is written effectively. It's also trivial to add this into your existing Drupal theme and have it only loaded when an editor is viewing the site. Use of automated testing tools like WAVE & FAE need to be included in any accessible site and the holmes.css file is a great addition to this suite of validators. None of them will ensure that your site is without barriers, but it will at least alert you to the easy stuff that is often overlooked.

The code is now GPL and all you need to do is download the CSS file. In our case we're using the Genesis theme & so have placed it in our sub-theme's css directory. Then it's simply a matter of editing your template.php and adding this to your YOUR_THEME_preprocess_html() function:

Geolocation With Drupal 7 & HTML5

Submitted by mgifford on

Google Maps & HTML5 GeolocationThe quick summary is that it's not ready yet, but it's looking very exciting! To get an update on the status of geospacial modules the following wiki is key.  Unfortunately, of the 20 or so geo modules, only 6 have a Drupal 7 release at this point (only two of which are alpha releases & the rest are development releases).  

Using the jQuery Tweet! Scripts with Drupal

Submitted by mgifford on

jQuery Tweet! ScreenshotI needed to make some modifications to our blog page and include some of the micro-blogging we've been doing. I ultimately just wanted to add a block to selective pages to allow us to feature what we are saying on Twitter and although there are a few Drupal modules, they seemed like overkill for what I needed.  The most widely used Twitter module doesn't have a Drupal 7 release yet. There was a Twitter Block module with a D7 release, but I ran into a bug which stopped it from for me (although this is being fixed by the maintainer).  I ran into Twitter Pull, Daily Tweet & Tweet only when writing this article, but both have Drupal 7 versions.

Although there were various tutorials on how to embed Twitter into your Drupal site, none of them were quite what I was looking for.  I figured I'd search for jQuery & Twitter to see if I could find a widget I'd like and came across Tweet! which seemed to do what I was looking for. I liked the flexibility of this script and figured that this might be the easiest way to integrate it into our blog.  Bing able to pull from lists or pre-set lists of Twitter users seemed pretty powerful.  I also really liked that the code was available through GitHub.

I ran into some difficulties implementing this and decided to check out the GitHub issue queue to see how well it worked.  I've participated a lot in SourceForge & Drupal issue queues in the past but was happy with the clean presentation in GitHub.  I was also happy to get fast response from the maintainer who really helped me get this up quickly.

DrupalCon Chicago and Accessibility

Submitted by mgifford on

I don't know where the time's gone, but next week at this time I'm going to be at DrupalCon with thousands of other users & developers.  I've really enjoyed Boston, DC & San Francisco, and expect that Chicago will be just as exciting.  It's interesting to reflect that it was in 2008 at the Boston Keynote that Dries set the course for Drupal 7 challenged the community to embrace RDFa.  This was long before we became involved in making Drupal 7 more accessible, but making sites more machine readable will do a lot to making them more accessible to people too.  

William Lawrence gave the first Accessibility talk at a DrupalCon back in Szeged in 2008. I didn't get to see Accessibility: Best Practices In Drupal Theming, but was happy to meet with William at other DrupalCons.  In 2009, we helped to organize two Birds of a Feather sessions on Accessibility.   It was a great start, but unfortunately there were no main sessions looking at this issue.  In SF, there was a great session by 

Katherine but and also some frank strategic discussions about how to enhance on Drupal 7.  We were fortunate that John Foliot was able to come in and that we were able to bring in Cliff Tyllick on Skype.  

San Francisco also had two accessibility talks which were wonderful.  Everett Zufelt presented first at the Drupal Core Developers Summit. He also became Drupal's first Accessibility Maintainer. It was a strong presentation to the key decision makers in the Drupal community and having him give that talk was an important indication of how important this issue is.  Katherine Lynch gave the talk at the main conference Accessibility in Drupal 6 and Drupal 7 - Write Accessible Modules and Themes and did an impressive job explaining the importance of accessibility considerations.

Gitting Earth Hour & Drupal

Submitted by mgifford on

We've used CVS, SVN over the years and are now using Git. If you've not a programmer you probably wouldn't be familiar with tools like Concurrent Versions System or Subversion which allow for precise sharing & collaboration between thousands of people but with over 150,000 lines of code in Drupal Core, you really need to have a way to manage these details to ensure that you've got the highest quality control possible.  Git is the latest in social coding and because if it's distributed framework it should allow many more people to evaluate, experiment & collaborate with the Drupal community.  

Git & Drupal

Knowing that Drupal was adopting Git, we made the move to adopt it, replacing many of our other repositories.  There is quite a learning curve to get it set up and integrated with our processes, but it's been very impressive thus far.  Our ability to quickly integrate around a standard tool set that allows us to both track & centralize changes for our projects is already beginning to pay off.  Configuration files, default error messages, custom modules, client themes, not to mention Drupal core and community contributed themes/modules.  

SEO Fluff, Marketing & Other Nonsense

Submitted by mgifford on

I'm the first to admit that search engine optimization is important. I know that there is a lot to be learned about how to drive people to your site and ensure that they keep coming back to it. Two years ago it was estimated that there were 63 billion pages indexed by search engines. How will your site show up in the first pages of Google results if you don't get an edge over everyone else?

I know that there really are 'SEO Experts' out there, that know the web well and have seriously researched search engine behavior. But there are an equal number of people who have taken a course or two, bought some software to help them and whose real strength is selling their service.

A lot of 'SEO Experts' like to put content in static HTML pages in which they have complete control. Unfortunately, this makes the content harder for anyone in the organization to update and also makes it impossible for tools like Path Track to be able to monitor folks through your site. We recommend leveraging Drupal rather than building a hybrid site.

Accessibility Enhancements for Drupal 6 Themes - Invisible Elements

Submitted by mgifford on

Now that Drupal 7 is almost out the door, it's a good time to look through the known accessibility issues and document what are the best practices that have been implemented that can be brought into Drupal 6 themes.

The first bit is perhaps the easiest. Bring over the code to handle hidden, invisible & visible on focus elements:

Pages

Subscribe to Planet