Skip to main content


Hey if Sonos can just up and screw their UI then I can just up and decide to never use them for future speakers. Time to check the resale value of this garbage in case they can't fix the UI accessibility like yesterday.
in reply to Talon

Yeah I would probably be selling my Sonos shit if I had any. They claim they are going to put in some fixes by the 21st so maybe it's worth hanging around for a couple of weeks, but I am overall very disappointed with how they handled this. They could have just not released the app update until it was ready for everyone. Is it too much to hope that some big company will do that someday? Probably.

WestphalDenn reshared this.

in reply to Simon Jaeger

@simon You don't hope. You expect the worst and then wait until it inevitably happens. :)
in reply to Talon

And then I adjust my definition of the worst to be even worse than it was already and repeat the process?
in reply to Simon Jaeger

@simon I don't want to be overly pessimistic, but there is some suggestion that they may be using a cross-platform UI toolkit like React Native. That makes accessibility many times harder if true, and requires a level of dedication Sonos haven't shown thus far.

I'm not hugely affected, given that I do most things via AirPlay and voice. The resale market for Sonos equipment in my area is also non-existent, so I don't have much choice but to hold onto my stuff. Nevertheless, I'm not hopeful. @talon

in reply to James Scholes

@jscholes @simon I've been thinking about grabbing the Android app to find out if they're using React Native, Flutter, or something else. I guess there's no easy way to peek inside third-party iOS apps these days.
in reply to James Scholes

@jscholes @simon That, then, makes me wonder about these people that claim react native is accessible by virtue of being native on mobile
This entry was edited (5 months ago)
in reply to James Scholes

@jscholes @simon So there just isn't a single fucking way to have cross-platform UI accessibility besides build entirely different apps for each one?
in reply to x0

@x0 It's possible. But it's hard work, and none of the options (including React Native) are going to give you perfect, native-feeling accessibility out of the box. There will always be something off, and it's just a question of how much it ends up mattering to the user. Teams that opt for these toolkits also tend to lose some of the guardrails that native UI provides. @simon @talon
in reply to James Scholes

@jscholes @x0 @simon Aira Explorer is interesting in that I'm 99% certain it's Flutter, and it came out awesome.
in reply to Nick Giannak III

@nick I'm not claiming it's impossible to create a positive outcome with certain cross-platform UI toolkits, only that it's a lot harder. When dealing with a mainstream company who wants to replace platform-specific expertise with interchangeable genericness, that is a problem... for us.

baldurbjarnason.com/2024/react…

@x0 @simon @talon

in reply to James Scholes

@nick #Sonos has replaced its app not because they truly think the app is better. But because they can replace specialised Android, iOS, Windows, and macOS teams with one generic team who know how to use cross-platform tools.

It goes beyond that, though. Look at the ideas behind the new home screen, which essentially can be described as: "put what you want on it". Is that primarily a user-facing improvement? No.

Rather, it's a reason to not rely on designers who can carefully think through information architecture, viewport sizes, user flows, and the best ways to present information. Make it the user's problem so that they can fire the people whose responsibility it used to be, or move them to another team where they won't be able to do their best work and will eventually quit and not be replaced.

This update goes way beyond #accessibility. It's a fundamental shift in how they do business, and it will be shit for everyone. That, more than the lack of #VoiceOver support, is what will probably cause me to move away from their ecosystem.

@x0 @simon @talon

in reply to James Scholes

@jscholes @simon I finally looked at the Android app. (I'm not a Sonos user, but I'm curious about this whole disaster.) It's Flutter, which is the other major cross-platform mobile UI toolkit. That puts the app at a further disadvantage, because Flutter renders its own widgets and has to implement its own accessibility for those widgets, rather than wrapping native ones.
in reply to Matt Campbell

@matt @simon Wonderful. The only experience I have with Flutter came when a prominent accessibility figure was touting how much progress had been made with it. I downloaded the example app they were talking about, and found it to be one of the clunkiest things I'd ever used on my phone.
in reply to James Scholes

@jscholes @matt The best example I've ever seen of what I know to be a Flutter app is Aira. The entire app is contained in a dialog which doesn't focus by default. Lots of other sections of the app are nested dialogs that also don't focus. keyboard access is clunky at best.
Normally, when you load a Flutter app in a browser, it comes up with an "Enable Accessibility" button. Aira seems to do this automatically, but I've seen the button get focused briefly before accessibility mode triggers.
The worst example I've seen is a phone provider in the Philippines. With accessibility mode turned off, I can't read a single thing in the interface. With it turned on, the only way to focus text fields and other controls is to tab to them. The mouse won't focus them, NVDA can't focus them. So I had to get visual assistance with accessibility mode turned off, relying 1000% on the agent.
I don't know how much of that is PLDT's fault, but I don't really care. No framework should allow for the creation of such an abysmal experience, and having to press a special accessibility button is bad news, as I hope we can all agree.
in reply to Simon Jaeger

@simon @matt Yeah. Fuck that. Crumbs from somebody's table are not what I enjoy for dinner.
in reply to James Scholes

@jscholes @simon @matt Yeah, I feared that it is Flutter we’re dealing with here. Somehow I thought even ReactNative apps couldn’t be this bad, since that thing does implement rather sensible native accessibility API wrappings. So unless you only used div elements in the React code, things would be reasonably semantically correct, and even the web app spun from it would be kind of accessible. But Flutter apps and their web counterparts are, as Simon said, a real real bad mess. If compiled for the Mac, there is no keyboard access other than tabbing to randomly focusable elements. And considering Flutter is a Google initiative, it is horrifying that it is as bad as it is. Google should know better. Geez, this is really going to be a long and winding road for the Sonos app and eco system. I no longer believe in their promises of fixing the accessibility by end of June.
in reply to Marco Zehe

@Marco @jscholes @simon @matt Can they actually fix this in any way except hiring a bunch of C++ programmers to work on Flutter itself and potentially forking the whole framework?

I think this rewrite was intended as a cost-cutting measure, it might just end up being the exact opposite.

in reply to Mikołaj Hołysz

@miki @jscholes @simon @matt I don’t see how. From what Simon reports, anything that has a special accessibility mode is pretty much doomed to failure. Yeah I know, Google Suite has an accessibility mode, too, but they are substantially bigger than Sonos, and with the introduction of Braille mode, they rectified some of the extra stuff and relied more on proper HTML again. But for Sonos, this is going to be a huge huge undertaking. They really couldn’t have picked a worse framework in my opinion.
in reply to Marco Zehe

@Marco @jscholes @simon @matt I think the reason for an accessibility mode on the web is just performance and missing APIs. As far as I know, it's normal for desktop GUI frameworks that do their own drawing to only interface with the underlying A11Y APIs if there's an asssistive technology running. This is not something you can check on the web, so your options are making your app slower for everyone and requiring AT users to press a button.
in reply to Marco Zehe

@Marco @miki @jscholes @simon @matt Yeah, agreed. It would also explain the scrolling issues Mason mentioned, I’ve seen a lot of flutter apps that scroll poorly. Somehow I wonder if this isn’t going to give them more problems in the longterm, I don’t know if Google killed the Flutter team entirely like @dhamlinmusic said but I read an article a few days ago the flutter and Dart team was hit by massive layoffs and in general flutter issue backlogs are growing so it’s probably closer than further to the google graveyard. Also, the prevailing theory on Reddit says they had to release this app *NOOOOOW* is because of the headphones which are manufactured, maybe starting to ship out to warehouses, but they couldn’t make it work with the old S2 app and had to shift resources ASAP so they could have the software ready. Well it still fucking sucks.
in reply to Pitermach

@pitermach @Marco @miki @jscholes @simon @matt Yeah, bet we read the same articles, I thought one of them had an update that basically the major layoffs were everyone not being reassigned and that the division was effectively dead.
in reply to Marco Zehe

@Marco @jscholes @simon @matt I thought Google dropped flutter entirely? I remember reading that somewhere, that they closed the team and effectively killed it.
in reply to D.Hamlin.Music

@dhamlinmusic @jscholes @simon @matt I haven’t heard that, but wouldn’t surprise me, since their own efforts didn’t go anywhere. Then it is even worse basing such an important app on this framework. Yikes…
in reply to Marco Zehe

@Marco @jscholes @simon @matt Yeah, in their recent reorganizing and layoffs I believe they dumped the entire division and reassigned or cut everyone working on it.
in reply to Talon

Hey we should have something like OpenWRT but for shitty smart speakers.
in reply to Talon

Thing is, for anything beyond single speaker over Bluetooth, you need the proprietary software. Amazon, Apple, or Google could do the same shit, at any time. If you're migrating, I'd suggest Apple or Google. Apple has AirPlay, and Google has Chromecast, but your phones or computers can't send any media to more than one Amazon speaker at a time.
in reply to Talon

I’m somewhat sad that I only just bought a new speaker. I added another error 300 to my lounge room Setup to make a stereo pair. And they sound amazing! I suppose one of the advantages to the way I do things most of the time is that I don’t need the app for the most part. so hopefully I won’t have to worry about that until they fix things, but if I don’t see some fixes in the next few weeks? That might be different.
in reply to Serena 🏳️‍🌈

@SerenaTori yeah very unfortunate. I've had these for a very long time. And the app was definitely a lot better when I got it compared to even what it was before the update now.
in reply to Talon

actually curious, do we have a convenient alternative? Tried Google Home Maxes and the CHromecast protocol seems to be pretty prone to stutters/dropouts. Sonos does this better, but not familiar with other solutions and their accessibility, pretty much refuse to even consider HomePod or whatever the newest iteration of that is called these days
in reply to Florian

@zersiax Not sure. I also refuse to use Google because it's... you know... Google. You'll buy the thing and by the time you get home and unbox it it's discontinued.
in reply to Talon

@zersiax We tried replacing our first generation Sonos speakers with a bunch of Amazon Echoes, but their room management and streaming capability at the time were far inferior to Sonos. We then gradually upgraded all broken speakers to generation current, and until yesterday, were very happy. I prevented the upgrade, but my sighted partner got it and hates with a vengeance. Sonos have really taken a perfectly useable app concept and totally broken it.
in reply to Marco Zehe

@Marco @zersiax Well, for what its worth, they officially stated that they want accessibility to be back at where it was until end of June, and the first improvement update should happen in roughly two weeks. Lets just wait until then before just ragequitting again. My system will continue to run as usual without having to use the app in the meantime.
in reply to Toni Barth

@ToniBarth @zersiax Yeah, I sincerely hope they can deliver on that promise, because I actually don’t want to get rid of my current Sonos setup. But previous experience tells me that they won’t be able to meet this ambitious timeline from what I hear about the state the new app is in right now. Unless they’ve already been on fixing stuff for several weeks, and the build released yesterday is actually several weeks old. Then they might be able to get it done.
in reply to Toni Barth

@ToniBarth @Marco @zersiax Still a shitty thing to do in my opinion. I paid just as much for these things as a sighted person. I'm a less valued customer though. I'm definitely not just immediately rage quitting them. Had these things for way too long for that. But I'm not beyond doing so if they don't stick to it. And yes. I do use the app.
in reply to Talon

Go get a sound system the old way, wires and cables. Problems solved. LOL.
in reply to Мира🇧🇬🇭🇺

@Mira 🤞🇧🇬🇭🇺 @Talon Yes this is what I'd prefer my self as well. With some single board computers hooked into traditional speakers and #mpd based #upmpdcli I can make it play it in sync. I can get access to streaming services including BBC sounds, qobus, tidal, radio-browser.info and other sources like subsonic compatible servers. lesbonscomptes.com/upmpdcli/
in reply to Peter Vágner

I kind of use headphones a lot. People around me aren't fans of loud music. Hahaha.