Quote from: smashingred at Apr 02, 2015, 09:30 AMJP,
I support your sentiments exactly. I agree 100% with starting with HTML first. I'd suggest something like React.js would be a non-starter IMO for the next MODX manager. We can have our cake and eat it too.
I think we are in agreement. The a11y.modx.com page is still raising money claiming for first class #a11y software that will be built upon and within the semver restraints of software that didn't think about accessibility at all. If this feat is pulled off, somebody should right a book about it.
I'm used to being the odd-one-out, it's the life of an HTML-advocate. I started my career as a Flash Developer so I've seen the implications of dateable software but even then the flash interfaces we built for clients like Nike6.com were completely #a11y accessible. How? We built them on top of semantic HTML layers. We tested them with JAWS. Fully clickable (and searchable) sites became asynchronous one-page flash sites.
My point is that as a Flash Developer I thought about accessibility because frankly we had no choice. Flash wasn't accessible, so we had to.
Thing is, JavaScript isn't accessible either. While it is considered standard and ok to use that doesn't mean that you shouldn't think at all about the people that don't have it enabled. Is it that hard to use a noscript tag?
Flash died because overnight everyone became disabled; we have these tiny, limited smartphones in our palms now. Did the industry as a whole care about accessibility before? Not really no. Does it now? Nope. Responsive Design to many is just about making it so people that can see and touch things can see and touch things on a small screen.
When I started Markup.tips just a few weeks ago I chose React really just because it was the framework of the day. I really like some things about it, particularly JSX. React and Angular both have really clever ways to empower markup and it is nice to see the industry shifting back towards where it started.
Thing is though, React and Angular are both dateable tools. A few years from now we could be talking about how irrelevant they are. That's why one of the concepts of Markup.tips is JS-drivers. It is admittedly a foolish undertaking because it requires a lot of repetition but the concept is simple. Components should be able to be designed so that they are so HTML heavy, they can be flavored using one of several light drivers without changing the user experience or functionality. In other words I am working on an Angular driver for this simple to do list I created in React. I should be able to switch between the two without the user even knowing.
http://markup.tips/components/creating-an-accessible-to-do-list-powered-by-react.js.html#focus
The main navigation component described here, same thing. Working on multiple drivers.
http://markup.tips/tips/sticking-components-above-the-fold.html#focus
The only reason this is even remotely feasible is
- i spend too much time in front of a computer
- those components are 85% or more HTML
I am starting to realize that accessibility can almost be judged off measuring a component's weight alone. If it is not primarily made of HTML and CSS it probably isn't very accessible. Let's be honest here; measure pretty much any 2.x Manager component. They are close to if not 0% HTML and use little CSS as much of the layout is governed by ExtJS.
If 3.x could support HTML from an API standpoint (standard as well as async forms) it seems like a major win. In conjunction with the ability to create custom manager themes, the LLC wouldn't even need to worry about whether or not it worries (or worried) about accessibility because the community could make other themes that are actually accessible and actually pass all the #a11y tests.
Unless I am mistaken, something like this could not be done in 2.x.
[ed. note: dinocorn last edited this post 11 years, 5 months ago.]