11 ms·
Anything is better then e-mail based systems. The discoverability, browsability, and useability of something with actual markup and design is infinitely better
by fake-name 10y ago
Anything is better then e-mail based systems.
The discoverability, browsability, and useability of something with actual markup and design is infinitely better then e-mail.
I've tried several times to make submissions to several e-mail based projects, never with any success. At the same time, I've had zero issues contributing to a dozen or so github hosted projects.
E-mail systems are a shitshow. First, you generally have to join a mailing list, which is regularly broken, or requires someone somewhere to manually acknowledge your membership. Then, you have to figure out how they want shit formatted, figure out how to generate a diff (I've been using SVN for 8+ years, git for ~3 years, and have never had to deal with diff files!), send an e-mail, find the mailing list shat itself and troubleshoot, try again, etc....
Basically, e-mail is the death of any sort of low-effort contribution. If you're starting a new project, and chose a mailing list, you're probably excluding a huge quantity of potential contributors.
If there's a project where I want to make a few-line change or minor enhancement, and it's on github, I'll generally PR it back into the original. If it's somewhere else, or requires another account, there's no way I'm going to spend the effort.
Plus, just reading mailing lists is a fucking disaster. Literally no mailing list host I know of lets you just view a complete topic thread in simple chronological order on ONE PAGE. They all operate on a per-message response-tree structure, so just reading the discussion is a huge pain in the ass.
E-mail is basically dying among younger people, including the ones that code, and with good reason. For actual forum-type discussions, it's a completely shit solution.
- ycmbntrthrwaway 10y ago> First, you generally have to join a mailing list, which is regularly broken, or requires someone somewhere to manually acknowledge your membership. You can usually just send your patch to mailing list without joining at all and you will be replied off the list. > Then, you have to figure out how they want shit formatted, figure out how to generate a diff (I've been using SVN for 8+ years, git for ~3 years, and have never had to deal with diff files!) Unbelievable. The only explanation I can find is that you avoided dealing with diffs and used SVN only on your workplace. > Plus, just reading mailing lists is a fucking disaster. Literally no mailing list host I know of lets you just view a complete topic thread in simple chronological order on ONE PAGE. Mailing lists are supposed to be read in your email client. If you want an archive, use NNTP archive like gmane.
- mememachine 10y agoWhy would anyone have to deal with diff files during regular usage?
- username223 10y agoLet's say I found a bug in some software I use, and tweaked a few lines to fix it. Now what do I do? (1) Mail a diff to the author. (2) Get an account on some random website, "fork" the code, make the tweak again, and "submit a pull request." I'll choose (1) every time, and will probably just shrug and move on if I'm forced to do (2). I've made a few throwaway GitHub accounts when I cared enough, but I usually don't bother.
- vopi181 10y agoI don't like the centralization around a proprietary software, but saying GitHub is a random site isn't fair. A lot of F/OSS people use it. Out of curiosity what happens when you want to submit say a picture to a repo?
- username223 10y agoI'm not a graphic designer, so I don't usually do that, but I'd probably email the author or development list. Projects with lots of binary files checked into version control are very different from source code, though, so I don't know how they normally operate.
- gkya 10y agoThat's what version control is about. Patches upon patches, since SCCS.
- fake-name 10y agoDiffs are an internal part of how VC works. There is literally no reason you would ever have to deal with them in their raw format.
- cyphar 10y ago> I've tried several times to make submissions to several e-mail based projects, never with any success. $ git send-email --to=<mailing list> <commit range to send> That was hard. > First, you generally have to join a mailing list, which is regularly broken, or requires someone somewhere to manually acknowledge your membership. Most public MLs that accept patches are Cc'd for posterity's sake, and thus generally don't require being a member to post. You will always get Cc'd to discussions (git send-email automatically adds you to the Cc list). > Then, you have to figure out how they want shit formatted, figure out how to generate a diff [...], send an e-mail, find the mailing list shat itself and troubleshoot, try again, etc.... See above. It's one command, or two (git format-patch + send-email) if you want to tweak the email. > (I've been using SVN for 8+ years, git for ~3 years, and have never had to deal with diff files!) I find this hard to believe. You've never hand-edited a diff file with `git add -p` or `git checkout -p` -- or even done a `git diff`, `git show` or `git log -p`? I did all of the above things just today, let alone in the past three years... > If it's somewhere else, or requires another account, there's no way I'm going to spend the effort. I'm going to be honest, as someone who maintains a project hosted on GitHub I don't like it when someone decides they'll "help out" by dropping three lines of code in a patch and disappearing off the face of the earth. If you're not bothered to follow up on your patch review, then you've just inflicted a net negative on the project. > Literally no mailing list host I know of lets you just view a complete topic thread in simple chronological order on ONE PAGE. But chronological order isn't what you want for ML threads. You want to read it as a tree, because that's how people use email... Patch review isn't like a YouTube comment thread.
- voltagex_ 10y ago> $ git send-email --to=<mailing list> <commit range to send> > That was hard. What does this do by default in Windows? In Linux, what if you don't have a local MTA installed/configured? I'd wager most GMail users aren't going to set up Mutt and an application specific password to make it all work.
- gkya 10y agoIf you don't have a local SMTP setup (MTA is sth else): obtain your patch from your VCS (e.g. git diff revs...), save it to a file, attach to the mail via your mail client.
- ycmbntrthrwaway 10y agoSome people hate web as much as you hate email. Email is ancient, web is bloated.
- mememachine 10y agoWeb is far more usable The big difference here is that you seem to hate web for what amounts to meaningless ideology, whereas people like me hate email for very practical reasons.
- ycmbntrthrwaway 10y agoI don't hate any and use both every day.
- jcranmer 10y agoThis is how you submit a patch to an email list: 1. Clone the repository locally 2. Make the fix 3. Run $VCS email --to=<list> 4. Done! This is how you submit a patch via github: 1. Clone the repository locally 2. Make the fix 3. Fork the repository on GitHub 4. Push your changes to your GitHub fork 5. Go through several screens to make a pull request on GitHub. (This is assuming you have a GitHub account. If you don't have one, or if you don't know its UI well, insert several more steps in the middle.) For a casual contributor, sending a patch via email is quite easier than doing it in the web. There are of course downsides to both approaches, but please don't pretend that there are no reasonable objections to web UIs.
- mememachine 10y agoThats actually a good point
- ufmace 10y agoExactly how does it know how to send email from the command line? I'm using gmail. Am I supposed to figure out how to configure gmail for SMTP, put the server and creds in a config file somewhere, and hope I don't bump up against any ISP firewalls or Google security tricks? Or see Manishearth's comment above. Meanwhile, you may have to create a Github account and fork the repo for PRs, but I don't see any way for that to not be trivial. Yeah, you gotta know Git, but at least Github has nice easy buttons to guide you through doing things.