snowdriftcoop / snowdrift

Infrastructure for Snowdrift.coop. This is a MIRROR of https://gitlab.com/snowdrift/snowdrift. Your issue reports and merge requests are welcome, but they will be moved to gitlab.com. You are encouraged to start there instead!
https://snowdrift.coop
GNU Affero General Public License v3.0
92 stars 36 forks source link

Rewrite "Changing the code" section of GUIDE.md #296

Closed pharpend closed 9 years ago

pharpend commented 9 years ago

Instead of the complicated nonsense involving rebasing, it just says something to the effect of "you can change the code, but you probably shouldn't change the master branch".

wolftune commented 9 years ago

I don't like this change. It doesn't address the concern of actually instructing new contributors on how to make contributions. It just turns it into "This GUIDE assumes you are experienced contributing to projects like this." And leaves anyone else with nothing.

The real goal is to clarify that advanced users may adapt each case appropriately, but here ABC is the smallest complete instructions for contributing for someone who wants the absolute minimum path to doing this correctly without learning a bunch of prereqs.

pharpend commented 9 years ago

@wolftune I don't really think that's attainable, given how complicated Yesod is. To make even the most trivial change to the non-documentation portions of the code requires a somewhat deep knowledge of Yesod. Hell, installing Yesod requires a fair amount of computer skill.

I'm not saying that your goal isn't a good idea. I would be happy to write a long drawn-out tutorial on contributing to Snowdrift. The issue is, it would have to be a long drawn-out tutorial, because there is a bunch of prerequisite knowledge.

smallest complete instructions for contributing for someone who wants the absolute minimum path to doing this correctly without learning a bunch of prereqs.

I don't think that this is the place for that, then, just because there's a lot of ground to cover. A wiki page, or a tutorial hosted on a dedicated site would be a good idea.

I'd be happy to write this tutorial, it would just take some time.

wolftune commented 9 years ago

@pharpend I didn't understand anything about Yesod when I started contributing to this project. I didn't know what Haskell was. And I'd never used Git. I did a lot of work on Hamlet files and a small amount of work on Cassius files.

The GUIDE.md as is (without removing the instructions about git) are adequate for someone like me to install and start looking at and hacking on things in a basic way. I don't have to understand what rebase does really or anything else. My previous less-knowledgeable self just needed to know what set of commands will get me to where I successfully shared my new hamlet updates.

To be clear, the rebase-focused instructions were my interpretation of Bryan (chreekat) explaining his preferred process. I don't care about keeping those exact instructions. I just care about keeping some instruction that says "do ABC" and you'll have shared your changes.