7 ms·
I know that we all work on what we want to work on for reasons even we do not understand sometimes, but I do wish people motivated to work on projects like this
by amiantos 3y ago
I know that we all work on what we want to work on for reasons even we do not understand sometimes, but I do wish people motivated to work on projects like this would dedicate that time elsewhere, somewhere they are wanted. Why not make a great Matrix client or improve that ecosystem somehow otherwise? Why make a Discord client when Discord literally does not want you to?
- jszymborski 3y agoWhile I agree with the sentiment, there is no lack of Matrix client side-projects.
- tymscar 3y agoI wholeheartedly agree but working on something you can use is much more fun, and the chances this person uses discord are much higher than of them using matrix
- Ezhik 3y agoWhat's a dev to do when their friends are on Discord?
- creesch 3y ago> somewhere they are wanted. While Discord might officially not allow it, a lot of folks do want the option of using different clients. There are a few out there and generally speaking it does like discord doesn't crack down on it unless they see odd api usage. *DISCLAIMER:* Still very much use at your own risk. I am not responsible for banned accounts. > Why not make a great Matrix client or improve that ecosystem somehow otherwise? Likely for the same reason there are still relatively few feature complete matrix clients out there. Don't get me wrong, there are a ton of clients out there with some functionality. But few that support all functionality. For the longest time it was just Element. A large reason for that has to do with how complex the Matrix protocol is to deal with. To be fair, the discord API also has become a hot mess with all the features tagged on over the years. But the basic API for just chat is fairly straightforward. Not to mention that there are multiple wrapper libraries for various languages out there that make things even easier. Also, people work on projects they benefit from themselves. Or at least the ones they are motivated to do. If someone isn't on Matrix why should they invest the time and effort to get effectively nothing in return?
- tcfhgj 3y agoWhat's complex about the Matrix Protocol?
- yungporko 3y agonobody cares what discord wants, their client sucks and lots of people want an alternative.
- Dalewyn 3y ago>Why make a Discord client when Discord literally does not want you to? Discord's hostility is irrelevant if you desire to write a client. Kind of like climbing a mountain because it's there; who cares if the mountain will probably kill you. >I do wish people motivated to work on projects like this would dedicate that time elsewhere, somewhere they are wanted. If that desire was expressed in the form of compensation, more devs would probably start lining up. I realize the very concept of compensation is heresy for FOSS, though.
- 0x073 3y agoAt the time when yim,icq,msnm had their primetime no company behind it wanted third party clients. "Why make a Discord client when Discord literally does not want you to?" Why make another X when you could improve Y. Because most of the time if they wouldn't build X they wouldn't improve Y. This is no company that balance human resources.
- jeroenhd 3y ago> Why not make a great Matrix client or improve that ecosystem somehow otherwise? From my dabbling, I would say Discord's API is a lot easier and better documented. Matrix has a billion different standards, a complex message format, and encryption to deal with. There are libraries, but they're not easy to use, sometimes incomplete, and are rarely documented beyond "this is how you send a ping bot". Also, people actually use Discord a lot. Matrix is big, but not Discord big. In practice, Discord rarely ever bans anyone for using alternative clients either. I don't like the way Discord is now the standard for communities, but I'm not too surprised about it either. At least open source projects seem to use Matrix, but I wouldn't recommend it to my gaming buddies because of how odd the clients generally are.
- githubalphapapa 3y ago> Matrix has a billion different standards There is one specification, available on the official site. It isn't, and never will be, required to implement all of it. > a complex message format It is a very simple format. Here's an example message (as sent by a client; additional fields are added by the server, such as server-side timestamp): { "content": { "body": "Hello, world.", "msgtype": "m.text" }, "type": "m.room.message", } > and encryption to deal with This is also optional. If you want to talk in unencrypted public rooms, for example, you needn't bother with it. The spec is so simple that you can send a Matrix message from a shell with curl. It's just JSON over HTTP.
- jeroenhd 3y agoThe official spec is a combination of hundreds of tiny specs and extensions, akin to XMPP. There may be one single reference, but it's constantly evolving. > It is a very simple format. In a best case scenario, sure. The Discord version of your example would just be "Hello, world" without any of the other JSON. In practice, you need to deal with a whole range of message types with various references and slight variations. Inner Matrix message bodies are essentially freeform, which makes Matrix quite powerful but also difficult to deal with compared to the "different HTTP endpoint per request type" approach Discord takes. > This is also optional. If you want to talk in unencrypted public rooms, for example, you needn't bother with it. Sure, if you accept having your users install two different apps, one for encrypted chat and one for group chats.
- diamondburned 3y agoHi, developer here! I have worked on a Matrix client before (diamondburned/gotktrix)! I abandoned it because I couldn't be bothered to handle E2EE or rewrite it in a different Matrix library, but Fractal is also fairly stable now and it scratches the same itch, so I didn't see a point.
- Nextgrid 3y agoEveryone says "Discord bad" (and I agree, it has issues) but few bother to understand and learn about what makes it successful and makes people use it (even in spite of its badness). Alternatives bring in their own set of issues and generally focus on technicalities rather than delivering a good Discord/etc competitor, so nobody uses them. Do you want to chat with people or do you want to waste time dealing with protocol fragmentation, half-baked clients (or no clients at all), fundamental protocol-level flaws (that can't be fixed without effectively starting from scratch on a new protocol), etc? Most people pick the first option and then tolerate the badness of Discord as a necessary evil.