alt is easier than people think
Apr. 10th, 2023 11:09 amPeople are overthinking alt text. The guidance is pretty simple for normal images:
- Have alt text on your images.
- If the image is purely decorative, like a curly line, space-filler clip art, or redundant with text, then the alt should be
alt="". But it should still be present. - Otherwise, briefly describe the part of the image that's relevant to sighted readers in the context in which you are choosing to post it. This is up to you; you are the one who finds this image interesting. This usually, but not always, includes any visible text on the image.
- You don't need to say "image of".
- If you need something very long (eg. for a chart or an infographic), put it in plain text somewhere, either immediately below the image or linked immediately below it. That helps sighted people, too.
- Don't include information that's not available to sighted people looking at the picture. The alt is not a caption. Information like "generated with midjourney", "taken with a Canon 400", "me and elvis taking his Jet down to Las Vegas" are all captions, not alt. Put them in visible text near the image. (The exception is images of clearly identifiable objects which sighted people will be expected to recognize without more information: "The Mona Lisa", "The Eiffel Tower" are reasonable alt.)
- Don't use it for punchlines! The alt has a purpose! (You can be witty, as long as you don't disrupt that purpose.)
There you go. That's it!
(It gets more complex for SVG and images/sprites placed with CSS, but the principal is the same.)
I've been fascinated to watch, first as people discovered alt text at twitter and later at mastodon, how the one point I've seen people be absolutely resistant to learning is that alt text is for describing the image. It's not for:
- punchlines
- sourcing and credits
- metadata
- extra jokes
- full newsy image captions
- information repeated in a visible caption
- excessive interpretation
Not to say alt text can't have flavor (which implies some interpretation). But folks are massively resistant to learning the two vital points about alt text: that its job is to describe the visual image, and that not everyone can access it so you never use it for information everyone should be able to read.
I don't mean resistant to writing alt text that follows that simple guideline. I mean, folks insist on arguing with blind folks and accessibility experts about the purpose.
I have at least some anecdata tying this stubbornness to these two sites with UIs exposing the alt text to sighted users. So this tool that I would have sworn a few years ago would improve alt creation, I think has made sighted image creators think alt is a toy for them.
I suppose I shouldn't be surprised. I remember the debates over userpic title and alt attributes here at dreamwidth. It took a lot of debate to get to the point where understood they were for different audiences and should be constructed differently. (Although, hmph, that seems to have been reverted at some point, I wonder why?)
I cannot yell loudly enough that (thoughtless, ill-considered) innovation and standing out are nearly always incompatible with usability, user experience, and accessibility. Web designers and front end devs who don't have a functionality-first attitude need a new career, or they need to do work on art projects instead of usable websites. Heydon yells this with the assistance of wolves and cursing, so maybe more people will watch and pay attention.
never talk about work
Jul. 12th, 2022 05:06 pmAn interesting side effect of being at the intersection of Epub standards, publishing, programming, librarianship, children's/YA literature, and open access is that I am absolutely positive that I have many colleagues who have always gotten along wonderfully with one another professionally and philosophically who nonetheless have vehement, diametrically opposed opinions about Hachette v. Internet Archive.
(Disclaimer: I wrote a package for the IA which (at least at one time) was part of their pipeline for making their scanned books accessible: abbyy-to-epub3. I don't know if they're still using any variants of that code.)
In any case while I have my own opinions about the case,[1], I find it absolutely wild how many authors are defending the current library ebook-rental model, which is unsustainable, unaffordable for many libraries, and is not a massive royalty generator for most authors (in the US, anyway, which doesn't have a Public Lending Right). Regardless of the ethics and legality of the IA's model -- which is not at all an easy answer! copyright in the digital realm is hard[4], as we all know! -- the current library ebook licensing model is awful for libraries.
[1]: Mostly that it's not cut and dried, but also most individuals who are angry at the IA should actually try the experience of checking out a book from the IA and they'll realize that it's hardly going to be anyone's first choice if an actual print book or ebook is available and accessible[2] from the library or for sale. And in fact it does not seem to be anyone's first choice, in that sales appear to be unaffected.[3] In general the terms of the program are even more restrictive than they were two years ago, when TechDirt wrote about how everyone misunderstands what it is.
[2]: It's worth noting that many of the IA's CDL books are out of print and have no ebook edition, and unless the reader has access to the NLS (in the US), the IA is one of the only ways to get a vaguely accessible Epub or DAISY copy, or a copy in your location at all.
(You're welcome. Or, I guess, I'm sorry, if you've seen the quality of the theoretically-accessible epub, which is the best you can do in an automated pipeline with limited budget, because accessibility costs money.)
There's no other way you can see my dad featured in this very out-of-print book from the Boston Children's Museum, unless you have access to one of the 145 libraries with a copy, that's for sure.
[3]:
Indeed, the publishers have not offered any evidence that Internet Archive’s digital lending, or anyone else’s, has cost them one penny in revenues . In fact, their overall profits have grown substantially, and sales of the works at issue in this case appear to have increased . Plaintiffs’ own witnesses admitted that their theory of harm is “speculative” and simply an “inference one could make.” And tellingly, Plaintiffs specifically instructed their expert not to try to measure any economic harm.
Hachette v. Internet Archive - Internet Archive's Memorandum for Summary Judgment
[4]: It's not clear what the repercussions to the rest of our online lives would be if the US government decided to rethink the First Sale doctrine, but it would certainly be extremely far-reaching to all of us.
We'll kick out those dirty licenses
Mar. 23rd, 2021 11:25 pmAnyway, as I've pointed out before, RMS once said, when someone asked about accessibility in free software,
"the abolitionists did not seek to give people the power to make choices about freedom or slavery. They sought to abolish slavery."
tl;dr the FSF can eat my shorts, emacs sucks, and vim is great.
I'm unlocking it now, because I want to remind folks that RMS has always been a complete shitheel. (I know, he has been a lot worse to this, to a lot of people, for an exceedingly long time. This was just the example I have in my pocket.)
Some gems I didn't call out in the original post include:
- In response to a request that any FLOSS accessibility solution enable the economic independence of disabled people so they can choose free software willingly: "the abolitionists did not seek to give people the power to make choices about freedom or slavery. They sought to abolish slavery."
- It would only be "ethical for you to use NaturallySpeaking if your main activity were working directly towards replacing it."
- His claim "For several years I had bad hand pain and mostly could not type. I did not even consider using a nonfree dictation program, because nonfree software would take away my freedom", which completely glosses over his actual solution at the time: he paid a high school student to type for him. Silly me, relying on proprietary software all these years when I could just call up MIT and get them to pay a kid to type for me.
- This entire message, which I urge you to read in full, especially if you want to hate Stallman with the passion of a thousand fiery suns but don't want to think about sex crimes.
- And finally, I want to call out the most loathsome quotation from the thread, which I linked in the original post: responding to the comment about inaccessible computers, ""Can't use" is such a strong statement that I wonder if it is another exaggeration, Even if you have no hands, there are other ways to input besides dictation."
I'd also like to call out this comment Synecdochic made to the old post:
I comfort myself with the knowledge that one day he will go away, and the rest of us can get back to the task of making software.Hear, hear, S.
Notes
- Over comments he's made over the years regarding crimes such as Jeffery Epstein's that are frankly too stomach-churning to repeat. [back]
- I no longer dislike Microsoft's ecosystem. Nobody else cares fundamentally about desktop accessibility. Microsoft gets countless things wrong but accessibility will always be my killer app. [back]
Most of my questions boil down to this:
How much did the Apple developers and designers of this product work with users of Dragon NaturallySpeaking for Windows (DNS), DragonDictate for Mac (DD), and Windows Speech Recognition (WSR)?
How much did they learn about what the speech recognition community already expects as a minimal baseline, as well as what speech recognition users have been lacking in our current tools?
Because how Apple answers that first question will inform the answers to all these details:
- Will this allow complete hands-free command and control? In other words, will users be able to control their computer without a mouse, a keyboard, a virtual keyboard, a switch, or mouse emulation?
- Will it give access to the menus, graphical icons, or any other aspects of the standard OS X desktop chrome, as long as the code is written using Apple standards?
- How will it work with tools that are not natively enabled to use it? For example, if I install an application that runs in a virtual machine (eg. Eclipse or Slack), what aspects of this speech recognition will be available and what won't?
- Will it require the cloud or network access to work?
- Will it have a trainable voice model?
- Will it have a configurable vocabulary?
- Will it be programmable, either with simple macros or with complex third-party tools?
- In what languages will it be available?
- Will the mobile version require a physical trigger to access, as with the built in microphone-icon-to-dictate currently available on iOS? Can it be left on all the time?
- How will the privacy be guaranteed for any always-listening aspects?
- Does it integrate with Apple VoiceOver?
( For context, the answers to these questions for DNS and WSR )
What other questions do people have?
( Endnotes )
Here's what I'd like to see on Dreamwidth:
General things
- Accessibility remaining at least as good as the status quo no matter what features we add. Since our accessibility is pretty awesome, that's a nice high bar.
- A site that works well on desktop and mobile, where all pages scale well on mobile. A solid, highly-usable mobile-friendly site is in many ways superior to an app (since, among other things, it doesn't put you at the mercy of Apple).
- A posting interface that allows you to use rich text, markdown, or HTML, with easy-to-find help links describing how to use each of them.
- A dynamically updating (AJAX) preview mode, in a side-by-side or in-page tab interface, not a whole new window.
- No reblogs / retweets / shares. I think I was pretty clear about a small fraction of the reasons I think those are a bad idea.
- No like / kudos / ❤️, though I feel less strongly about that than I do about reblogging.
Little things
- Increased options in the "embed" link, specifically including the ability to use twitter's embed code (and then probably reformat into something that uses a Twitter-esque stylesheet but doesn't actually pull JS from their site).
- A posting interface which lets you add images directly when posting.
- A la carte image hosting increases for paid accounts.
- An image upload page which integrates well with phone upload.
- A general improvement in the image user experience, including integrating the view and manage pages, making it clear which bit of the image text becomes alt text, and having a better UI than "copy and paste this HTML into your post."
- Scheduled posts
- Making it much easier to choose an all-site tag search as well as a single-user tag search. maybe as a paid feature.
- Tag and word blacklists (ie. "don't show me that post"), preferably with an indicator about the blacklisted post, along with some metadata, so you can make an informed decision about whether to read it.
- A paid model for small video snippets. None free, but at least little Twitter videos. Heck, we could do six second videos and do Vine.
- An optional way to generate a card snippet from a URL in a post (the way many sites turn a URL into the page title, an image, and a brief text snippet
- More legal CSS, well document, and an easy way to create a user stylesheet you can use in your posts (as at the AO3)
I also have very mixed feelings about adding a "someone is talking about you" feature. Sometimes in a threaded conversation it drives me up the wall that if I say "It's like
I know I don't understand how roleplayers use the site, too; they have their own use patterns.
What else would you like to see?

Image long decription
The "Keyboard shortcuts" tab has the text "Keyboard and mobile (touch) shortcuts" and offers the following configuration options:
- For Keyboard shortcuts: A checkbox labelled "Enables keyboard shorcuts," followed by two choices: "next" and "previous". Each has a text entry field in which the user can enter any character, and checkboxes allowing zero to three possible keybindings (Control, Alt, or Meta).
- For Touch shortcuts: A checkbox labelled "Enables touch shortcuts," followed by two choices: "next" and "previous". Each has a choice to set a particular touch gesture, or disable that gesture.
This settings page presents options for all the keyboard shortcuts you can use on Dreamwidth, which, currently, are only shortcuts to skip to the next and previous entries. (It's unlikely that this list will get much longer.
So, yay, keyboard and touch shortcuts to make pages faster to navigate! A clear usability win for many people, and perforce a clear accessibility win! But why is this more accessible than always-on, non-configurable settings pages? I'm so glad you asked.
Many assistive technologies set their own keyboard shortcuts. In fact, many browser add-ons set their own, as well. When these conflict with one another, there can be very unexpected behaviour. I set these keys to unmodified J and K, which work splendidly as easy-to-dictate and easy-to-type commands, but conflict with most screen readers out of the box. In fact, because of their broad adoption in many applications over many decades, they'll also conflict with many browser extensions out of the box. There's no such thing as a universally safe keybinding.
A few years back, when I was using Gmail for work, I had to disable every one of the keybindings! It turned out that on in my environment, something (I never tracked down what, exactly) was causing a conflict where sometimes characters typed or dictated in a text field were being interpreted as Gmail shortcuts. It made it impossible to send mail, for obvious reasons. Other webapps I've never been able to use at all, because their non-optional keybindings conflicted with accessibility settings I've set in my own environment.
So kudos to Dreamwidth for this beautifully accessible usability enhancement.
This spring, I gave a tutorial at Ebooklib, "WAI-ARIA In Practice: E-Books That Are Dynamic, Beautiful, and Accessible". My whole session basically boils down to "look at all these awesome things you can do with WAI-ARIA, but look at all of these terrible things you can do with WAI-ARIA, so please use it, but pretty please with sugar on top only use it mindfully -- read the documentation!" (Powerpoint slides with notes, PDF reading list.)
( aria-roledescription, speech recognition users are not screen reader users, and button labels )
Look, Ma! I'm a freelancer!
Jan. 27th, 2017 04:39 pmSuberic was formed back in the wild old days of the Internet, when "there shalt be no commercial speech on the Internet" was extremely recent history (only three years after Canter and Siegel spammed Usenet). We've grown a lot over the years. I can't recall for sure, but I bet we once had little icons that said "Bobby approved!" and "Best when viewed in Lynx."
Today we're launching the new home page for Suberic Networks, LLC. Our gorgeous new logo was designed by Pablo Defendini. The site's launch aims to showcase my freelance programming work.
We build database-backed software solutions with rich user interfaces that provide a tested and welcoming user experience. Suberic Networks is particularly adept with the Perl and Python programming languages, and we can modernize legacy software as well as design, build, and test new projects. We have specialties in accessibility, user experience, digital libraries, and publishing.
I know many of you are involved with accessibility, library, archives, and publishing. Not coincidentally, those are particular strengths of Suberic Networks consulting! I encourage you to consult our expertise and consider whether we might be of use to your organization. And I'd be grateful if you'd signal boost (without spamming, of course) to interested parties.
Play of the Light
Jan. 10th, 2017 05:17 pmlongdesc test
Sep. 8th, 2016 12:18 pmUpdate: Ah, this makes sense. Longdesc that's encoded as a data URI gets stripped. Data URIs are a great way to encode longdesc, but it makes perfect sense to strip them. This is now a test to verify my new understanding.
Linked longdesc:

Data URI encoded longdesc:

Update 2: Yep, verified.
my own checkered cap
Jul. 11th, 2016 10:09 pmfirst she had on her own checkered cap, then a bunch of gray caps, then a bunch of brown caps, then a bunch of blue caps, and on the very top a bunch of red caps.
Apologies to Esphyr Slobodkina
(For those more in the loop of
- obscure fairy lore or
- Dungeons & Dragons baddies based on obscure fairy lore than on
- 76 year old picture books
After several happy years at Safari Books Online working with Python, I'm moving on to other projects. For now, I'm moving on to a variety of open source projects. I hope to have the chance to talk about the bigger ones soon. As for the smaller ones, well. Expect pull requests from me soon!
Seriously, though. I'm trying to talk myself out of adding (imagine Allie Brosh-style self-insert here) Fix All the Accessibility Bugs! to my todo list. That seems like a Poor Life Choice.
Much love to all my Safari Co-Workers who've been mentors in my journey into Python Infested Waters. I'm sure I'll see most of you in my new spaces as well. Liza will be sad that I'm looking forward to having time for Perl projects again -- though probably happy to know that I'm a convert to the Python culture 100%, if only partially to Python-as-language. (You'll pry regexes out of my cold dead fingers, Liza. Well, pretty easily; you've seen my fingers. But out of my metaphorical fingers.)
W3C work isn't going away, especially not since my W3C colleagues have been making noises about increasing their demands on my time, you know who you are. And there's likely to be more children's and YA lit in my life soon, as well! More details will be forthcoming if that happens.
Further up and further in!
Another True Story: My mother brought me up to feel real shame over convenience items. She was willing to compromise on keeping tinned soups in the house we kids could make for ourselves, and buying bakery bread. But everything from supermarket bread to pre-chopped garlic to cake mixes were items worth nothing but scorn. (Oddly, we had a microwave. Also, I'm pretty sure that in the 70's vegetables grew in rectangular frozen bricks.)
#OrangeGate thus hits home for me.
A summary of The Case of the Package in Orange: Last week,
If only nature would find a way to cover these oranges so we didn't need to waste so much plastic on them. pic.twitter.com/00YECaHB4D
— Nathalie Gordon (@awlilnatty) March 3, 2016
The image in the tweet is of peeled oranges being sold in plastic tubs by Whole Foods.
Social media backlash was huge, Whole Foods pulled the oranges, the press covered it in multiple countries. Meanwhile, disabled folks on Twitter said "WTF, those oranges are awesome!" and got called Earth-destroying demons by some asshats on the Internet. (References: Crippled Scholar, "When Accessibility Gets Labeled Wasteful".
Every time I purchase a convenience item, I argue with the inner puritan my mother instilled in me, the shaming voice that sounds like an army of Twitter eco-activists happily tweetraging away from their rare earth-filled mobile phones. I am lucky enough to be a well-to-do person with a disability, so I can make convenience choices: the robot swiffer; the accessible doorknobs and taps I've installed in my home; the touchpad remote control; the top of the line microphones and adaptive tech. And every one of these makes me feel lazy and shamed.
Once, I bought a motion-sensitive liquid soap dispenser. It was awesome, especially in the mornings when my hands are minimally functional. Later, someone I follow tweeted mockery at an ad for the dispenser. When mine subsequently died, I couldn't bring myself to replace it. Seriously, every time I see it in the drug store, I think about buying it, but stop myself. I've even put it in the shopping basket before putting it back. I hear my inner puritan yelling at me, now combined with the mockery of people on the internet. So in the mornings I struggle with a regular soap dispenser (uncomfortable, awkward, sometimes painful) or bar soap (constantly dropped, difficult to grip, sometimes painful).
- The robot swiffer means I can help out a little more around the house and not rely on my partner.
- If it weren't for
diceytillerman reminding me I'm allowed to take taxis, I'd see my friends even less often. - Do you know they make tool that both unscrews bottles and opens that annoying wedge of cardboard you're supposed to push in with your thumb? It's amazing.
- My partner has to pop daily pills into a pill case for me, because nobody's invented a convenience tool that defeats blister packs.
- If I could bring myself to buy pre-chopped onions, I'd cook far more often than I do. But every time I think about it, I'm confronted with people making fun of them as luxuries as in this old piece from Consumerist.
- My mother shames me for buying sliced sandwich bread -- from the bakery, even, not from the store -- because if I won't bake it, she can bake it for me. But the store bread is sliced. Slices matter.
- I remember when I could eat artichokes. I haven't been able to eat an artichoke in 15 years because I can't grip the leaves, but I can eat a canned artichoke heart.
Disability is expensive. An adapted life is one which is allowed to have a footprint on the world. Living without convenience items by choice is a luxury, and you should be grateful you can.
Excuse me. I need to go eat an apple.
accessibility job opportunity in DC
Jan. 28th, 2016 11:07 amDepartment: Executive Office of the President
Job Title: Accessibility Officer
( Duties )
Step one: teach the people running the job board that you don't use all caps for headers, you use regular capitalization and style to caps with CSS if that's what you want. :D
Do people in jobs like this get fired when the administration turns over?
...Now I'm imagining the accessiblity officer in the Trump administration.
DictationBridge
Jan. 25th, 2016 07:22 pmIt's being billed as for blind and VI people with RSI, but as a sighted RSI accessibility programmer I am going to love this. Also since I have a cordless headset I might become a person who full-on computes while cooking.
- Follow professional colleagues on twitter.
- Be relatively quiet and well-behaved on twitter because it's a professional forum.
- Follow more social justice folks on twitter because that's where they are.
- Tweet more about politics because these issues are important.
- Get stressed about tweeting about politics because I'm inexplicably followed on twitter by my boss, my grandboss, my great-grandboss, and my CEO.
- Get equally stressed about tweeting during the workday because see above, even though I'm responsible about when I check it.
- Hope they have me muted.
- Follow lots of people using twitter as a long-form platform because the New Web is weird, y'all.
- Start to long-form tweet because I pick up the languages of cultures I'm immersed in far too quickly.
With a soupçon of "I have all these blog topics half-drafted; why do I never finish them or reply to comments?" and a dash of "I seem to be so destractable and irritable lately."
I did eventually figure out that one of the reasons I was doing long-form tweeting is my perception that more people will read a storify than a blog post (unless it's on medium, *snort*). Which, (a) aargh, whatever, this is not a productive of my focus, and (b) I'm not widely read anyhow. [footnote]
I also keep running into the situation where I'm capable of being ridiculously diplomatic in situations where I believe it's called for (basically, any situation which has already become fraught), but in pretty much any other situation I am my father's daughter. I call that "assuming that in any non-politicized situation everyone is an adult and is willing to speak frankly with each other and hear frank and open opinions", though I suppose my father probably would have called it "not having time for assholes". To be fair, he also would have said something to the effect of "you're your father's daughter, and we're both assholes."
(Sometimes I miss the hell out of my dad. ♥♥♥♥♥)
This has led to the odd situation where some people believe I am incredibly diplomatic and can be called on to moderate awkward conversations, and some people think I am a bull in a china shop and should not be allowed out in public. Both of which are actually situationally true! But twitter, in any case, is one of the situations where it will not occur to me to be incredibly diplomatic, even though almost by his very nature it is already fraught.
It was at this point that I recalled I could disable Echofon notifications on my phone.
I'm hoping this will stick.
Footnote:
Certainly I'm not widely read in the accessibility community, where I'd like to have some influence. On the one hand this is deeply frustrating, because I do have a lot to add to that conversation with respect to technology, usability, and standards. On the other hand, that arguably means I can burn bridges freely.
Which, as I watch (as I have over the last decade) women, people with disabilities, and people of color get shunted to the side in accessibility standards making, accessibility voices cited, and people in the field given credit for their work, is something I have been considering more and more lately. If I'm not going to be allowed to help improve the accessibility of the web as a whole, why not focus on improving the accessibility of individual websites? I am too practical to bang my head against this particular wall forever.
Also, today was my first real mansplain! (Since its coinage.) I mean a For Serious dude in my mentions Calmly Explaining Me Things, when it became clear via three separate threads that he had no idea what he was talking about, and I, who had assumed he knew more than I did because he was so confident about it, was the more more knowledgeable of the two of us.
I was grimly thinking last week about the great day in the future when I will be able to burn all of those aforementioned bridges and speak a truth or too about the way things happen in the accessibility community, when I remembered the also aforementioned "the accessibility community doesn't particularly value my voice." Which again, means I can be tactless enough to make a post such as, say, this one, without even worrying about ticking people off. I could even link to it from twitter, honestly, although that would arguably be counter-productive for my own mental health.
Native apps, applications, and web apps
Oct. 30th, 2014 11:35 amFor example, I honestly did assume that once I was forced by a job to use Gmail, that I would discover features of Gmail that outweigh the power and accessibility of a mail application. I understand that I am a change-averse Luddite, and suspected that using Alpine my primary mail reader in this day and age was indicative of a slight flaw in my character.
But now that I have been using Gmail with some regularity, it has become abundantly clear to me that no webmail client I've used (Gmail, roundcube, web Outlook in accessibility mode or in rich mode) has the speed, power, and accessibility for me of using the dedicated mail application.
Marco boils his reasons for switching to native apps down to less clutter and latency . I'd say both of those are issues for me as well, just as much as simply saying "accessibility" -- although they are both inextricably tied to accessibility for me.
A cluttered screen -- especially a screen with one of those damn non-scrolling JS banners taking up screen real estate -- is one that requires more scrolling, which is inherently difficult to do without a mouse. Even on desktop, my monitors are smaller and my fonts larger than they used to be, and the design of web apps has gotten less streamlined, substantially, over the last few years.
Meanwhile, the annoying wait-till-it-loads aspect of the web app is a lot more annoying when I am waiting for mouseless browsing to see all of the page elements so it can put actionable links next to them. It's a lot more annoying when I can't start interacting with the page until it is fully loaded, unlike a mouse user who can start to move the mouse towards the expected area of the page.
Ultimately, it comes down to a combination of both spoons and basic UX. Like a lot of computer users with disabilities, the extra cost of using the computer is high enough for me that every aggravation that gets thrown in my way is one more blocker that possibly prevents me from being able to work at all. And as for basic UX, well. Like a lot of techies, I'm used to the power and speed of the keyboard-based environment. I honestly have no idea how people used to a powerful, lightning-fast, terminal-based mail application become comfortable with the clunky latency of webmail.