If only the world would double-down on web standards

posted by Jeff | Friday, June 18, 2021, 8:00 PM | comments: 0

Google dropped version 91 of Chrome, and suddenly, my open source cloud music player, MLocker, stopped working on Android. It had been something of a precarious situation in the first place. It wouldn't reliably run on iOS browsers at all because of some stupid restriction they have around playing media without user input, and on Android, you do have to deliberately tell it not to do battery optimization. The underlying platform is .NET Blazor, which compiles down to WASM, web assembly.

Fortunately, it's not my shoddy coding, and an issue appeared on Github about it, and someone filed an issue with the Chromium team as well. Given my excitement about WASM bridging the gap between native apps and the web, this was wholly disappointing. I definitely have work to do on that project (there's a caching bug), but as a solution to never have to depend on third parties for music and playlists, this rules my world. I want it to work on my phone. That's why I invested the time.

Fortunately, it looks like a non-issue in v92 of Chrome, and it's on their radar as a regression. Honestly, I give them all the credit in the world that they're wanting to support the WASM standard at all, and do it right. But aside from Apple's bullshit, I still feel more strongly than ever that these web-based standards that work just as well as native app code for 95% of non-game situations should be the direction of software development. It's literally just a packaging issue. If these WASM apps were available via the app stores, people would not know the difference, and software people wouldn't have to worry about trying to support three or more platforms.

In the mean time, vendors like Microsoft are still trying to bridge the gap between the mobile, desktop and web platforms. Blazor and now MAUI are trying to reduce the amount of code used across these on the UI end, which is the final frontier, since library code can effectively be shared in .NET across all platforms. And it's like, yeah, if we solved the packaging problem for web-based UI on every platform, we would be done already.

We're in a better place than we were five years ago, but still have so far to go.


Post your comment: