Earlier quoted context omitted.
This is an "all my friends voted for..." argument. Electron applications such as Slack, Discord, and VS Code have ballooned in popularity over the last year or two. Hacker News comments are not representative of the whole.
Popular does not mean good. In fact, it often means the opposite.
I've spent the last two years building a new email client
271–280 of 608 posts
Re: I've spent the last two years building a new email client
#272Earlier quoted context omitted.
“Web app: renders the entire interface in a browser engine” is a pretty simple definition.
This is a simple definition but I think it lacks a couple important things: 1. It doesn't match the words. If that defines a "web app" then where does the web come in? I would think part of being a web app is that you can access it via the web and don't have to install it on your device. 2. Usefulness of the distinction to users. The specific nature of the bundled runtime for the code doesn't matter to anybody. It st…
As for the second issue: users care because performance is worse, accessibility is by and large non-existent and platform features don’t work.
For example: macOS has tabbed windows at the core - any document based app gets it automatically.
How does that work out for electron apps?
Re: I've spent the last two years building a new email client
#273This looks pretty cool, I'm really pleased to see people writing new email clients, and you've clearly worked very hard on this! I have a bunch of questions that I couldn't find out from the website (but are obscure enough that I shouldn't expect to): * Is this a purely native app, or an Electron / Javascript app? Personally I'm only interested in native apps & Electron would be a deal breaker - but I'm weird, most p…
You're not wrong on electron: this tech allow devs to be lazy and we all know that when we are allowed to be lazy, most of the time we are. That said, electron can have a small fingerprint if the dev team is carefull/good enough, and is hte best option when your app have to be able to read HTML (and copy HTML formatted string). To me, an email client is a good way to use electron for an app.
Or for advanced situations "selectively efficient" - using something other than Electron for an app that is intended to be cross-platform because [insert-alternative-here] is smaller/faster/other may be an example of premature optimisation and using something else (especially where that involves learning something else) could mean trading off elsewhere.
Re: I've spent the last two years building a new email client
#274This looks pretty cool, I'm really pleased to see people writing new email clients, and you've clearly worked very hard on this! I have a bunch of questions that I couldn't find out from the website (but are obscure enough that I shouldn't expect to): * Is this a purely native app, or an Electron / Javascript app? Personally I'm only interested in native apps & Electron would be a deal breaker - but I'm weird, most p…
1. It's an Electron app, but it is built to use as little RAM as possible, when I run it on my old Macbook Air, it consumes only around 300mb of RAM maximum, which is less than what Finder consumes, and I consider everything over this limit to be a bug. 2. Currently not supporting Mbox/Maildir but downloading emails directly from the server, however an import of this is on the todo list 3. Re: turn off conversation v…
Re: I've spent the last two years building a new email client
#275Earlier quoted context omitted.
Can't you build something "to use as little RAM as possible, given that it's using Electron"?
OP says that it uses "only 300 MB" of RAM. For an application that deals with primarily with downloading, uploading, and displaying text. How would you respond to someone saying "I raise small mammals, well small given that they are elephants"?
Emails have become much more than that. They can contain almost everything a webpage can.
Most browsers use a ton more ram than 300 MB.
Re: I've spent the last two years building a new email client
#276Re: I've spent the last two years building a new email client
#277Earlier quoted context omitted.
Or you use qt. Which is cross plateform, native, fast and open source.
Ask yourself why more people don't use Qt: (1) With web technologies you can write once and run everywhere including mobile to some extent. Writing a UI multiple times is monumentally expensive. Even huge companies don't like to do this, let alone indie efforts and startups. If Slack with its billion dollars doesn't do it what does that say? (2) The ecosystem is far more active. The web is the largest open source eco…
Given how many smart people are working to make the browser techs as efficient as possible, and the way that things like QT get "bloated" as soon as they start trying to do what browsers do, I've pretty much arrived at the idea that once you have images and an engine that can reflow text and load fonts and so on, and you want this rather complicated functionality to perform at a reasonable level, you're looking at browser levels of resource consumption no matter what you do.
I mean, if you start working the math on what it looks like to have a bitmap of the screen in memory (which you may not literally have as a single flat plane, but we've got character caches, images, and all sorts of other things that add up to that pretty quickly, if not surpass it entirely very quickly), on a high-resolution display, a bit of extra memory left over from packing those resources, the dynamic scripting language space, the other support modules, various other bits of uncompressed media even if it's just windowed... you've gotten into the hundreds of megabytes pretty easily there. Maybe you could keep this below 100MB with a lot of work, but in a world where a single uncompressed 4K full-color image/framebuffer is running you at least 24 MB (for RGB, 32MB for RGBA), 10-50MB just isn't going to be an option.
I've got an emacs here with a couple dozen source code buffers loaded and it's running at about 60MB resident. That's a mere 1/5th of the Slack usage that everyone is incensed about, and while emacs can do a lot of things, it's still taking a pretty substantial capabilities hit vs. Electron to get that small.
Yes, I know emacs can have a web browser in it and such. And if I use eww to load news.ycombinator.com, emacs resident usage just jumped 15MB for what is, frankly, a terrible rendering. It isn't even rendering my jerf.org terribly well, which in modern terms is basically built by rubbing two sticks together and sending the resulting sparks down the wire. That's what 15MB on top of the already-loaded emacs bought me.
Re: I've spent the last two years building a new email client
#278Re: I've spent the last two years building a new email client
#279Earlier quoted context omitted.
Electron apps are web apps "sold" with Chrome. Like buy one, get two for free.
I'd prefer to get what I bought - without "free" Chrome.
Re: I've spent the last two years building a new email client
#280Earlier quoted context omitted.
>many people won't use them, mostly for the technical reasons I really don't think that's true outside of the HN echo chamber. Like OP, I am using a Macbook Air which is hardly a supercomputer and vscode runs perfectly fine on it.
There is almost universal hatred of the Slack app in our client relations department, due to performace. All use Mac laptops or Windows desktops, none of them know the term "Electron".