4 ms·
Figma is incredible for what they managed to achieve: "Pulling this off was really hard; we’ve basically ended up building a browser inside a browser." [1] But
by illiarian 4y ago
Figma is incredible for what they managed to achieve: "Pulling this off was really hard; we’ve basically ended up building a browser inside a browser." [1]
But yeah. I wish people stopped waving Figma and VSCode around as shining examples of web tech. They are two outlier built at incredible expense and effort.
[1] https://www.figma.com/blog/building-a-professional-design-tool-on-the-web/ https://www.figma.com/blog/building-a-professional-design-to...
- samwillis 4y ago> I wish people stopped waving Figma and VSCode around as shining examples of web tech. They are two outlier built at incredible expense and effort Ok, so take a look at photopea.com, basically built by one guy. The point is the web is capable of these things, sometime with a large team sometime with a tiny one.
- illiarian 4y ago> The point is the web is capable of these things, sometime with a large team sometime with a tiny one. The thing is... when you say "the web is capable", keep in mind that it's always one or two of the following: - it's an insane effort to get something working (VS Code, Figma) - it's not using web tech, not really, but desktop tech that is usually 5-10 years behind the actual desktop tech (WebGL in Figma and Photopea, Canvas in Google Docs) And even there it's still multiple unresolved issues like font rendering, accessibility and a plethora of others. Edit: Speaking of Photopea: I'm always in awe of people who can not only build a complex app, but also build an entire library of controls and a design system, too. Because the web's controls are is just so, so, so poor.
- KronisLV 4y ago> Ok, so take a look at photopea.com Photopea is a great project and it's nice that we can build things like that, especially with tools that are familiar across a wide variety of use cases (as opposed to having to know OpenJFX, WPF/WinUI and who knows what else). But compared to native software, there will always be a certain overhead to contend with, which may or may not be an issue: for many, it will be easy to just hand wave away the idea of needing to support netbooks with something like 4 GB of RAM, or many older machines, due to personally having better hardware. For example, I briefly compared working with the following image (the full sized one) in Photopea in a Chromium based browser instance with no other tabs and GIMP locally: https://commons.wikimedia.org/wiki/File:Andromeda_galaxy.jpg https://commons.wikimedia.org/wiki/File:Andromeda_galaxy.jpg First, I checked the memory usage of both programs without the image open: Photopea 304 MB GIMP 110 MB Then, I opened the image, without doing anything else just yet: Photopea 1004 MB GIMP 396 MB Afterwards, I did a bit of drawing with the brushes for a few seconds, later undoing my changes: Photopea 1340 MB GIMP 474 MB While my current computer is fairly good and I saw no slowdowns, it's fairly easy to imagine that the memory usage alone would present a bit of a problem on my netbook, I couldn't open 3 images like that without running out of memory. Whether this matters for most folks is debatable because the popular stance is to just buy more RAM (on the devices where it's possible to upgrade it, all others becoming e-waste), but there's definitely an argument to be made about the nice efficiency of native software as well. Otherwise we'll end up in a point where it won't be possible to reasonably open 10 IDE instances at once, or run all of your Electron based software in parallel (e.g. some editors, Postman for API testing, Discord/Slack for chatting, Figma for mockups, Lens for Kubernetes or whatever else people are using, possibly even Terminals built on web tech eventually).
- paulgb 4y ago> I couldn't open 3 images like that without running out of memory. This isn't a great comparison because you're counting the fixed overhead of the browser as well. If you have three tabs open with other images, it won't take 3x the memory. Personally, I virtually always have a Chrome instance running on my desktop, so the overhead is incurred either way. In Electron there is fixed overhead for running Chromium for each program, but it's a stripped-down instance without all the bells-and-whistles of a browser, so it's not as high as it would be for a full browser.
- KronisLV 4y ago> This isn't a great comparison because you're counting the fixed overhead of the browser as well. If you have three tabs open with other images, it won't take 3x the memory. This is a good point, my bad. Most people would open multiple images in the same piece of software (though it seemed like more memory was used in comparison to GIMP anyways). A more realistic take on my part would be running X different pieces of Electron based software, which would use Y% more memory than native alternatives. That's not to say that there can't be good and comparatively efficient software like that out there, Visual Studio Code is a good example of something that actually performs pretty well! But that's mostly because of the huge amount of engineering that MS put into it, most other similar approaches like Brackets or Atom were plagued by sluggishness.
- exodust 4y ago> compared to native software, there will always be a certain overhead And if the native software is a bloated monstrosity? Naggy, cloud-syncing, process-spamming, privacy-invading, background-lurking garbage? Don't give native apps a pass for being native. I ditched all google software from my PC after it acted like malware, re-installing itself after I removed it several times. And doing bizarre things like scanning my drive with a "software reporting tool" which thrashed the hell out of my drive. That's the only reason I found it because my hard drive was mechanical and wouldn't stop grinding. https://support.google.com/chrome/thread/29314533/can-we-please-remove-the-fucking-software-reporter-tool-wtf-100-cpu-usage?hl=en https://support.google.com/chrome/thread/29314533/can-we-ple...