I held off on Windows 10 for as long as I could until my job required it. Now this nonsense. I hope this isn't the start of them joining on the web DRM bandwagon.
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.sort is 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.
The company I work for doesn't test on anything other than Chrome because we have a relatively niche audience that uses corporate-provided computers, and Chrome is available on all machines. The app seems to work fine, but we don't spend any QA resources on it.
The last company I worked for was the same way, but with a little more diverse userbase. Testing on Firefox would increase our QA time, and very few customers cared, so we only supported Chrome. I would occasionally fix things for Firefox, so the app mostly worked fine, but at didn't spend any QA resources on it.
And so on. I'm guessing that's the case here as well. They don't want people complaining about things not working if it works fine on Chrome. Firefox may work fine, but they're not willing to spend QA resources proving it, and they don't want the support overhead from customers complaining if something doesn't work properly with Firefox.
Yeah sure, fine for the SME sized business and I've done it in the past for features like offline web behaviours (wasn't public facing). But tbh it's a shitty excuse even at that size and outright inexcusable for Adobe. I wouldn't get away with this at my current place which has significantly less resources than them. Don't make excuses for Adobe and it's a weak excuse at best.
I'm not making excuses, I'm describing what companies already do today. If they can get away with it, they just won't support multiple browsers.
If we had even one customer that used Firefox, I would be adamant that we support it at my company. But we don't. We know who our customers are because we're in a B2B relationship and we lock out everyone else (we make a niche product for a niche market in a niche industry; total users are in the hundreds).
Adobe doesn't have that excuse, but they have the brand recognition that people will go out of their way to use their products, so they can get away with not supporting Firefox. It's still stupid, but it's a viable strategy given their position in the market.
That's all I'm saying. I'm not saying it's good to target one browser, I'm saying it's practical, so a lot of companies do it. My response is to not use services that block me out, and to recommend alternatives to friends.
Could be because Safari is using WebKit and so people assume that Safari and Chrome works the same way because back in the day they were quite close.
WebKit is Appleâs fork of KHTML and KJS, both originally made by the KDE project (yes that KDE) for the Konqueror browser.
Google used WebKit (WebCore specifically) when building Chromium, but replaced KJS with a new JavaScript engine called V8. V8 is still used in Chromium today, but also went on to become Node.js
Apple forked KJS, their version is now called JavaScriptCore.
The support for Safari could be because of an assumption that since Chromium was built from Safari, theyâd work more or less the same, but they donât.
It seems more likely that Adobe supports Safari because Safari is the main browser on macOS. Adobe supports Windows and macOS (and I would guess a lot of their users are on macOS), so it doesn't make sense not to support it, regardless of how cumbersome that makes the codebase.
Additionally, Photoshop Web (Beta), which is available to paying customers, has the same levels of browser support.
Microsoft Edge was previously based on EdgeHTML, which was canned within 2 years, and is now based on Chromium. Opera used the Presto engine for a long time, but now uses Chromium, and a bunch of Opera developers used this as an excuse to split and create their own browser with their ownâyeah, okay, Vivaldi uses Chromium too. There was a time when Google promoted Firefox on the front page of google.com instead of Internet Explorer. A time obviously before Google Chrome became a thingâafter that, Firefox's position as "second-most popular browser" was quickly retired. It's kind of crazy Firefox ever managed to get that much market share considering it was competing with pre-installed browsers like Internet Explorer and Safari; Firefox was never pre-installed on any platform except GNU/Linux.
And Konqueror is still kind of around today. First comes the Navigator, then the Explorer, and then the Konqueror, anybody?
Another good point. I forgot Adobe is targeting the mobile market as well. However, I doubt Adobe wants to ship a webapp as an official product for mobile devices. Steve Jobs might have wanted to only support webapps on iOS in the beginning, but we're at a point where most users won't accept anything but an app as a first-class experience. It could make sense as a beta product though.
And it's not necessarily that Safari is the only browser available on iOS/iPadOS, but that Webkit is the only browser engine supported, so Google Chrome/Firefox/Brave and others are using Webkit while changing the appearance and some features of the browser. Minor nitpick.
Personally, I'm all for Adobe going to the web with their products. It means I don't need to keep a Windows or macOS computer around to get some of my work done. I do wish Photoshop Web wasn't a completely buggy mess which is impossible to do any real work with. I don't mind if they don't support Firefox, although I would prefer they did.
not necessarily that Safari is the only browser available on iOS/iPadOS
We're discussing browser engines, so whether the shell is from Google or Brave is irrelevant. You're technically correct I guess, but it's a weird thread to be pedantic in.
I do wish Photoshop Web wasn't a completely buggy mess
Yeah, the "write once run everywhere" nature of the web comes with some pretty big caveats. Despite JavaScript being pretty fast, it's still way slower than native code, and web pages seem to be a lot harder to get right consistently than a desktop app where you're in control of all of the GUI libraries.
I'm still excited about more things being available on the web as a Linux user, but the promise of Web 2.0 hasn't really happened and native apps are still the way to go.
So I just don't touch Adobe products. They don't solve actual problems I have that FOSS apps don't, so I ignore essentially their whole catalogue.
Weâre discussing browser engines, so whether the shell is from Google or Brave is irrelevant. Youâre technically correct I guess, but itâs a weird thread to be pedantic in.
I initially thought you really did mean "only Safari is allowed on iPad", and then I realized you were talking about the browser engine. As I said, it's a nitpick, but not entirely a distinction without a difference. Technically the browsers can have other features like...the ability to choose a search engine not on the blessed Safari default list. Or a pin-unlock screen like Brave has. But for rendering, it matters exactly zero, so the difference is irrelevant in this thread.
Yeah, the âwrite once run everywhereâ nature of the web comes with some pretty big caveats. Despite JavaScript being pretty fast, itâs still way slower than native code, and web pages seem to be a lot harder to get right consistently than a desktop app where youâre in control of all of the GUI libraries.
I don't knowâI think the web has been pretty successful at getting things to run consistently on different operating systems (minus DRM, though that's intentional), but yeah, different screens and different browser engines are definitely pain points. It's why everyone standardizes on Chrome.
What about Electron? Is it any better? It bundles the browser after all, haha, so no worries about compatibility there.
So I just donât touch Adobe products. They donât solve actual problems I have that FOSS apps donât, so I ignore essentially their whole catalogue.
I wish I could! I use DaVinci Resolve where I can, and Affinity Photo/Inkscape for other things, but sometimes it's necessary for collaboration. I personally despise Adobe software for several reasons, but I'm not getting away from it any time soon.
In particular, I'm never going to find a replacement for inDesign.
Electron is worse for different reasons, one major one being security (e.g. my company uses Electron and we haven't updated it for a few years because reasons). But as far as delivery goes, it works pretty well, which is why it's pretty popular (Slack, VSCode, Discord, etc).
But that's the same idea as using some other GUI platform that you can lock down, like game engines, QT, or GTK. So I don't consider Electron the same as a browser because you remove the constantly changing nature of it.
it's necessary for collaboration
Are you a graphical designer or something? If so, use the tools that help you deliver a professional product. That's why I occasionally use VSCode as a software engineer, if my preferred editor makes things difficult (I use neovim), I'll use VSCode because it's easy to configure for certain use cases. I'm more productive with my preferred tools for day to day usage though.
However, if you're a hobbyist, then you have a lot more leeway. I'm a hobbyist game dev, so I use Godot. It works well for me, and my results don't need to be as professional as I'd get with something like Unreal Engine (i.e. higher performance, better lighting effects, etc).
Oh right, thanks for the info about Electron! I've heard Discord has let their Electron version languish for several years now. I wonder how well React Native works for cross-platform mobile development... it seems like it would be easier than maintaining separate codebases. I've heard things both ways. But that's completely off-topic.
Are you a graphical designer or something?
It's, uh, complicated. I have occasion to review or make minor changes to other's work, and sometimes I'm the one creating the work. I get involved in a few different creative fields, mainly... My primary job role right now has me doing web design, and I use Neovim for that. Mainly because I can SSH into my main computer from my laptop and work on the same codebase without splitting up commits, but also because I'm a Vim fanatic.
In my personal life, I use GNU/Linux for everything. I try to get acquainted with the current state of free software for doing what I want to do so I can do it faster/better next time. Some software can replace the proprietary counterpart I use for work, but the biggest problem is collaboration, of course. There aren't good exchange formats for most of these software. The only thing that calls me back to Windows is anti-cheat multiplayer games.
React Native works pretty well, we use it for my company's app. It comes with its own complications, but I think on average it's a time saver.
Neovim
I approve. :)
I've been messing with my config lately and I think I have most of what I need working again. I used to do Go development, but switched to Python and needed to make a bunch of changes to my env. Even when I use VSCode for the one-off project in another language, I still use a ViM extension.
I use macOS at work because that's what the company provided, but nothing in my job requires any special software. I do need Chrome for testing because that's our primary deployment platform, but other than that I can use whatever I want. So I use 90% FOSS for my work. At home I'm 100% Linux for gaming and hobby game dev, and it works pretty well.
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 was a great explanation. I'm fully onboard with the "fuck Google and their web drm nonsense" but there has to be a disconnect from avoiding bad actors and recognizing the reality of the industry. ty for posting.
I feel like itâs necessary to mention that Iâm just speculating, and donât have any affiliation with Adobe, thus I canât say for certain that I know why they choose to not support Firefox.
Iâve been in the position before though where Iâve chosen not to support non Blink/V8 browsers for the reasons listed above.
The fragmented nature of the web platform makes it a pain to develop for, in a way you donât necessarily experience with ârealâ languages.
I have been, and honestly still am, of the opinion that Mozilla should just forego their engine and move to Chromium. Not because one is better than the other - if anything I think Mozillaâs implementations are, as they tend to be more âby the bookâ - but in unifying the web platform itâd be easier to develop for, and it would bring the added bonus of Google not having as big a monopoly on what goes on in Chromium.
Microsoft moving to Chromium was big in that sense, so Iâd love to see an established FOSS vendor like Mozilla exert their influence on the project.
Yes, move all browsers to chromium and give google absolute and total dominion of the internet.
What a fucking brilliant idea.
Problem isnt browsers, anyway. Problem is adobe locking their bullshit behind subscriptions and DRM instead of just being able to buy it and own it like you used to.
Would Mozilla and Microsoft get control over Blink and Chromium? Surely someone has ultimate power over which pull requests are merged into main(or however they do it), and that's Google. Mozilla could fork, but now they're back to the problem of developing their own browser to compete with Chromium.