Let me start out by making a humble statement, here at SugarCRM, we do a lot of things right.
Note that I didn’t say we do everything right (hence the humble part). I know this will shock a lot of people and it definitely surprised me the first time I realized it but, we aren’t perfect. Bright and good looking, sure I’ll concede to that but we are still human. Take 508 compliance for example. 508 compliance is an area where SugarCRM has fallen short on in the past.
Having recognized this, we contracted outside help in identifying the areas we could improve on. We got yelled at, received many demerits, and were forced to do compensatory pushups. After a night of punching the pillow, many empty tissue boxes and 3 pints of Ice Cream we decided enough was enough and it was time for a change! Since the agency refused to ‘take it back’ we decided to go with plan B and improve SugarCRM to be more 508 compliant in the 6.4 release.
Jokes aside, 508 compliance is no laughing matter and we have finally started to make it a priority. We also acknowledge that there is still much work left for us to accomplish. In our initial phase we decided to go after the low hanging fruit that would provide the most impact and make our site easier to navigate with a reader. Among the changes were:
- Clean up alt text on images with wrong descriptions
- Give all images alt text where needed
- Combine Image and Text Links (to avoid duplicate text for readers)
- Properly label Table Headers
- Properly assign scope to Table cells and columns (scope=col / scope=row)
- Assign Headings (Header tags) to define page sections
- Added descriptive text, title, and/or label tags to form inputs
- Created an accessiblity theme with better color contrast.
- remove bad ordering on tab indexes
Scratching the surface
We know we can’t stop there, we still have a lot more work to do. We have barely begun to scratch the surface on this one. Some things on our radar are:
Our current tabindex scheme is incomplete. In previous releases, tabbing through the app was like playing ‘Where in my form is Cursor Sandiego?’ In this release, we took out tabindex numbering and let the browser decide the proper tab order. Of course, you can still define the tab index in the usual places in either the metadata or the studio. This may be upsetting to those who became accustomed to our archaic ordering, but we plan on working on a better dynamic numbering scheme that should make tabbing easier and more predictable.
Use of accesskey (aka ‘hot keys’, ‘alt keys’) are also going to be rethought. Whats wrong with them? Well depending on the page you are looking at, our access keys are not labeled correctly, are sometimes duplicated in the same form, and are missing from other buttons where you would expect them. We are working on this too.
More to come
For our friends who rely on 508 compliance I am sad to say that we are not fully there yet, but we are working on closing the gap. The 6.4 release is the first step and we plan to use it to gain momentum towards full compliance.