this post was submitted on 07 Aug 2023
1718 points (98.5% liked)
Firefox
17857 readers
1 users here now
A place to discuss the news and latest developments on the open-source browser Firefox
founded 6 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Nah, honestly I get this. They likely don’t let you run it in Safari either.
The problem is that each browser use different rendering and JavaScript engines. They all follow the same spec, but implement things differently, and at a different pace. Firefox tends to be really speedy with adding features.
Rendering is one thing, but for web apps the main issue is how they each implement JavaScript differently. Chromium uses the V8 engine, Safari uses JavaScriptCore, and Firefox uses SpiderMonkey.
Each one of these implementations handle certain JS features differently.
Array.prototype.sortis a good example.This means that when developing your application you need to keep track of what differences each browser has, and write/use polyfills or conditionals to ensure that your methods work as expected on all platforms.
This becomes cumbersome quickly, and easily leads to a messy code base and technical debt as the application grows.
It further complicates testing since you’ll need to test each release on each browser.
The easy cop-out solution is to just support a single platform, and direct people not on that platform to use the browser you’ve developed for.
The go-to choice there is obviously Chrome, since it has the most users. Photoshop Express is a free application developed with the hopes of hooking people onto buying a subscription. Thus they’d want as big a reach as possible. It would make no sense to develop for Firefox and push people to use that instead from a business perspective, most people wouldn’t just download a second browser just to use an app.
Edit: you can obviously spoof your user agent and bypass the check that way. Some features might be broken in Firefox though, and I wouldn’t expect a fix.
As a developer with 7+ years industry experience this is a very weak excuse to not support browsers.
Differences in features are usually down to bleeding edge stuff and I don't think your example of sort would apply because the end result is the same.
I know Adobe are more prone to using newer browser features but there really shouldn't be anything that's not simple enough to assure support across all browsers. Especially for a company as big as Adobe. It's inexcusable. We rarely have to use polyfills now, that was more a problem when I was starting out, mainly due to IE11 still holding out.