Skip to content →

The Idea Place Posts

Another Day, Another Example of Missing Alt Text

As much as I’m sure anyone familiar with web accessibility doesn’t need yet another example of why alt text matters, as a consumer of web content I certainly am impacted when it is missing.

For anyone exploring cutting the cord, the U.S. Federal Communications Commission (FCC) has a handy resource to show you what digital television stations you can receive in your area with an antenna. Navigate to https://www.fcc.gov/media/engineering/dtvmaps and enter an address, city and state or zip code to get this information. Results are in a table that has headers and such. This is good.

Unfortunately, one of the key pieces of information, the signal strength from these results is a graphic. As you can expect from the title of this post, there is no alt text on these graphics.

Section 508 has been around for quite some time as have the Web Content Accessibility Guidelines. Proper alt text, again as I’m sure pretty much anyone working in the web environment knows, is a requirement. One can only wonder why something this basic was missed.

One Comment

A Request to Librarians: Please Ask OverDrive About Libby Accessibility

I’m a big fan of public libraries and the wide range of resources they make available. As a child making stops to my local bookmobile or summer afternoons spent at “Story Time Tree” to hear a fun adventure were two of my favorite activities. As an adult, I make frequent use of the eBook services, databases and other resources libraries make available.

OverDrive is as far as I know the largest player in making eBooks available to libraries. In many ways they provide a quality service but I’d encourage every librarian to fully understand the bargain you are making when you use OverDrive.

Would your library tolerate an author or other speaker coming to give a talk in your facility secretly whispering to some visitors they should not attend the talk? I think not, yet when you invite OverDrive into your facility, that is close to what you are doing.

OverDrive heavily promotes their Libby app as a part of the eBook services they offer. What I suspect most librarians do not know is that for users who rely on screen reading technology, the following is what greets their patrons when the Libby app is launched:

Welcome to Libby! This is a secret message for screen readers. We are working to improve your experience with this app. In the meantime, our OverDrive app is more accessible. You can find it in the app store. We thank you for your patience.

Libby is hardly a new app at this point and it should have been accessible from the start in the first place. This message has been present to the best of my knowledge for close to two years now. My own requests to OverDrive asking for any updates have gone without any meaningful response on multiple occasions.

Accessibility requirements too are nothing new. Nor are the technical details to make an app accessible a mystery. Apple, where this message appears on the iOS Libby app, has a wealth of resources. OverDrive itself by directing users to their older app, claiming it is more accessible, also demonstrates they understand accessibility to some degree.

I’d encourage librarians to ask OverDrive when this app will be accessible? Ask why is this message indicating the app has accessibility issues “secret”. It is beyond time that these sorts of challenges not be hidden away. It is time for them to be fixed and most definitely not hidden.

One Comment

MLB Strikes Out on Accessibility

Although it took a structured negotiation and settlement, at one point MLB seemed like it was turning the corner on improving and sustaining accessibility. Sadly that time seems to have passed, much like a favorite star of yesterday.

Most recently, MLB added a simple game to their AT Bat app with a bracket challenge to pick winners in the upcoming Home Run Derby. The problem is for accessibility purposes, MLB used “Player Name” as the accessible names for each player. Obviously this means if you use a screen reader such as VoiceOver on the iPhone, you have no idea what names you’d be selecting. Capping the problem off, when I called MLB’s dedicated accessibility support phone number to report the issue, the support representative asked me, “What’s VoiceOver?” I spent more of the call teaching the person how to use VoiceOver versus anything else.

One can only wonder if MLB did any accessibility testing of this game. It took me less than two minutes to notice the issue. For an organization that seems to keep statistics on almost every conceivable aspect of a game, it doesn’t seem like it would be too difficult to ensure accessibility testing is a part of all processes.

After trying the game in the At Bat app, I did try the web site as a part of writing this blog post. That does work a bit better but still has issues. Further, why should users of screen readers be forced to jump through extra hoops and try multiple versions just to have a bit of recreation? MLB has demonstrated the ability to be a leader in accessibility previously. Here’s hoping the organization finds a way to return to those levels. In this case, it is a strikeout on accessibility, leaving this fan disappointed and more.

2 Comments

Inaccessibility Simply Gets Old

There are times when the continued lack of accessibility in basic tasks gets old. Today I wanted to see if my local Staples store carried a product so conducted a product search. Between all the instances of “icon”and “product tile large” on the resulting page, I have absolutely no idea if the product I was searching for is actually available.

I could write all about web accessibility standards or why it is important to make your web site accessible. I could also write a detailed analysis of what is wrong on the web site. Instead I’ll just say, it is disappointing that near the end of 2018, a product search on a major retail company’s web site still leads to every product reading”product tile large” with  multiple screen readers.

Staples does have an accessibility policy of sorts.

Leave a Comment

Improving the Usability of an Online Scrabble Game

A friend recently invited me to play a scrabble-like online game called Jamble on a service called ItsYourTurn.com (IYT). The service is far from a model of accessibility and I’m hopeful the company will respond to my contact about improving the basic accessibility of the site. Until that happens, I wanted to share some tips and a dictionary file I’ve created for the JAWS screen reader because it does make the game quite playable in my opinion.

The fundamental challenge for IYT and screen readers in particular is that the site makes extensive use of graphics that are all missing alternative text. JAWS, as do some other screen readers, copes with this situation by communicating some form of the address to the graphic file. In JAWS, if the graphic is part of a link, that address will be communicated by default. If it is just a graphic, a setting allows JAWS to still communicate that address. You will want to change the JAWS settings for graphics from show tagged to show all.

In my first game, the game board for Jamble read something like the following to me:

15 jb/jb-bl-2l jb/jb-bl jb/jb-bl jb/jb-bl-3w jb/jb-bl jb/jb-bl jb/jb-bl jb/jb-bl-2l

My seven letter tiles read as:

jb/jb-qu jb/jb-C jb/jb-D jb/jb-E jb/jb-L jb/jb-U jb/jb-V  

In fact, about the only positive was that the gameboard used an HTML table so screen reading table commands could be used to easily move around.

Turning the mishmash of letters here into something meaningful was quite easy though. A common feature of screen readers is to have a speech dictionary that allows a user to enter alternative spellings of words to improve on the pronunciation when speech synthesis doesn’t get things quite right.

Fixing all of the missing alt text and getting the various game squares and letter tiles to read something meaningful involved entering a series of speech dictionary definitions. For example, the text “jb/jb-bl-2l” was replaced with “Double Letter” since that square on the board was a double letter square. This means that JAWS now says “double letter” instead of the jb-gibberish.

One challenge I encountered initially when playing the game was finding the new word played each time by my opponent. The new letters played have a slightly different filename graphic for the first turn after they are played. A “-z” is appended to the filename. It was just a matter of updating speech dictionary rules to indicate not just the letter but also the fact that it was new. That helped with ensuring the letter was read correctly but I had no interest in hunting around a 15X15 grid to find new words each turn.

While the speech dictionary in JAWS does replace how words are communicated, it doesn’t alter the basic text. So, I was able to identify that the filename for the new letters always ends in -z. Thus, to find the new word just played by my opponent each time it is my turn, I can just do a search for -z and JAWS will position me on the first new letter on the board. I can then use table reading commands to explore around that letter to find the rest of the newly created word.

I’ve published a speech dictionary for this game in two forms. First is a JAWS settings package you can use to import the dictionary into JAWS. This is for the Chrome web browser. In JAWS, use the Import/Export menu option on the Utilities menu and choose import. In the dialog that appears, provide the file location where you save the settings file. For more information on importing settings files, please see the topic Importing and Exporting User Settings in the JAWS help.

For those comfortable with JAWS file locations and such, I’ve also published the chrome.jdf

file directly. You can download this file and copy it manually to the appropriate location on your computer. This would be %appdata%/Roaming/Freedom%20Scientific/JAWS/2019/Settings/enu with the most recent version of JAWS. You can also rename it for other web browsers or copy the existing text into your own existing dictionary file.

I am also experimenting with the ability in JAWS to use sounds in these dictionary files. That will allow game squares that are double and triple words or letters as an example to play unique sounds. Another dictionary update will be available when this sound option is completed.

Some Notes on Game Play and Other Randomness

To the extent my interest, time and ability to make updates is available, I intent this blog post to be a bit of a living document. What follows are brief notes about game play, screen reading techniques and other information that might be helpful if you opt to try this or other games from the IYT web site.

  1. The basic table for games in Jamble is a 16×16 table. The left-most column contains numbers for each row in the table. The numbers start at 15 in the upper left corner of the table. The bottom cell in this column is blank.
  2. The bottom row, or row 16, of the table contains the letters a through o to give letters to each column in the table.
  3. This leaves a 15 x 15 grid with the upper left corner reported as row 1 column 2 by a screen reader. Again, the left most column in the full grid, or column 1, is used for numbering.
  4. When you are playing a game of Jamble, the top part of the page contains links and information for navigating the IYT web site. It is likely fastest to hit t to get to the table for the game when you load a game. During game play, you and your opponent can post messages as a part of taking your turn. These will appear just before the table.
  5. Your letters appear as links just after the game table. The text “your letters” appears just before the letters themselves. Unfortunately, this is not a heading so you will likely need to use search function in a screen reader to get to this area.
  6. Immediately after your seven letter tiles are another seven links. These appear to be small graphic files that either serve no purpose or duplicate functionality of the letter tiles. The speech dictionary files define these links not to speak anything as a result. JAWS will still call these “graphic” because they are links.
  7. After your letter tiles, information about the game score, tiles remaining, and previous moves is shown. For previous moves, I have had the best success activating the link to show all moves. This then shows a table listing the starting coordinates for each word played and the point value awarded. The table has three columns that show the turn number, and then a column for both you and your opponent’s move.
  8. After the score and move information, there are several graphics showing the points awarded for different letters. Unfortunately, again these are missing alt text and so far I’ve not found a way to indicate the point values of letters. Just defining speech definitions in this case is not enough because you need to associate the color of the point graphic with the color of the tile played and the graphic files for the letters indicate nothing about color. As of now speech definitions for these graphics have not been entered so they will read something like “jb/jb-cir2”. Again, this is an image showing a color and telling players that letters of that color are worth two points in this example.
  9. The IYT Game Status page has three tables of interest. The first shows how many games you have indifferent categories. The second shows games where it is your turn. Activate the links containing opponent names to take your turn in each game. The final table shows games where it is your opponent’s turn.
  10. Taking a turn in Jamble involves a few steps:
    1. Locate the square where you want to place the first letter of a word you want to make and press enter on that square.
    2. In the edit box that results, enter the letters you will use to make your word. Do not include letters that are already on the board. If you are using a blank character, type the letter you want the blank to represent.
    3. Select across, the default, or down, to indicate the direction of your wort from a combo box just after the edit box where you entered your letters.
    4. Use the submit button to enter your letters.
    5. You will have a second submit button on the resulting page along with an edit box where you can enter a message for your opponent if you want to do so. Complete your turn by using the submit button from this page.
      1. If the resulting page reports it has 59 or so links, it means your word was not successful. There are brief instructions about what might be wrong. The page instructions tell you to use the back button in your browser to resubmit but I have found it faster to just return to the Game Status page and get back to the game from that page.
      2. If the resulting page has 86 or so links, your turn is done and your word was successfully played.
  11. If a blank tile is played, both the fact that it was originally a blank and the letter it represents are indicated on the board. I have not found a way to label this entirely so in these cases JAWS will announce a w and then the letter represented by the blank.
  12. The JAWS speech dictionary does not impact the braille representation of text and I have not found an equivalent method to adjust what’s communicated in this game for braille as of yet. As a result, in braille this game is still going to show all the untagged graphic file names.
  13. As mentioned earlier, the JAWS speech dictionary does not alter text when reading by character so if you read by character, you will still experience all the text such as “jb/jb-“.
  14. If you want to find a specific letter on the board, use the JAWS find text feature with ctrl+f and enter a dash followed immediately by the letter you are searching for. As a reminder, the game appends a -z to letters the first time they appear in new words so there is a chance when searching for a z on the board you will also hit this situation.
  15. JAWS has another feature known as Custom Labels that could possibly also be used to rename the untagged graphics. However, in trying that, I have found that the coordinates in a table seem to be saved along with the label, making this feature an impractical solution here.
  16. IYT has a number of games. Again, I hope the company will respond to my inquiry about improving accessibility but until they do, the techniques I’ve outlined here can be used for many of their other games.
  17. IYT is free and also offers subscriptions. Free accounts are limited to 15 game turns a day.
  18. As a reminder, these speech dictionaries are redefining the way the strings of text are pronounced by JAWS. If these same strings were to appear on another web site used in the same browser, these definitions would also be applied.

The Dictionary Entries

Following are the entries I’ve used in the dictionary files you can download.

;Double Letter

.-2l.Double Letter.*.*.*.0.0.

;Double Word

.-2w.Double Word.*.*.*.0.0.

;Triple Letter

.-3l.Triple Letter.*.*.*.0.0.

;Triple Word

.-3w.Triple Word.*.*.*.0.0.

;New letter played on board

.-z.New Letter.*.*.*.0.0.

;Squares on board with a tile played. This silences all but the letter indication.

.jb/jb-. .*.*.*.0.0.

;Empty squares on board, no letter has been played.

.jb/jb-bl.Blank.*.*.*.0.0.

;graphics in letter tile area that have no purpose

.jb/wtdot. .*.*.*.0.0.

;A blank letter in player letter tile area

.jb/jb-qu.Blank Tile.*.*.*.0.0.

Leave a Comment

American Council of the Blind Seeking Director of Advocacy and Governmental Affairs

The following is copied from email distributed to various American Council of the Blind email lists. The application deadline is December 19, 2018.

Vacancy Announcement: Director of Advocacy and Governmental Affairs

The American Council of the Blind (ACB) is seeking a Director of Advocacy and Governmental Affairs to work in its national office in Alexandria, VA.

The primary duties of this position will include:

  • Leads the promotion and development of ACB’s advocacy and legislative agendas (e.g., strategic goals, initiatives).
  • Recommends actions to be taken and policies to be adopted by ACB.
  • Oversees the implementation of resolutions adopted at ACB Conventions.
  • Represents ACB on advisory committees and consultative bodies seeking organizational input.
  • Monitors bills, speeches, and statements of government leaders, political influencers, regulators and legislative bodies.
  • Monitors media, research reports, and analytics on issues of interest to ACB.
  • Leads the drafting of proposed legislative and regulatory language for presentation to Congressional offices, administrative agencies, and other relevant stakeholders.
  • Prepares written comments on pending legislation and proposed regulations.
  • Presents oral comments on pending legislation at public sessions with regulatory bodies and Congressional committee hearings.
  • Develops and maintains ongoing working relationships with members of Congress, Congressional staff and agency administrators to promote ACB’s legislative and advocacy agendas.
  • Establishes and maintains cooperative relationships with other disability and civil and human rights organizations to expand ACB’s sphere of influence.
  • Creates and enhances collaborative relationships with corporations and private stakeholders in order to influence the usability and accessibility of their product and service offerings.
  • Plans for and executes annual legislative seminar and Congressional fly in, including securing policy influencers and other stakeholders to present to ACB members.
  • Serves as staff liaison to ACB committees, including ACB’s Resolutions Committee that meets at the annual conference and convention.
  • Provides technical assistance to ACB members and affiliates pursuing advocacy projects.
  • Oversees, and in complex situations responds to, requests for information and advice concerning the rights and/or obligations of individuals and organizations regarding blindness-related issues, and providing referral to other appropriate sources of assistance.
  • Prepares external communication on legislative, judicial, and administrative developments for ACB content channels (e.g., ACB Radio, social media) and external content channels.
  • Ensures that ACB members receive timely communications regarding ongoing legislative and advocacy initiatives.
  • Other duties as assigned by the Executive Director.

The Director of Advocacy and Governmental Affairs reports to the Executive Director.

The successful candidate must have:

  • Strong attention to detail.
  • Excellent written and oral communication skills, including public speaking.
  • Drive to take initiative with limited guidance.
  • Knowledge of service-delivery systems and government programs impacting people who are blind.
  • Ability to manage multiple tasks and priorities simultaneously.
  • Ability to effectively direct and manage the performance of direct reports.
  • Ability to respond promptly and meet deadlines.
  • Ability to locate and quickly comprehend laws and regulations.
  • Knowledge of applicable laws, legal codes, court procedures, precedents, government regulations, and executive orders.
  • Knowledge of the democratic political process.
  • General familiarity with assistive devices and technology used by people who are blind or visually impaired.
  • Ability to travel as circumstances require.
  • Ability to work evenings and weekends as needed, including participating in meetings and conference calls with ACB committees and affiliates.

Desirable skills or training include general familiarity with assistive devices used by people who are blind, and a degree in political science or law, or other specific disability-related advocacy training. Experience in the use of social media to communicate organizational messages is highly desired. Salary depends upon experience.

Applicants must send a resume, cover letter, and brief writing sample by e-mail to search-committee@acb.org.

Applications must be received in the ACB national office by no later than December 19, 2018.

Leave a Comment

Three positions with the W3C’s Web Accessibility Initiative Available in Europe

The W3C’s Web Accessibility Initiative (WAI) project has three positions available based in Europe to work on various aspects of web accessibility.  All positions indicate they are for a period of three years starting on Jan 1, 2019.

The organization is looking for a Web Authoring Tools Accessibility Specialist, an Emerging Web Technologies Accessibility Specialist and a Web Accessibility Education and Training Specialist.  Full job descriptions and application requirements can be found at https://www.w3.org/Consortium/Recruitment/.

An email with the original announcement of these positions is also available.

Leave a Comment

Quick Notes on Using a Virtual Machine Environment With A Screen Reader

Over the years I’ve used a range of solutions for solving the basic challenge of wanting to experiment with new versions of operating systems, screen readers, applications and more without breaking a working system.  From using dedicated test computers, various hard drive imaging solutions, dual booting (running two operating systems on the same machine) and of course using what are known as virtual machines through the various virtual machine technologies available.

The majority of my experience has been running virtual machine technology on Windows to run other windows machines in a virtual environment.  Information in this post is therefore limited to that combination.  There are viable solutions on other platforms as well.

The goal of this post isn’t to provide a full tutorial on using virtual machines.  It is to share a few notes and things I’ve learned in case they are of assistance to others using similar technology in conjunction with a screen reader as a starting point.

For those unfamiliar with what a virtual machine is, think of it as a way to run a second or third computer on an existing computer through a software program.  There are many benefits to this including as mentioned the ability to try things out without breaking a working environment.

The three virtual environments I’ve used are Hyper-V, built directly into Windows; VM Player and VM Work Station from VMware and VirtualBox from Oracle.

There is no one perfect virtual machine solution and in my experience each of the three options I’ve explored has strengths and weaknesses.

I have had success using all three of the solutions I’ve mentioned.  Each requires you understand what’s necessary to get the virtual machine configured and how to access the machine of course.  I do routinely use virtual machines in my environment though and they can be a very helpful tool.

Aside from possibly having to enable the feature, Hyper-V being part of Windows can be very handy and the machine management user experience works well in my experience with screen readers.  In general screen reader-friendly tree-view and list-views are used for most controls.  Perhaps the biggest limitation is that Hyper-V does not support audio directly until you are able to establish a remote desktop connection to the machine.  This means that unless you are skilled at fully unattended operating system install and configuration, there’s a strong possibility you will need assistance in creating the initial virtual machines you want to use.

I have used both the consumer-oriented VM Player and the more enterprise-oriented VM work station over the years.  The machine management experience in VM Player works well with screen readers.  Again, most controls are screen reader-friendly tree-view and list-views.  However, VM Player is limited in some key areas such as the ability to run multiple virtual machines at once or take what are commonly known as snapshots of a virtual machine.  Think of a snapshot as a way to capture your virtual machine at a point in time so if something goes wrong or you want to get back to that point, it is as easy as applying that snapshot.

VM Work Station is a full-featured VM solution.  However in my experience the machine management part of the program did not work as well with screen readers.  Additionally, in my environment I have found more keyboard quirks when switching from a virtual machine back to the main operating system.  These are not insurmountable problems and at one point I used VM Work Station with success for several years.  In general VM Player is free for individual use while Work Station requires you purchase the software.

Both VM Player and VM Work Station have native support for audio.  This means that with the ability starting in Windows 10 to use Microsoft’s Narrator during operating system install, in most cases it is possible to create a virtual machine completely independently.

Whether you use VM Player or Work Station, two important keyboard commands to know are CTRL+g to put keyboard focus into a virtual machine and CTRL+Alt to put keyboard focus back to your host or main machine operating system.  In my experience, it has been helpful to press the Control key a couple times alone after using the CTRL+Alt combination to avoid modifier keys seemingly locked when switching back to your host machine.

Oracle’s Virtual Box has been an interesting experience. .  The machine management and settings areas of the program are very mixed when used with screen readers.  Some items work quite well, such as menus for working with individual machines, while others, such as the experience to modify hotkeys in the program and other machine settings, work poorly at best.  Additionally, I’ve found keyboard access when using up and down arrows in a list of virtual machines sometimes jumps out of this list.  I’ve taken to ensuring I give each virtual machine a name starting with a unique letter because I know once I am in the list of machines, I can press that letter and ensure I move focus to a specific machine.

As with the VMware products, VirtualBox has support for audio natively.  This means that again, fully independent creation and configuration of a virtual machine running Windows 10 is possible.

By default VirtualBox uses the right, and only the right, Control key as what it calls the Host key.  Use that key to toggle keyboard access between the virtual machine and your main computer.  Use CTRL+Home to access a menu of options related to the running virtual machine and use CTRL+t to take a snapshot of the virtual machine.

VirtualBox also has extensive command line support.  Chapter 8 of the user manual has all the details and I find myself largely using this option to work with my virtual machines when using VirtualBox.

VirtualBox has a licensing model that supports both personal use for free and business/enterprise use at a cost.  Oracle’s licensing pages have more information.

As mentioned earlier, details here are largely based on a Windows environment.  Similar solutions exist on other computing environments, often from the same companies mentioned here.  Even on Windows, you are not limited to running just a Windows virtual machine.  In fact that is one of the benefits of using virtualization technology.

Virtual machines can be a handy enhancement to a computing environment.  There is a bit of learning, especially for the first machine you create and use.  Once you’ve crossed that knowledge bridge, creating multiple machines becomes largely as easy as repeating what has been successful in the past.

One Comment

TuneIn Live on Alexa

If you are a user of the TuneIn audio services and in particular a subscriber to their premium TuneIn Live service, TuneIn Live on Alexa might be worth exploring. The service is available at a discounted rate of $2.99 for Amazon Prime members or $3.99 without a Prime subscription.  This is lower than the standard $7.99 monthly subscription price.

One benefit I enjoy in TuneIn Live is the fact that audio for the NFL, NBA, MLB and NBA, which typically requires individual subscriptions, is part of the service.  Whether you use the Alexa option or the standard TuneIn Live, if you subscribe to multiple audio services, this is likely a cost savings.

TuneIn Live works on most Alexa-enabled devices. I was initially a bit hesitant to try this option because I didn’t want to be held to just the physical locations of any Echo devices I have.  Although it isn’t listed in the supported devices, I’ve found that TuneIn Live on Alexa  also works on an Amazon Fire tablet. This is great for portability.

I remember the good old days of internet streaming when audio from those radio stations that were online was available without by and large any limitations.  Those days have long gone, especially for things such as live professional sports, which now mostly require some sort of a subscription.

TuneIn in the free form offers a great deal of audio.  I find the Live subscription version adds enough value that it is worth the cost.  Adding the Alexa option for a discount, especially since it works on the portable Fire tablet and saves either $4 or $5 off the monthly subscription is worth considering.

Leave a Comment