Re: The DOM Debate


JM Casey <crystallogic@...>
 

Gene: This is true. I have recently got some e-books on Windows 10. Most of these come from Microsoft Press and they explain a lot about the OS, including all sorts of neat tricks. They certainly don’t shirk keyboard navigation even though they are written for mainstream users.

 

From: nvda@nvda.groups.io [mailto:nvda@nvda.groups.io] On Behalf Of Gene
Sent: December 2, 2017 1:07 PM
To: nvda@nvda.groups.io
Subject: Re: [nvda] The DOM Debate

 

Some people are experimenters and learn through many ways, documentation, experimenting, looking around, and perhaps others I haven't thought of at the moment.  Many people aren't experimenters and need more instruction.  also, experimenters and those who learn  many ways, often miss useful knowledge by not getting more organized instruction.  I learned a lot about Windows by experimenting and looking at screen-reader documentation. But I didn't know certain crucial things.  it wasn't until I got some organized instruction from Cathy Anne Murtha's material that I learned that much more is possible than just navigating by the first letter when jumping to files and folders in a list or tree view.  You can type as much of the name of the item as you wish.  If I have twelve items in a list of folders and files that begin with the letter t, I can type as much of the name of an item as I want and jump right to it.  Generally, typing two or three letters of the name is enough.  This can be used on the desktop as well.  Whenever I see questions from people asking how to organize things in a certain way on the desktop, I'm suspicious that they don't know this.  Why bother about the order of most things on the desktop when I can type tap to move to Tapin Radio, my c to move to my computer, etc.  My Computer is no longer the name, but the example helps illustrate the point. 

 

That's why even people who are more or less self-taught would likely benefit from looking over some really good material.  You don't know what you might not know that may be of real value. 

 

Gene

----- Original Message -----

From: JM Casey

Sent: Saturday, December 02, 2017 11:07 AM

Subject: Re: [nvda] The DOM Debate

 

Hi.

 

Not sure I really have anything constructive to contribute to this debate. I just wanted to say that whatever screen-reader I was using, I always use the find command, and always have. No tutorials needed. What could be simpler? There are pages I want to read through, and pages where I just want to get stuff done. This is often the fastest and most efficient way, and I feel like this would naturally occur to most users. It sounds like you are saying it doesn’t, and that surprises me – but I’ve not ever received much training for anything, as I always preferred to try things and find out for myself.

 

From: nvda@nvda.groups.io [mailto:nvda@nvda.groups.io] On Behalf Of Gene
Sent: December 2, 2017 6:07 AM
To: nvda@nvda.groups.io
Subject: Re: [nvda] The DOM Debate

 

Nothing is perfect.  Search is a very underused and very effective feature that screen-readers offer and it is at times more effective than using other methods.  I didn't say to always use find and I didn't say to always explore web pages and I didn't say to repeatedly explore the same page when looking for the same thing.  Using find is not exploring the web page in the sense that you spend a lot of time looking in detail at the page.  At times, this is necessary.  It often isn't, and here are examples. 

 

If you are looking for an add to cart button, you can use the b command to move through buttons.  Depending on page layout, this may be faster than using search or it may be slower.  Why do you have to explore a page again every time?  You may have to explore a page, you may not.  Doing what I suggested, searching for a word like contact and repeating the search isn't exploring the page.  You are looking for a specific thing.  Also, there are many patterns that a lot of web pages follow.  if you want to listen to a radio station and you are on the site, if you search for the word "listen" from the top of the page, you are very likely to find a link with the word "listen" in it, such as "listen live."  What if a site has a link that says, clic, to listen or some such variation.  That's why I strongly advocate against using the links list on unfamiliar sites.  If a link has a word that is common for such links such as listen, it will often be the first word.  It won't always.  Search will find such a link.  The links list, if you move by first letter navigation, won't find it where you expect and you may waste time and effort looking through a page when one search for the word "listen" might well have found it. 

 

Contact is another example.  Almost every site that provides a way for you to contact someone, such as a letters editor, etc. will have the word contact as part of the link.  As in my previous example, contact will often be the first word.  Not always. 

 

The inadequate training  a lot of people get teaches movement by heading and how to use the skip blocs of links command.  But it doesn't anywhere nearly teach or emphasize using the find command and thus cheats blind people and makes it much more difficult for them to use sites where headings or other quick navigation techniques don't yield good results.  And there are times, such as I've discussed, when using other techniques isn't the best first approach because they often work but not always. 

 

Gene

----- Original Message -----

Sent: Saturday, December 02, 2017 2:47 AM

Subject: Re: [nvda] The DOM Debate

 

Agreed but many people tend to fall back on their memory of a page as even
if they did explore it at the start, to do so every time is a bit slow.
Of course some pages like Google web mail has some shortcuts, but to me I
find such things still sluggish to use.

Amazon seem to often have interesting variations on a theme where certain
buttons can be a link instead, presumably due to their attempts to get you
to buy other stuff when you selected a particular one. For the sighted this
looks obvious, but would you  actually  really want to explore the page
every time considering how busy their site is with rotating suggestions and
the like? I agree search is a good thing to use but I've been fooled more
than once by there being several buying choices all with add to basket
buttons for example.
 Brian

bglists@...
Sent via blueyonder.
Please address personal email to:-
briang1@..., putting 'Brian Gaff'
in the display name field.
----- Original Message -----
From: "Gene" <gsasner@...>
To: <nvda@nvda.groups.io>
Sent: Friday, December 01, 2017 8:19 PM
Subject: Re: [nvda] The DOM Debate


And I wonder how much actual training material such as tutorials explains
this or does so to any extent.  Unless things have changed, and I havedn't
seen much discussion in quite some time, even small changes in a web site
causes mass confusion because so many people aren't taught to explore pages.
Just changing the download link to a download button caused a lot of
confusion when Send Space made that change.  I hardly noticed it when it
happened because I used the screen-reader search feature to find the word
"download."  I found the control just as easily and quickly either way.
Actually, the button is faster and easier because now I just type b once
from the top of the page to find it.  But to those who learn by rote, even
minute changes may lead to an inability to do something on a site.

Gene
----- Original Message -----
Gene
----- Original Message -----

From: Ron Canazzi
Sent: Friday, December 01, 2017 12:35 PM
To: nvda@nvda.groups.io
Subject: Re: [nvda] The DOM Debate


Hi Gene,

\

I have had bad experiences with TVI people.  One of them when asked if she
knew the basics of teaching JAWS said: "No, but I and my client will learn
it together."  That speaks volumes.






On 12/1/2017 11:07 AM, Gene wrote:

  Certainly, for those who want to use programs that are not completely
accessible, and that includes most somewhat demanding and more demanding
users, those are important things to learn.  But in this case, I think my
analysis points to a much deeper problem, the poor Internet instruction a
lot of blind people evidently get.  I wonder how much traning material
explains things such as I describe.  I don't know but I'm skeptical that it
is explained in a lot of material because of the kinds of problems and
questions people raise about using the Internet.

  Gene
  ----- Original Message -----

  From: Ron Canazzi
  Sent: Friday, December 01, 2017 9:42 AM
  To: nvda@nvda.groups.io
  Subject: Re: [nvda] The DOM Debate


  Hi Gene,




  Long story short of your analysis: learn to use your screen reader's quick
navigation keys and other features.  This allows the reorganization and the
advantages of DOM to coexist.






  On 12/1/2017 6:44 AM, Gene wrote:

    If you know how web pages are actually organized, the contacts problem
and other such possible problems can be eliminated very easily.  We, blind
people,  see a lot of links moving down from the top of the page.  A sighted
person sees these running down the left side of the page in a column. Then
we see the main content below the links. A sighted person sees the content
toward the middle of the page, moving from left to right on the page.  Then
a blind user sees a lot of links in a block at the bottom of the page.  A
sighted person sees these links running down the right side of the page in
another column, in the same way as the links on the left side are seen.

    So a blind person sees a bloc of links at the top, main content below
the links then another block of links at the bottom.  A sighted person sees
links running down the left side, main content to the right of those links,
and on the right another block of links running down the page in a column.

    So, if you are using a screen-reader with the ridiculous word wrap
feature, turn it off if it isn't off.  then do a screen-reader search for
the word contact from the top of the page.  Repeat the search to see how
many contact links there are.  The one a sighted person describes as being
on the right is the one the blind person will see as the second one, if
there are only two and no more and there shouldn't be any more.  If there is
only one, there is, of course, no problem.  When you get to the last one, if
you repeat the search again, you will get an error message.  If you dismiss
the error message, you will still be on the link.  You won't lose your
place.

    You don't have to give up all the advantages of reorganization and
usually it is much better to leave reorganization on.

    Gene
    ----- Original Message -----

    From: Christopher-Mark Gilland
    Sent: Friday, December 01, 2017 3:08 AM
    To: nvda@nvda.groups.io
    Subject: Re: [nvda] The DOM Debate


    Adriani,

    You make some extremely valid points which should be carefully
considered, yes. Thanks for your contribution to the thread, and fair enough
statements.
    ---
    Christopher Gilland
    Co-founder of Genuine Safe Haven Ministries

    http://www.gshministry.org
    (980) 500-9575
      ----- Original Message -----
      From: Adriani Botez
      To: nvda@nvda.groups.io
      Sent: Friday, December 01, 2017 3:58 AM
      Subject: Re: [nvda] The DOM Debate


      Hello,


      I an not using screen layout like in your second example due to
following reasons:
      - By navigating with down arrow link by link I can decide by myself
how fast things are being red since I can decide not to hear the whole link
label, but only let‘s say the first half of the word. I don‘t have to wait
until the last link on the tab is being announced
      - If I want to navigate link by link in screen layout, then I have to
press the ctrl key and the right arrow key (applies only for link bars like
you have described or for forms with many elements on one line). The problem
is that pressing ctrl + right arrow NVDA reads word by word and not link by
link or button by button. So I am navigating much slower through the content
      - When navigating by ctrl + right arrow through a link bar with 5
links to focus the last one, I don‘t know when the bar ends unless I have
listened to NVDA reading the whole bar before
      - There is the NVDA addon audiotheme 3d which gives me a screen
presentation by playing a short sound in my headfones exactly at the
position where the object is located on the screen.


      Best
      Adriani



      Von meinem iPhone gesendet

      Am 01.12.2017 um 09:20 schrieb Christopher-Mark Gilland
<clgilland07@...>:


        For those who may have a bit of a hearing impairment, let me make it
very clear. In my subject, I'm saying DOM, D O M, not balm, b A L M.
Although some may call DOM the balm. LOL! And here therefore lies the reason
for my post this morning. - I fully realize that this is somewhat a
subjective topic, and that everyone will have his or her own opinions on the
matter. It is therefore my hope, that you, the reader, have an open and
civil mind, and observe this question from all angles before making your
response statement on list. I do not want to see this grow to a heated war
debate. Anyone who would like to publish this on their website, or wherever
is welcome to do so as long as you give credit back to me.

        First off, what is DOM?

        DOM, Document Object Model, without getting too technical, is one
way in which assistive technology such as screen readers obtain information
from one's computer screen. When we load a website in our browser of choice,
for example, some screen readers use the DOM functionality to draw a
representation of the content on the screen.

        So, what does this mean to us non-techies?

        Put simply, though I am not particularly sure of the exact workflow
which occurs behind the scene, what I can tell you is this. Often times,
more than not, this approach requires the assistive technology sitting in
between the user and the web browser to redraw, as some would say, the
entire HTML content in completion. The reason that the word "redraw" is used
is because essentially, this is exactly what is happening.

        Once a website is loaded, a certain amount of memory is allocated
aside where the website in question may be rendered. There are a few
advantages to this, however there are also some huge setbacks.

        Beauty and the Beast

        One of the advantages which probably appears to be fairly obvious
from an outsider's perspective is that this will allow assistive technology
to use certain methods to gather the web content and then present the
material in an easy, robust, and sensably accessible manor. As the writer of
this post, let me assure all of you... I definitely see the side of this
argument.

        Here's a practical example of DOM.

        Let's assume, for just a moment, that you have loaded a website in
the browser of your preference, be it Firefox, Internet Explorer, Chrome,
etc.

        On this particular page, there are links which visually appear as
horizontal tabs extending across the top of the page. These tabs include the
following:

          a.. Home
          b.. About Us
          c.. Blog
          d.. Shop
          e.. Support
          f.. Contact Us

        To fully understand how this works, I encourage you to read the
following part of this e-mail by using your down arrow key, and reading line
by line individually. Here is what you will see. Remember before I go any
further with this, all of these links visually appear as one strip of
horizontal tabs running across the top of the web page.

        Link Home
        Link About Us
        Link Blog
        Link Shop
        Link Support
        Link Contact Us

        Here's another example.

        You have a short form on a website. This form asks for your first
name, your last name, and your e-mail address. Here's how DOM most likely
would reinterpret this. Again, please read this line by line.

        Please fill out the following form so we may keep in touch.

        First name
        Edit
        Last name
        Edit
        E-mail
        Edit
        Submit button
        Clear form button.

        First example without DOM

        Read this line by line, and make sure this window with my message is
maximized before doing so.

        Link home, Link About Us, Link Blog, Link Shopt, Link Support, Link
Contact Us.

        Second example without DOM

        Please fill out the following form so we may keep in touch.

        First name Edit
        Last name Edit
        E-mail Edit, Submit: button, Clear form: Button.

        The difference

        As you can see in the above four illustrations, the first two
examples were rendered in such that each link/form control was on its own
line. This is why I asked you to read line by line, as doing a say-all, you
never would have most likely caught this. So, in other words, let's make
this really easy in plain english.

        Refer back to my very first example where we had the tabs which are
being represented as hyperlinks. As you recall, I said that they all went
horizontally from left to right across the top of the page.

        The problem is, DOM renders each element, for lack of better word,
as its own separate item. For this reason, each element is on its own
dedicated line of text. This is why each link is seeming to appear on its
own line by itself. The truth is, these links in all actuality are not on
multiple lines. They are actually expanding across the entire marginal width
of the screen. Are you starting to see where this could be a potential
problem?

        The second example is slightly less annoying, however the point
still stands in existance.

        We have a form. If you've ever seen how a form generally looks on a
print sheet of paper, you'll note that most form field labels such as first
name, last name, etc. go down the left side of the sheet of paper. Then,
horizontally aligned beside these field labels is the data value.

        For example, I might have a form printed out which I sign for a
Hippa release at my doctor's office. The first field may say, "Name". Out to
the immediate right of this will be either a line, or a box. It just depends
on how the form is designed, but the over all point is, there will be a
second column to the immediate right of where it said, "First name". This is
where I would write, "Christopher (Middle name) Gilland. Obviously, some of
you may know my middle name, but for privacy sake, I'm not including it
here.

        Given how the above physical print paper illustration is formatted,
as most forms online or not would be, does it really make sense to have the
form field, then the data directly below? No. It doesn't.

        Look at my above second example without DOM. Notice that the edit
box for all three fields is now actually rendering exactly as it would be
visually on the screen. The boxes are to the immediate right of the fields,
on the same line. Doesn't that just naturally feel better in your mind, and
make more sense? It definitely should to most people.

        Finally, we have both the submit, and the clear vbuttons.

        Does it make sense to you that they'd both be virtically stacked one
on top of the other? It certainly doesn't to me! In fact, to me, I'd even go
so far as to say it seems absolutely gross! Maybe I am more a visual
learner, but even if I wasn't, this doesn't logically compute. However, this
is exactly how DOM is rendering it... One button, and one element per line.

        Helping the sighted to guide you

        So why is this such a vbig deal? Call me a perfectionist, but let's
assume for just a moment that you're on the phone with a customer service
representative. They tell you to click the contact us tab located in the
upper right corner of the page. This would be a very poor website design,
and to any web debvs on here, please for the love of god, take this in
consideration! I can't tell you though how many times I've seen this. A web
designer will put a contact link at the top of the page which has a form to
e-mail them. Further down the page, they have another contact link within
the actual main body's content. The difference however is, in this second
link, though named identically the same thing, "Contact Us", this second
link doesn't direct the visiter to a contact form, but instead gives a phone
number, fax number, and possibly a postal address. Totally unacceptable in
my view! All this should be consolidated on the one contact page at the top
of the screen. This however still proves my point, and like I said, I've
seen this more times than I could count, and would gbe rich if I had a
dollar for every time I have. OK, so, you now arrow through the page, or do
an NVDA find to locate the Contact link. Heck, you might even do NVDA+F7 to
bring up your links list. And believe me, though I'm directing this more as
an NVDA thing, NVDA isn't the only screen reader which can use the DOM
method. JAWS, for example, is incredibly! and I do mean, incredibly!
notorious for this. Now, think about this a minute with this really
convoluted scanareo regarding the contact link. - How are you going to know
which contact link to press enter on to open the contact form, if you're in
DOM navigation? Exactly! - You won't. It would be hit and miss.

        Now, let's take this same situation without DOM mode.

        In this environment, for lack of better word, you would observe both
via audible speech, as well as via braille output if you have a display,
that the first "Contact us" link is on the far right edge of the screen.
You'd know this as you'd see the other links like Home, About us, Blog, etc.
on the same line but to the immediate left before it. Does this make sense
what I'm saying?

        The bottom line

        Regardless if you choose to use DOM or not is not something anyone
should decide for an individual. If you are coming from a screen reader like
JAWS as I have, you definitely may find turning off DOM navigation to be
extremely awquard at best. I'd even go as far as to say that it may drive
you absolutely crazy at first, and make your web browsing experience seem
dreadful. I would however seriously encourage people to at least give it a
try for a few days without DOM navigation. Inevitably, if you're not used to
it, it's going to take some getting used to, however if you're anything like
me, I feel that eventually, you will really start to see the benefits of not
using DOM. DOM is great in my opinion, don't get me wrong, but if you want,
or need in a mission critical environment to have an exact representation of
the content, then fact is fact, you're not going to get it with DOM mode,
end of the story, it's just not gonna happen, period. You might as well just
accept it. The other thing to also realize is, you are taking up unnecessary
memory/processor power to render things differently as an offline model.
Granted, OK, it may not be much, but that's not the point. It's still taking
up what to some would be considered as unnecessary resources.

        What are your thoughts?

        Do you use DOM? If not, I'd be interested in your reasons why not.

        Chris.


--
They Ask Me If I'm Happy; I say Yes.
They ask: "How Happy are You?"
I Say: "I'm as happy as a stow away chimpanzee on a banana boat!"

--
They Ask Me If I'm Happy; I say Yes.
They ask: "How Happy are You?"
I Say: "I'm as happy as a stow away chimpanzee on a banana boat!"

Join {nvda@nvda.groups.io to automatically receive all group messages.