Agree with many of the other comments here saying that they'd be very wary of such a project based on what these choices say about the project's maintainers. Something else is that while I have real affection for email and particularly IRC based on past experience, I don't think these two are without problems. Email is so asynchronous that many folks feel obligated to treat writing messages to a list more formally. This is not totally misguided since everyone subscribed gets this message delivered to them. IRC, on the other hand, is so synchronous that you should reasonably worry if anyone will be there to talk with, and about whether or not there are searchable archives.
Something (like GitHub) that can be quick but is also perfectly serviceable for asynchronous communication really does have advantages, imho.
Mailing lists intimidate me but I haven't ever tried to communicate by one. IRC is probably fine.
I'll be honest though, I'm not going to submit a patch to a mailing list unless there are pretty clear and easy instructions. Forking a project and opening a pull request on whatever forge (like GitHub, GitLab, and others) is easy. I probably do it once every three months or so when I find a bug I know I can fix. Mailing lists are just enough trouble (with my current level of understanding) that I'm probably not going to do it.
I'll give an example. I found a bug in the JDK that was fixed in 17 but not in 11 and I was trying to figure out how to report it or backport it myself. It was crazy the amount of hoops I needed to jump through and I gave up. I'm not saying the project should be different so it fits my needs or anything, I'm just using this as an example of hurdles discouraging me from contributing. I think the vast majority of devs are probably at the same place and don't want to fool with mailing lists. (I'm not saying projects should stop using them.)
IRC is fine, so are mailing lists; I use both, plus various git forges, to contribute to open source projects.
IRC is still going strong on OFTC and Libera.chat
I get that the younger folks like discord, but seriously it's a proprietary mess that locks everything behind a wall and tries to extract payment from each and every user.
If you host thelounge using IRC is quite cool. As you get a better experience with backed up messages and stuff.
Lounge looks pretty cool
One issue with IRC is that there's no archiving by default. That means discussions and context for decisions are lost. This can be fixed, though. But the default setup for social chat isn't optimal for project planning.
That's where any sort of forum would work much better, in my opinion. Also, unlike mails with 8+ replies, it's much easier to follow and organize
These technologies, although archaic, clumsy and insecure, are not a fatal problem - these are still open and widely accessible anyway.
However, this case may indicate that the projects author is an autocratic hermit type, locked in a bubble with his ancient tech and not really welcoming outside contributors and bug reports, so these IRC and maillists come with worse things such as CVS, C89 code, build system handwritten in shell which only works on author's machine, and complete unwillingness to discuss, fix, modernize and make the software more portable, so not only contribution attempt would be a waste of time, but simply using such project could pose risks.
Of course that's not necessarily the case and it may be just good old IRC and maillists, and that should not be the problem for most people. For me personally though, for I contribute to hundreds of F/OSS projects, this is a show stopper, as I absolutely want to minimize routine tasks. One-two git
/gh
commands is what I'm used to, while installing extra software, going through registrations, copypasting patches, monitoring additional sites for feedback does not work. In the best case I would fire-and-forget, so if someone on some god forgotten self-hosted gitlab asks to fix a thing in my PR I will never see it. Or more likely, I would put such contributions into my contribution queue with lowest priority, and since the queue of what I want to improve is always growing and never shrinking, it effectively cancels them.
And I could add that you don't really need realtime communication channels to contribute - technical stuff may and should be discussed in async mode as in issue/PR comments (or email reply thread in the worst case), where unrelated discussions don't happen in parallel, message size is not limited, history is preserved, nobody is in rush to reply, you don't need to actively wait for reply and cannot miss it because you've disconnected, someone forgot to tag you or it was just list in the chat.
Summarizing, the project should be on [the most popular VCS hosting at the moment], which is currently GitHub, any other choice makes it much less accessible and welcoming. For chat use whatever you want, for it's not related to contributions. If you think otherwise, at least stick to open protocols.
These technologies, although archaic, clumsy and insecure
Like cars? Or phones? Those are also archaic, clumsy and insecure technologies.
I think it's super based. All these clowns talking about open source while using Discord and GitHub (yes, that's me included). You want to submit a bug report to Git itself? Well, you gotta send a bug report to the mailing list. Then some guy will be like "oh shit can you fix it also?" and I'm like "haha no" so the dude submits a fix himselg within 4 hours, and obtains the raging hard boner of internet developer clout
Great system, pgp keys are actually useful. And everyone knows you have to be at least an 8/10 in handsomeness to be running an IRC server. Also, Matrix is trash, I'm serious, modern IRC is cool
What do you dislike about Matrix?
Oh it's just an over complicated pile of low quality stuff. Still substantially behind XMPP, which was a fine solution. Somehow still behind IRCv3 in terms of raw usability and apps too. IRCv3 is a new spec that made a lot of improvements
I investigated all three in depth and decided IRCv3 is what I want to use for my server / apps. I even run a public web client that acts like Discord. IRC has the bigger communities still
If you really care about encryption, maybe there's a reason you'd do something different, but I just want private chat servers with good UX
Both are heavy targets of spamming and take considerable effort to maintain
I agree with those saying mailing lists are intimidating. I don't know if others are using dedicated tools or something but I find web based mailing list UIs just incomprehensibly bad and difficult to navigate.
Most web-based mailing list UIs are honestly incredibly bad, but you don’t need to use them, you can choose any email client you want.
The problem with mailing lists is that no mailing list provider ever supports "subscribe to this message tree".
As a result, either you get constant spam, or you don't get half the replies.
IRC and email work fine for me. Leagues better than having it locked away behind Discord's policies and whims.
An issue/patch tracker (and maybe a wiki) would be nice, but I don't feel they're necessary. The linux kernel manages without them, after all.
Personally I am comfortable with that as long as there is a public git repo. An issue tracker is the one thing I'd miss the most. I think how well this goes down will greatly depend on the project's target audience.
notmuch is a project that I follow closely and very occasionally contribute to that works this way.
It would have to be a pretty niche project with an involved and dedicated community to get away with that these days.
Yeah super niche projects like the Linux Kernel and Git
I think they meant new projects starting today, not currently existing ones.
I'm too ~~old~~ young to deal with this. Probably wouldn't contribute
This is ideal for me. I refuse to use Discord period and only use Slack only for direct client work (when they request that we use it.)
Mailing lists are great imho but I'm older than most people probably on these communities. So I'm very familiar with this.
I do think a ticket tracker is useful/required though.
I never really used IRC, but in my experience contributing to projects which use mailing lists is very easy - you just send a mail with some code.
Of course you could use git-send-email, and you could create diffs and patches, but I actually think for a new contributor the mailing list workflow is the simplest since it doesn’t actually require knowledge of the various tools experienced developers use.
I write this from personal experience BTW - the first projects I contributed to used mailing lists, which allowed me to contribute even as a self taught programmer who had no experience with any VCS yet.
I'm fine with IRC (actually prefer it as I use it all the time).
I agree with others that a mailing list is more intimidating and more of a hassle, but if there is a web archive, I can live with that. It wouldn't be my preference, but it wouldn't be an insurmountable barrier (I have contributed to Alpine Linux in the past via their mailing list workflow).
That's fine. They're both open protocols that let a project owner control all of their communication channels. That's a good thing.
Projects like that make me want to create a uucp network and so I can email a bang path address to get my patch.
Programming
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities !webdev@programming.dev