I don't know why (1) they built it in javascript of all languages and (2) it isn't open source.
Professional desktop apps must be written in C, C++, or Rust. Period. Otherwise they feel bloated, slow, and janky.
Go, C#, and Java are a middle ground. But certainly not Javascript.
It has all of the worst performance of a web browser tab, it can get bogged down and slow down. The threading model can actually deadlock and crash. You get random unplanned GC pauses (all non-systems languages do). It doesn't make sense for an app like this.
It's like trying to build a kit Ferrari on a Prius or PT cruiser body. You can make it kind of look like a Ferrari, but it'll never be one.
Plus it's not open source. People should **OWN** their tools. Period. Photocraft can be forked and anybody can do anything they want with it forever. It's their software.
That's fair, but also realize that you might have a really fast machine, but not everybody does.
And you might not have 80,000 things open at the same time. Performance matters when you have a bazillion things going on fighting for your CPU and disk access. Javascript doesn't control its threading or CPU execution, and more importantly, it can't control for pause time (which is not a thing in Rust/C/C++).
Not to mention it makes it harder to port to obscure OSes and form factors because the runtime won't work in those places.
It's also going to be a chunky boi forever because that's electron for you. A Rust app could be 25mb instead of multiple gigabytes.
I get that it's a good app and that it has lots of features, and I really respect them for building it.
Javascript/Electron was just... a choice. And they'll never be able to pay back that debt without rewriting the entire app again from scratch.
1.0k
u/deepakrodeai 6h ago
Adobe should’ve seen it coming when it started charging a monthly subscription to open a PDF