I Fought the Calendar, and I Won.

This blog post was updated on 10 July 2019.

One of the aspects of Microsoft Outlook I've benefited from for many years is the calendar. As a busy professional, it allows me to keep track of a hectic diary every week, and I know all my meetings are beautifully organised.

Moreover, as many people will know, I train people how to use the JAWS screen-reader in conjunction with computing applications. Most of that training is conducted in the workplace throughout the UK.

Especially in recent years, Microsoft have gone to great lengths to improve the level of accessibility to most of its applications and to Windows as a whole. They've got the Disability Answer-Desk as well which attempts to solve problems people have. So they are doing great things. But the calendar within Outlook is always something which seems to get left behind, and it is one of the most critical tools which should be at your disposal within employment. If someone calls you on the phone, you should be able to very quickly flick through the days to determine where you can fit in an appointment or meeting. People haven't got time to hang around while you listen to too much output from your screen-reader. We're meant to be competing on equal terms with sighted people, and that means finding out information quickly, as they would do.

Within Outlook 2013 and earlier, JAWS relied upon some heavy scripting to give good quality access to the calendar which went so far. However now, it relies solely upon the output Microsoft sends to the screen-reader in order to communicate details of events. And that is what should happen. I'm apportioning no blame there. But as will be seen, it falls far short of what people need.

This is not just my view. I'm also reliant upon the evidence from the people I train worldwide, (as some of my work involves training using the telephone or a conference facility), together with other comments I've read on social media.

During the past few weeks, (in collaboration with one of our beta testers for our product Leasey who works in the health profession), we think we have arrived at a good solution.

What Is the Existing Functionality Like?

Using the calendar's Day View, let us move to a day which has three events associated with it. Here is the output:

"Day View, 3 total events, , 15:00 to 15:30 Monday, 8 July 2019"

There are a number of difficulties with this.

The words, Day View, are spoken every time you move to a new day.

You hear the number of events first, then the date. It was suggested to me on social media that the purpose of this is so that people can skim through the days to determine when they have free days. I was tempted to reply that I wouldn't know about that because I don't know what free days are! But in all seriousness, that argument has little foundation, principally because one has to listen to the term, "Day View", on every occasion first, prior to finding out that information anyway.

If you have focused on a time slot where an event occurs, the output is a little different:

", , 14:00 to 14:30 Monday, 8 July 2019, 1 event, 1 Busy"

So the output is inconsistent. What that means is that the visual focus is on a time slot which relates to one of your appointments. But it doesn't tell you that you still have two other events on that day which you may well miss.

The procedure for understanding what appointments you have involves pressing Tab to move through them. However, if the focus is in the middle of the day, it is more than possible that you will miss hearing the details of earlier items which occur in the morning. Don't forget, there are occasions where you hear an erroneous appointment count. The only way of truly knowing whether other items exist is if you Shift+Tab back to find out.

If notes are attached to the appointment, the only way of knowing about them is to open up each one.

Finally, if you move through the time slots for a day by pressing Up or Down Arrow, you might hear:
", , 8:00am to 8:30am Wednesday, July 10, 2019, 1 event, 1 Free".

You really only want to hear "8 AM to 8:30 AM, Appointment".

So in summary, you end up with inaccurate speech and Braille output, inefficiency in terms of moving through days to find a particular date, and a high possibility of missing important items in your diary.

How We Tackled the Problem.

JAWS scripts were developed which we hope will overcome some of these problems. They have been tested for use in various geographical regions, so we're quite confident everything is working correctly.

When you move from one day to another, you will hear the day and date, such as "Monday 8 July 2019", or "Monday July 8 2019", whichever is appropriate. You will then hear the number of items pertaining to that date. This is an accurate account and is vocalised or displayed in Braille irrespective of where you are in the time slot view.

In the event that no appointments exist for a day, a sound will play. This gets over that issue of knowing whether you have a free day. It makes it possible to skim through the days if you wish, and when you hear the audio cue, you know you can stop.

There are two ways of examining appointments. You can either press a keystroke when focused on the calendar of days. This will give you a full virtual viewer summary of appointments for the day, irrespective of how many there are.

Alternatively, you can press Tab to move through appointments. All appointments are presented in sequential order, no matter where the focus is in the time slot order, so there is no danger of missing anything.

We have a feature in the scripts called, "Condensed Mode". When this mode is on, you will hear, or see in Braille, the time of the appointment first. So if you want to move through a day sequentially to find out when you might have free time, this makes it very easy to do.

After the time, you hear (or see in Braille) the appointment subject. Although there are some small variations of that discussed below, for most appointments that is all there is.

As an example, ordinarily you might have heard:
"Call Jane at home, , , 14:00 to 14:30 Monday, 8 July 2019, Time Busy, Organizer Brian Hartgen. 2 of 3."

However, "Condensed Mode" reduces that to:
"14:00 to 14:30. Call Jane at Home, Has Notes, 2 of 3."

That's all generally you want to hear: when it is, what it is and whether there is anything additional you might need to consult.

As I say, there are some variations.

If an all day event occurs rather than an appointment, you hear details of that without the time slot because there isn't one. But in addition, if it occupies more than one day, you are advised of this. an example might be:

"Sight Village, 2 days, 1 of 2."

Similarly, when focused on an appointment, pressing a keystroke will display the appointment in the virtual viewer together with its corresponding notes if there are any.

If you press the Tab key to move past all the appointments or events in a day, you are taken to the next appointment irrespective of how many days forward it is in the calendar. A sound will play to indicate that you have moved out of the day boundary and into a new one.

As you move through your time slots with the Up and Down Arrow keys, a sound will play to indicate whether you are inside an appointment. So, if your appointment was between 2 PM and 2.30 PM, you would hear the sound at the 2 PM time slot only. This means you can very quickly move up and down the list without waiting for the JAWS speech output so as to determine when you have available time. The information has also been truncated, so that you only hear the time slot rather than the date, followed by the word, "Appointment", if an appointment occurs at that time slot.

Keystrokes in Outlook exist to move back and forward by weeks and months. You will hear the correct output when these keys are pressed.

Finally, some work was done on the "Date Picker". When creating a new appointment, this enables you to select a day by using the four Arrow keys to move through a grid. Each time you do this ordinarily, the word, "Selected", is spoken prior to the date. You have arrowed to it, so you know you've selected it, you do not need to hear it or for that word to take up space on the Braille display.

Conclusion.

It goes without saying, but any, or all, of the above special functions can be enabled or disabled at any time. It is important that the user is in full control of this output.
Personally, I know this functionality is really going to help our customers who wish to be more efficient, but also those who are less experienced with access technology.

We will be placing this functionality into our Leasey product hopefully next week and also into our J-Say product soon after.
Anyone who has those products will be able to use our new calendar functionality.