←back to thread

380 points culinary-robot | 1 comments | | HN request time: 0.258s | source

I started working on Halloy back in 2022, with the goal of giving something back to the community I’ve been a part of for the past two decades. I wanted to create a modern, multi-platform IRC client written in Rust.

Three years later, I’ve made new friends who have become core contributors, and there are now over 200 people idling in our #halloy channel on Libera.

My hope is that this client will outlive me and that IRC will live on.

Show context
mattfrommars ◴[] No.45592515[source]
I've started to notice there are a lot more rust based desktop application appearing vs say Go based or Java. Most of these apps are cross platforms. My guess is they are trying to compete with Electron. There is Tauri runs on Rust.

Can someone please tell me what special about Rust? Say, why aren't desktop application popular based on say Python?

On tangent, ive seen a lot of terminal base application in typescript and go

replies(16): >>45592641 #>>45592675 #>>45592685 #>>45592749 #>>45592802 #>>45593837 #>>45593972 #>>45594122 #>>45594253 #>>45596410 #>>45598979 #>>45600393 #>>45600936 #>>45601342 #>>45601747 #>>45605373 #
1. philipwhiuk ◴[] No.45605373[source]
I can tell you that writing Java GUI applications is hell. You have the following libraries:

AWT - still actually under-pining the others, but very ugly to work with

Swing - basically runs on top of AWT, with the same design model, plays badly with it. Is hard to write in a testable way, is prone to embedding business logic in UI components

JavaFX - all the worst parts of business Java with all the worst parts of XML and also the worst parts of a game engine. Now you need to care about 'adding a scene to a stage'.

The principle core technology that made Java good was applets. Since they were killed by mobile, the reason for delivering a Java app is functionally zero. You will need to ship a JVM which you need to update alongside your app.

Java is a great back-end development language and a really poor GUI language.

These days you should either ship an Electron app or native code.