Building a Slack/Discord alternative with Tauri/Rust
171–180 of 253 posts
Re: Building a Slack/Discord alternative with Tauri/Rust
#172Earlier quoted context omitted.
I think using Electron is excusable if you are a startup, like you said your time is limited. It's much less acceptable if you are Slack and still ship a slow bloated Electron app 10 years in.
The truth us that once you have shipped Electron, there's no way back, the cost of switching is too high. This is not specific to Electron, it's a similar effect with every core technology, all the way to COBOL.
So the cost is less the cost of "switching" and more the cost of initially writing a native app.
In turn the actual question is how to reuse as much code as possible between the web-app and native apps without it introducing a lot of friction.
And one of the few reliable, nicely (developer) usable answers for this is currently electron.
For "business logic" there somewhat are already other answers, some languages run on most targets reliable and there is also wasm which often still needs a bit more tooling but has a lot of potential for such use cases (e.g. see Disney which AFIK does have their core business logic compiled to a wasm blob and then "only" provide UI/system glue to bundle it in on all platforms their streaming app runs on).
The problem is UI, you really don't want to reimplement UI and the mapping of non HTML/CSS producing UI to a mix of HTML/CSS on some platforms and native components on other often doesn't work grate so it's not surprising people decided to "just go with HTML/CSS everywhere". And if you are already there going with electron isn't "that" much more overhead.
Re: Building a Slack/Discord alternative with Tauri/Rust
#173Earlier quoted context omitted.
You've been able to package your java apps so to not require that from your users for a very long time, and in the more recent years, with the compartmentalization of the JDK, you've been able to ship a very striped down version of it, and even more recently, an AOT compiled/PGO optimized binary, so nowadays you can ship your instant starting/low footprint/well performing java code without Java/a JVM.
So your suggestion to avoid shipping chromium is to ship java instead? Aren't you just replacing one VM for another?
Re: Building a Slack/Discord alternative with Tauri/Rust
#174Is it just me or do others find the Electron bashing a little over the top as well? I mean VS Code, Discord, Slack and Obsidian are all in very widespread use and work perfectly fine for me. Are there alternatives to Electron that require less resources? Tauri seems to be proof that there are. But I think there is real value in large communities and backing. Electron seems to work perfectly fine to me for everyday us…
Slack is currently eating 600MB of my RAM, for something I check maybe once an hour. You know what I'd like to use my RAM for instead ? Gradle. kotlinc. intellij. Things that I actually use to do my work, and not a bad IRC that wants to make me pay for the privilege of seeing old messages. Electron is a demonstration of laziness and a living proof that software companies do not give a single shit about their users an…
You forgot about the times when two or more of the electron applications you run because you have no other option decide to take 20% CPU each or more.
Even if you make it a point of pride to run a computer that eats power measurable in kilowatts per hour, that's bad when on battery at least.
And from the article:
> One of the main core differences with Tauri is that it uses a Webview instead of using chromium like in Electron.
What's the difference? It will still end up eating all that ram and needlessly refreshing the cat gifs someone posted a day and a half ago.
Re: Building a Slack/Discord alternative with Tauri/Rust
#175Earlier quoted context omitted.
Here is an idea, do a Web application. Most of the Electron junk can be easily done as pure Web application, of course authors don't want to pay for hosting and ship a browser and server with the application. There are a very tiny percentage of such startup ideas that really need features not available on a standard Web browser.
Now that at least Windows, Chrome OS, and soon macOS properly support PWAs it will finally get feasible to add web apps to your desktop environment. I know I’ll upgrade to the new macOS ASAP just to get rid of slack. (I don’t know about Linux).
Re: Building a Slack/Discord alternative with Tauri/Rust
#176Earlier quoted context omitted.
Its never fun finding the correct java version to get ghidra going on a new machine. I don't use java often enough to remember versioning differences between the official and openjdk. I never install the right one on the first try, always requires a trip to the ghidra docs. I must have gone through this 7 or 8 times in the last 5 years. Its also really rare for a desktop app written in java to look good. I'm sure its…
Don't JetBrains just ship with their JRE and always ignore any "system" JRE? That feels like the correct solution, at least once your app gets to a certain size so the size of the JRE can be ignored. Also JetBrains' apps look good enough I'd say. Another pretty one with a java frontend is BitWig. That's perhaps more impressive than any JetBrains app.
Last time I upgraded an old install i wasn't using, it pulled its own JRE, then pulled a new gradle which promptly complained about the JRE Android Studio installed itself.
Had to do some googling and force it to use a JRE that both the IDE and gradle liked.
But as I said, that doesn't happen often. It's just funny when it does, in a masochistic sort of way.
Re: Building a Slack/Discord alternative with Tauri/Rust
#177Too bad Elixir/Rust wasn’t used. It seems to be the perfect platform for a communications service (and is also what Discord is built on). And before that, WhatsApps was strictly Erlang.
Yeah I agree. People should be building their Slack alternatives in Elixir at the very least. It's the tried & true, no brainer, boring technology stack for highly scalable, performant, concurrent applications.
Re: Building a Slack/Discord alternative with Tauri/Rust
#178Earlier quoted context omitted.
Slack is currently eating 600MB of my RAM, for something I check maybe once an hour. You know what I'd like to use my RAM for instead ? Gradle. kotlinc. intellij. Things that I actually use to do my work, and not a bad IRC that wants to make me pay for the privilege of seeing old messages. Electron is a demonstration of laziness and a living proof that software companies do not give a single shit about their users an…
> a living proof that software companies do not give a single shit about their users and just want to push more crap, for cheaper, all the time. Exact opposite, to me Electron is the living proof that software companies correctly care a lot about building a product people want, and correctly realize that the large majority of people correctly do not care that one of their top productivity app uses $1 worth of RAM, bu…
The large majority of people care about programs that run fast and feel snappy, programs that don't look like some high school dropout's modern art project, programs that don't demand a pocket supercomputer to bankrupt you, programs that just get shit done because computers are just a god damn appliance comparable to a toaster from Walmart.
Re: Building a Slack/Discord alternative with Tauri/Rust
#179Looks interesting, though I would definitely need Android/iOS clients before considering it. We migrated our small, private slack group to discord when slack changed their retention policy, though it's become less active since then. I think a lot of the members use slack already, but are not inclined to deal with discord. Maybe a different app would be better, or maybe it's "slack or nothing" for some of those folks.…
Re: Building a Slack/Discord alternative with Tauri/Rust
#180Earlier quoted context omitted.
Slack is currently eating 600MB of my RAM, for something I check maybe once an hour. You know what I'd like to use my RAM for instead ? Gradle. kotlinc. intellij. Things that I actually use to do my work, and not a bad IRC that wants to make me pay for the privilege of seeing old messages. Electron is a demonstration of laziness and a living proof that software companies do not give a single shit about their users an…
> a living proof that software companies do not give a single shit about their users and just want to push more crap, for cheaper, all the time. Exact opposite, to me Electron is the living proof that software companies correctly care a lot about building a product people want, and correctly realize that the large majority of people correctly do not care that one of their top productivity app uses $1 worth of RAM, bu…
Today's software runs worse on modern hardware than yesterday's does, because you "let the engineers focus on UX and features" without teaching them to care for a single moment about _actual_ user experience instead of whatever bullshit their product owner put out.
Talk to any real engineer and not the US bullcrap of "oh sure everyone out of a code camp is an engineer" and ask them if quadrupling the weight of a bridge and multiplying resource consumption by ten is an option. You are making our profession look like fucking clowns.