I spent a lot of time and energy doing that years ago and don't want to do it anymore. Mailing lists suck because you're subscribed to a billion things you don't want to hear about. IRC...honestly...the world has just moved past it.
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
I’m sad the world moved past IRC. It was always chock full of tech geniuses and underground nerd shit. The normies can have discord
I’m still amazed that people consider proprietary app Discord the successor to IRC
I’m surprised discord is so commonly used with such a horribly unintuitive UX. I can’t recall all my problems with it, but I remember absolutely hating using it at first, as a person with early adopter tendencies.
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.)
To anyone interested, there is a comprehensive tutorial about how to use Git with email to contribute to projects like these.
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
I don't necessarily think this has anything to do with mails per se but with the way people use them, which nowadays is just top post all the things
This is not a problem inherent to mail though. If you look at some thread on Lemmy or reddit, you essentially see the same problem. A user posts a long text or comment and makes four, five points that would warrant addressing further. Ideally, you would craft four, five answers and post them as four, five replies, thus giving the discussion a nice structure. What happens instead is that people craft one long reply and keep the mud balling rolling.
Good communication is almost never a question of technology I'd argue.
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.
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.
I sort messages from mailing lists into different mail folders, and my client (Gnus) supports a threaded view of messages (and I can press ‘k’ on a message to mark the entire thread as read), so this isn’t a big issue for me.
If mailing lists had a view like reddit / lemmy / slashdot / hackernews, I might be more willing to use them, but that wouldn't solve contributions for me. I have no idea how to format emails to comment on code and then follow ensuing discussions. And how would CI work?
Email how to: https://useplaintext.email
Small change: git diff origin master > mycontribution.patch
and paste it into email body.
Big change: same as small, but add as attachment.
Subscribe to coreutils mailing list - low enough volume to not get overwhelmed and established enough to get a feel of the culture.
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.
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.
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
Both are heavy targets of spamming and take considerable effort to maintain
True for everything on the open internet though.
Case and point: https://social.anoxinon.de/@Codeberg/111080409541766357
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.
Indeed. I wonder if LinuxNet / #linux is still around, actually. That was interesting back in the day, and later meeting many of the characters at conferences and meetups. IRC was great. Patches by email, otoh... Good that it is possible, but PRs/MRs are nicer.
To be fair, at least the kernel is super niche in terms of development.
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.
Do you find mailing lists easier to use than pull requests / merge requests? And how do you find following a discussion in a mailing list?
For newer/inexperienced users mailing lists are definitely easier. Everyone can send an email.
I'm too ~~old~~ young to deal with this. Probably wouldn't contribute
Same. Presented with those options, I just don't contribute 🤷
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).
Would you be more or less willing to contribute code and participate in discussions if newer technologies were used?
I would be less willing to contribute/participate in discussions if newer platforms such as discord, slack, or matrix are used. Of those three, I would prefer discord, then slack, then matrix.
As it is, I only use Slack for work, and mostly avoid discord and matrix except for a few mostly dead channels/servers.
I understand that this is not the mainstream view and that most people prefer the newer platforms, but personally, I am not a fan of them nor do I use them.
Of those three, I would prefer discord, then slack, then matrix.
So #1 discord, #2 slack, and #3 matrix? Am I getting that right? Why that ranking?
It comes down to bridging. I use discord and slack via IRC bridges. I actually use slack a lot (for work), but primarily through irslackd. I do not use slack for anything outside of work and would prefer to keep it that way.
For discord, I primarily use it through bitlbee-discord. With this bridge/gateway, I can actually chat on different servers at the same time, so I wouldn't mind this for different communities if I had to.
Matrix is last because I don't really have a good briding solution for it and it just seems clunkier than the other two for me.
That's fine. They're both open protocols that let a project owner control all of their communication channels. That's a good thing.
I'm still trying to figure out github. I am at the beginning of my computer learning journey.