It's lovely to see you all here this morning, and hopefully you had a good evening last night
and that there's no one who's feeling all that hungover after Saturday, it falls in
that does tend to happen.
This is just, everyone here know what alt text is, so it's alternative text, okay, you
get that a little bit.
So my favorite, I'm an open standard in practice lead as the team have said, and I work
at civic actions usually largely with the US government, so we work on a large government
website using Drupal, I'm also a Drupal Core Accessibility Meatiner involved in digital
sustainability there as well.
So the topic is how bad is alt text, and also, you know, what can we do about it?
So alt text is really important, it's almost like the most basic form of accessibility.
It's, it doesn't image have a description for it that allows somebody who uses assistive
technology to be able to interpret and get sense of whatever that image was.
So anything that's non-textual, because text information is quite easy to be brought over
into a screen reader, the text is being traditionally pretty simple.
The WKG framework, it's, it's 1.1.1, so it's, yeah, the very very first one, and, and it's
a, it's also useful, if you think about being, accessibility is what people with disabilities,
but it's also for people who have temporary and situational disabilities, so if you go
outside in a bike day and you're trying to use your phone to try and figure out where you're
going, if there's enough contrast in the screen, that will affect you also, you know, sometimes
there's allergy seasons, so game, there's temporary in situation of disabilities that
affect us all. It's not just people with permanent disabilities, but it's also looking
to head to our technology, so Google Home, you know, Siri, are internet enabled, fidges and
stoves, like it's, it's, we're, we're living in a world where so much more machine-readable
content is interacting with, with web content, and, and the more we can make that
semantically organized and, and, and, and, and transparent, the better it will be.
So, how many people have used tools like, um, say, web aims, uh, wave toolbar,
accessibility insights, is that an, it's another automated tool, how about site improve?
Any, sites use site improvements, it's, it's a, it's a large sort of site scanning tool.
There's a whole bunch of them out there, and they're, they're, um, very useful for a lot of
different things. They, they generally prove, they don't prove accessibility. They prove that there's,
there, their, their tests that are written, that can be evaluated, and they, they, they test,
um, how, um, yeah, they, they, they, they, they, they test for it for, for a particular condition,
um, but they cannot, they can't tell you if your site is accessible. They evaluate for about a third of
what, what, what, the web, the web content accessibility guidelines are, so it's really useful,
to have these automated tests, but they are, they don't allow you to go off and, and, and have a,
determine without a site is accessible or not. Uh, Google Lighthouse is one of the big ones, um,
that, and there's another tool called accessibility insights, also very useful. Um,
one of them is done by Microsoft that's accessibility insights that they contribute back to the
X-coil library, um, but Google little, it's a little startup, um, they don't contribute back to X-coil.
So, um, yeah, we, it's a, the block, people do use these tools, um, and we need to try and
invest in our open source libraries to do this and access it as a tool that's made, uh, this built
by DQ, maintained by DQ, um, in the Netherlands largely by local fires. Um, and, uh, yeah, but
all these tools, they, they evaluate the test that they evaluate for is, is all text there or not.
It doesn't test the quality of the all text, so if you've got a value in there,
it's tree or no or to be determined or quote, quote, it, they can't tell that and they don't give
you a response to or falls for that. Um, so a lot of, a lot of tests are missing the quality
evaluation for the all text. Um, and there's not even necessarily a good framework to determine
how long should that text be? Um, NASA did a really interesting set of, uh, of all text well
back on, uh, Hubble images where they, they took and they described these Hubble galaxy photos
in intense detail, like there was a paragraph or two of all text in there. It was amazing.
It was a really showcasing example of how a government site can try and make this content
accessible to everyone. Do you want every image to be described in that much detail? I would think
not because a lot of the images are not that interesting. Uh, so, you know, for any of us, like they're
largely just slightly additional content. Um, there should be some information there, but, but it may
depend on your user and it may depend on the context. And so it's very much depending on the author
and the, uh, the effort to try and pull together. Yeah, what is relevant for the page and the content
is there for it because because, because authors, authors don't add images or should not be adding
images just because they need an image. They should be adding an image because it adds something to
the value of the page. The user will have a better experience if they put an image there, which helps
to enhance the content. So, so that's part of the challenge as well is that you're, you're really
it's not just about describing an image. It's describing an image in context. So, um, so that's, that's,
that's, that's, and, and to help them to convey the authors' intent. Um, because you're not just dealing
with, with what is this image on its own. It's, what is the image in, in alignment with the text that
is beside, and what is the message that the author is trying to convey? Um, so, anyways, there's
lots of challenges with this. One of the other problems with, with these automated, automated tools
is that most of them, um, giving it a scan on a page by page level. So, um, that's useful, um,
if you're valuing a page, but often there's pages that go across, more than like there's problems
that should, sure, across multiple pages. And how do you find out, when there's an image that's
used in dozens of places on the site, where, where, well, it should have good alt text, um, or maybe
it, I mean, maybe it should have the same alt text, maybe it shouldn't. Um, there may be cases where
you have the same image, that's being used in a different context, and you want, actually,
want to have a different image for that. So, um, that being able to see that and compare that,
something that was really quite useful, and something that, that was missing from the set of tools.
Um, and I wanted to also try to find ways to, um, to help authors find bad content and make
it visible before it, before the public complained about it. Um, because that's part of the
challenge with accessibility is that it is invisible for most users. If you don't know the tools to
go off and expose the problems, you don't see it. So, how do you try and take the, um, how do you
take that, that, that, um, how do you make these these problems visible and included as part of a
definition of quality? Um, Google Lighthouse is really quite useful for that because it actually says,
okay, you can, you can evaluate a page, it gives you a number of people can aim for that. This is a
definition of quality is having a hundred on all of your, your Google Lighthouse scores. Like, that's,
that's a useful goal for every page to have. Most pages do not comply to that, and it's useful
for accessibility and performance and sustainability and a bunch of, it's a, it's a cute,
it's a cute, it's a cute, it's a bunch of other stuff, but, um, but I, but again, we need to have a
goal of what it is, and we haven't really had that with all text. So, yeah, if I were you
repeated a bunch of this, um, and, uh, see what happened to sit here. Um, organizational compliance is also
really important for many, many places. Um, so how many, how many people here are thinking about the,
um, either the web accessibility directive or the, uh, European accessibility act. Okay, so this is,
these are big issues. Like our, our industry is going to be really tested in junior July when this
comes into effect, uh, with the European accessibility act. On the government side, it's already,
in effect. Um, but it is, it'll be interesting to see how regulations change and how each country
decides to apply the European accessibility act and how any international efforts tend to try and
coordinate for that different set of regulations that are coming in for that. Um, and, um, the, the,
uh, so also you know, how, how do you, how do you try and, if, if you have organizations, how many
people who work for organizations here that have, um, websites that have multiple authors involved?
Okay, Colleen, you've got a problem like, how do you try and maintain that consistency?
Many of authors who are having all different levels of awareness around our own accessibility
and that they, they don't necessarily have the ability to, um, to take the same training to
care to write with as much detail on something like all text. So, so what I, I wanted to do is to
have some way to do, to have a comparison for this. So, like a year or two ago, I did some work with
Screening Frog, Screening Frog is an interesting NL, NL, analytics tool, Scamaging Webfoot,
size for all kinds of information. I realized I could pull the all text out of that and create
a list of the spreadsheets, do some analysis to say, uh, what, what kind of, um, data do I have?
How can I see the, the alt text just as the, the image, the alt text and, uh, and, you know,
yeah, any other title text or whatnot, pull that together into a spreadsheet to have it as a
quick, simple analysis to compare for, for, for the, for our users, uh, or for authors,
rather, to to evaluate and see how, how bad the alt text is. And just to get you curious, the
alt text is bad on most websites. There are very few websites. Unless you're a specifically
an accessibility oriented organization, it is bad. And even in those accessibility organizations,
there are places where the, the alt text is missed or is just not done like it's, it is
consistently a problem in terms of quality. Um, the other thing is, is that there's, uh, um,
there's been changes in HTML, uh, any in here, know about long desk. So, so yeah, long desk is a,
a fascinating debate if you want to go through the HTTP, um, mailing us and sort of see all the
debates, but how do you deal with complex images? Um, alt text is really designed for, for short
pieces of text, whether it's 180 characters or whether it's, you know, a paragraph or two, like,
it's not designed for, um, a full page infographic with many different dimensions to it. So there
are other ways to do that, but how do you evaluate whether an image has, um, has longer, uh, longer
text associated with it? And long desk was an effort to do this in HTML, but has become depreciated,
but there are still pages, even on the WC3 that uses outdated long desk format. How do you find these?
Um, because the WC3C should not be using long desk if they're saying this is no longer a valid
style at standard. They should be updating your information to maintain this. Um, alt wanted to
have an updated open source tool, because I did, I was just annoyed by having to pay the,
the licenses for, um, for a schooling frog, because I didn't have to use it that often,
but everyone's the well, I wanted to use it and was like, ah, damn, I have to go and use this
stupid thing and scan the whole website all over. Um, so I decided to create a new one. Uh,
and I, F, ChatGBT, as you do, what's the best library to work with? Um, I'm a PHP guy. So I've got, uh,
PHP was not the first language that they gave up for a large site calling, surprise surprise. Um,
so, and that my old PHP guy, because I, you know, I've been, I've owned a business for 21
years and now doing work, that's, that's tied to more policy-oriented stuff. So I'm not actually
in a regular day, a programmer, even in Drupal. Um, but, uh, but yeah, Python was a choice.
I don't know Python, but I do know ChatGBT, and so I was able to go off and pull together a tool,
that was able to allow me to start scanning the websites and and evaluate this and pull information.
It was fascinating. How many people have done programming with ChatGBT or other LLMs to try and
pull things together? It is, it is fascinating. I mean, it's, it's, it's some of it's really terrible,
and some of it's really good, and you just kind of, you have to, if like, working with a brilliant
kindergartner, who will get the answer right, a third of the time, and now we're, we're,
we're, you're often, and you get a really interesting script, and then you try and make a
modification to it, and they, they delete half of it, and it's like, it's, it's, it's both
infuriating and unspiring. How much can come, come out of these tools? Um, and, uh, the,
yeah, math, just, it's all just math and statistics, but wow, um, it is amazing. Um,
so I was able to go off and do this, and probably that was by going in and asking for specific
functions and having it rewritten and doing many, many iterations over time. And so the script
goes through, and I can ask it to go into and to call a call a CSV file, pick out a site,
an XML site map, I can, um, look at at different other sets of logic to, to produce a CSV file,
that then I can upload into Google sheet, or whatever else, um, and then then help share that with
people, because, um, there are interesting ways to go off and pull other sets of data out,
like Jason's another great way to go off into evaluate data. But if you're looking at sharing
information with authors, a spreadsheet is the easiest way for them to see the information
and to evaluate the information. So it needed to be something that was visible and easily share
of all with people. Um, so I got some community feedback, because I've shared this as an open
source project, and it was interesting to get that, that, that, that, that, that iterative feedback
from them. Um, and yeah, as many of you will be asking, hey, I would be really cool for this. Yes,
it is. Um, that is tricky too. Um, so, um, I've also enhanced the script to include some
other things, um, because, um, each to know is a very powerful language and very complicated,
um, and there's lots of ways to extend it to one of them is the, uh, accessible, which, uh, internet
applications, which allows you to define, um, other sets of related content with that. So I've tried
to go off into pull that information in, so we've got got some analysis there as well. Um, I was
also able to provide some simple, um, text analysis for a quality, but, but then again, it's trying
to, how do you get that standard of what is good and what it's not? So you can say, if it's less
than 10 characters, then probably it's not sufficient all text. Um, you don't know that for sure,
but you can say probably it is. If it's more than 350 characters, again, it's probably too long.
Um, of course, uh, LLMs aren't really good at matching, um, characters. There are much better
matching words than characters for some reason, but, um, at least in the current models. Um, so,
uh, yeah, it was looking at ways to go up and that to evaluate the quality, um, I ran
them through a language processor, which again, there's so many open source libraries that are
available in Python. Things that I could just add on to say, let's evaluate the alt text. Is it
is it written in plain language? Because it should be, like if the rest of your content is
geared to be written in plain language, then your alt text should be as well. But the game is
challenges with that, because sometimes you're describing technical content that summarizes
in short and so, um, but, but again, we can evaluate to see if there's risks that,
some of you can look at the code and try and evaluate that. Um, I want to provide some real
time examples of that alt text. Um, these are from existing websites, both in Europe and the United
States. So, um, and we can go to the slides you can access this, but alt equals quote quote is not
effective alt text. This should never be in the back. It's of alt equals quote quote. So just,
you know, or quote quote just to be clear, even if you wanted to be an alt text, putting quotes in,
makes it invalid. That is, that will screw up a screen reader and that the screen reader will have
it pronounced to them quote quote. Um, this is a classic one. Um, these two are like final names that
dropped a J.P. off of them because that's, you know, somewhat nice, but it's a final name that somebody
went off an uploaded. And it's like, is that, like, maybe this is relevant because the final
name has some useful information in it, but most of the time it doesn't. Um, here's another one
here. I can assume this means illustration. Okay, but again, how does that help me? There's
an illustration, excellence. Like, if you, I have not, what I have not done, there's another approach
to try and take these alt text and to try and convert them into images. Because you shouldn't
do that, right? You should be able to take the, the, the alt text here and run it through an image
process. They're going to say, what, what do I get? And how does it fit? How does it compare? I mean,
if that would be a terrible waste of energy, um, because from the CPE energy conflict, like that,
yeah, there would be a terrible waste of energy. Um, but, uh, he had no, also bad, um, photo of working
group one. I mean, a little bit better, but, I mean, there's, there's a group of people around
a table, no, four of them. It's a photo of a group of one, photo of working group two, photo
of working group three. Like, that's not useful information. And then you see that and to
have an online, when you expose that information, you can start to say, I think we can do better
than this. Um, so yeah, share early, share often. Um, they'll be a link to the script, uh, in the,
in the, in the slides, but also, um, I think it's a link to in the, the, the, the, the, the, the, the,
the presentation as well. Um, so you can run this little Python script, um, and it will go through
and pull this information. Um, there's also a reading file that's a little bit out of the date,
but chat with GBT is quite useful for writing reading files, because people suck at it. Um,
and especially when you update your code and you're trying to remember what, what is in it? Like,
at least it's somewhat more useful to go off and have something that is a, yeah, it's better than me,
right, uh, that kind of documentation. Um, but, uh, but yeah, please go off and we want to have
contributions from people. We want to have a discussions around this. There are some other
interesting tools that are looking at, uh, having this discussion as well. Um, one of them is,
um, editorially, um, so editorially and, and Sally, these are two tools that are editorial tools.
Um, it's a, there's a talk on a tag that's going to be later on today, and these are really
both interesting tools around how to improve the offering experience, how do you make it easier
for them to see where the problems are? Um, they being looking at struggling to how to, how to
include, um, all text in that. Um, so talking with John Jamison and others, um, to try and, and pull
together, um, some experiences they've had, um, and we need more help than work guidance in this,
and we've been doing this all in English. Um, there's going to be different sets of rules for
different countries. So the English, the English languages should not be assumed to be the default
for everything. Like, I don't know what the best practice for a French or German all text is,
especially with the length of German words. Like, sometimes, yeah, localization was really
important, and that also comes down to all texts. Um, so, um, feedbacks really important for
trying to go off and evaluate this. Authors need to have that feedback. There needs to be a cycle.
Um, open source tools are really helpful to try and and build that collaboration. Um, and, and it's
it's interesting how, I don't think that that there's a, um, that this type of tool has existed
before, um, at least in my search and effort to do that. Then, of course, I came here and was talking
with TBO yesterday, and there's apparently already a tool that TBO was created that does much of the
same thing. So it's sometimes amazing how this type of stuff can happen, um, but we need to
learn from each other's artwork and share that and be able to, to push it further to see how
we can make this be something that is, is beneficial, beneficial for all of us. Um, and, you know,
accessibility is something that, that, that is everyone's responsibility. So, uh, we need to be able
to help and look at all of our teams, whether it's the content teams or the developers, the designers,
uh, there's a whole sort of teams-based approach, and I could happily give another talk about
accessibility roles within development teams, but I'm not going to give that now. Don't bring.
Um, so yes, I did incorporate AI into this as well because I'm YouTube. Um,
and, uh, it was really quite interesting to see that comparison of, uh, when you actually take the
text that authors are given versus the, the, the, all texts that, that, um, a good LLM can generate.
Um, and it's, it's quite fascinating to see how, how good it can generate the content, like the,
the, it, it, it, it's providing much, for so much more content than that I would ever write for all
texts. Um, but then I think, well, what is the right link? How do you want to trust
structured? And what are, what is the author focusing on? Um, what is, what are the pieces you want
to highlight when you want to drop out? Um, and how do you build that so that you're actually
getting something that is a useful tool? Um, and again, as more, there's people who've explored this
as well, but how do you provide a prompt to make sure that you're getting the right kind of feedback
from people? Um, and yes, so the tool that I built does go through and, and provide a couple of
different solutions, um, and allow you to evaluate them to say, like, well, at least if an author
looks at the, the errors, or looks at the suggestion, they can edit it and evaluate it. The author
still does need to be in the loop, but it's quite useful to go off and to see what the tools
and technical, what, what does a bot suggest? And how do you try and take that, that suggestion,
and move, move from that to something that actually reflects the needs of the author. Um,
and, uh, yeah, it's also still not sure where we're still struggling with this in terms of
what, uh, LLMs are possible. In terms of attribution, um, because that's another piece of this,
how do we try to make sure if you're using an LLM to generate all text? How do you, uh,
what all attribution is required? How do you credit that, uh, whatever the source of information is,
is it necessary to credit whoever is behind that for the creation of the code? Um, and that's
something I still don't know. Um, and yeah, there's another text that's, that's in the same repository
that that allows you to, to hit a number of different, uh, uh, open, or, uh, different language models
and evaluate them, whether it's, uh, Anthropoc, uh, or, um, Chad GBT, or, um, Ollama, and there's a couple
of other ones as well. Um, so yeah, evaluate your websites with, with these tools, reflect on the
meaning of all texts, think about how you can go off and make it better. Joining community efforts
to try and, and look at this, these types of tools and see what kind of guidance we can give,
give authors, help, because the, the efforts that we've made to produce good all texts in the
last 30 years have not worked. You know, there's lots of pages and how to write good all text,
but they don't, it doesn't matter how many good pages there are, we don't have good all text.
Um, so how do we try and find a way to make this possible? Also check out the, uh,
Drupal CMS module. There's, as Drupal CMS is a new version of Drupal that's come out
that has any, I function built into it. And the AI tool within it is quite useful.
Um, you can, once, once you've got it set up, you can upload an image and immediately
it gives you an opportunity to go off and to fill in the, the, the text behind that, um, and edit the
text before you hit submit. So it's something that's fairly penless for the author. Um, and that's it.
That's all, all the, all the, all the stuff I have.
Yeah. And hopefully reach out.
Yes. What would be appropriate all text for a logo? Is that something you should just write
as it is? So do we just say, it's a, well, you said it's a fat example of what would be good
text for that. Apparently depends what it does. If it's on it, but it's a logo on its own,
you might want to describe the logo. Um, you, uh, especially if it's, is a profile, if you're,
if it's a page where you're talking about the logo, um, if it's, if it's a, if it's a link,
like on the home page, you probably want to say, you know, more that, that, that, that, that, that,
that you want to talk about where, what the link is going to, and what is it doing? Because,
uh, people don't want to hear, you know, that a long description of what your logo is every time
they load the page, right? Good. Um, about any concrete guidelines on how long it will
text can be because some years ago, I was told, um, I'll text should be too long, but it's the
reasons and stuff. Well, SEO should never be the, the reason why you're, you're doing anything for
all texts. Like, it ultimately, that's not the user that most of us should be aiming for, um, because
it's, we're humans and humans, you know, yeah, but, but people do use all texts for SEO. Um,
but, uh, Eric Egerts, who's from Germany, who's a wonderful accessibility expert that I
looked you all the time, he's done some extensive testing in popular all, uh, screen leaders,
and he's like, there is no practical limits on how long the all texts can be. So you can make
it as bloody long as you want. Is that a good idea or not? Like, well, that's, that's, you know,
but you're not technically limited. It's, it's more a question of how practically long should
be. Yes. Similar question, I've been accused of writing to long out texts because of the balance
between, uh, out texts to, like, describing and inclusion, so describing, like, the physical nature
of people included in things, to be more inclusive. Yeah. Is there good guidance on how to do that
again without, so you're describing everything? No, and it's also, that's also a very political
thing where it's in some countries now, it's more of a dicey issue than others. Um, but I would say
that, uh, probably, what I'm hopeful for, there's a drive to go off and embed, um, the, this
images, the, all texts are image reading in, in your in browsers, where that's Chrome or Firefox,
something that's a Firefox talk on this later on today, somewhere. Um, that's a really interesting
initiative, but we don't actually want that to be done as the, the default. We want to have,
we want to go have people choose it. If you want, if an author wants to have a verbose
all texts or to query an image, we want that, because I think, like, default, you want to have
it as simple as possible and allow the user to expend it to something that allows them to see
the full context and what's possible as required, but not on the, they have the choice. They should
have the choice. Thank you, Mike. All right.