rikai / Showbot

🤖 An omnipresent multi-platform bot who's goal in life is become Skynet 🤖
MIT License
40 stars 18 forks source link

Add a CONTRIBUTING.md #30

Closed cbojar closed 9 years ago

cbojar commented 9 years ago

A CONTRIBUTING.md doc will streamline the process for others trying to jump into JBot development. We can explain the basics (like where to branch from, master or devel?, how to get a basic setup, coding standards, etc.) and hopefully that will help get us more contributions.

cbojar commented 9 years ago

How does this look?: rikai/FEATURE/contributing-doc

cc: @rikai

rikai commented 9 years ago

Other than the fact that I barely follow the code convention myself? :P

Lets see... I don't see why we need a separate branch to branch from, people should just develop against the development branch, or, if it's a big feature we want to keep separate from the development branch, we'll break that out itself.

Other than that, i i don't remember needing to install any development packages. Just whatever database software i needed to use. I would suggest that we suggest installing databases by name, rather than specific packages.

I'd also suggest the use of RVM rather than plain ruby, as it makes development a lot easier. We also dont need to mention rake as handling of that is done by bundler, iirc.

cbojar commented 9 years ago

So then, re: branches, we want them to branch off of devel or are you eventually planning on merging it with master and using that as the main development branch?

Re: packages, those are what I needed to install to get it to bundle/run on an Ubuntu 14.10 system.

I think rake is included with Ruby, so I can drop that, and change out Ruby for RVM.

rikai commented 9 years ago

You'll still want to leave ruby in there, since you'll have to install ruby inside of RVM, it just makes it more... contained and easier to run multiple ruby versions simeltaneously.

devel and master will always be branches. When i feel it is appropriate, i will sync devel with master, but development will still happen on the development branch.

I realize those are the specifc packages you needed to install, but i'd like to keep it more generalized, so naming specific packages for specific system setups is not something i really want to do. Really, if someone can't figure out what packages need to be installed to develop when we give them the general packages needed (sqlite, mysql, etc) then i'm not very confident in their ability to contribute. :P

cbojar commented 9 years ago

Ok then, I'll make the changes.