Developer Community Kickoff - Project Management Decisions
jkxyz_ last edited by
Regarding the licensing, it's fairly standard for a lot of large open source projects to have contributors sign an agreement before submitting patches, handing over copyrights to the collective "Developers of X" so that the license is still valid. I'm more than happy to sign such an agreement to give you rights to any code I submit. You probably just want an "All rights reserved" license, to prevent those with access to the code from re-distributing in a "modified" form for free.
Re: source control: GitHub is expensive for organisations but would be nice. Maybe BitBucket or GitLab?
PatchworkKnight last edited by
@jkxyz, while I have personally used bitbucket for 90+% of my own projects, I don't think it would be a good fit for this use case. Bitbucket and gitlab's pricing scales with users, whereas github's pricing is per-repo. Given that we'll have many users (team+all of us free labor folk), but few repos (most likely just one), I think github is the clear winner.
Albloutant last edited by
i'm not 100% familiar with GitHub, but lets say we use GitHub as the source control. Would the "issues" tab not be suffice for tracking bugs? If not, is there a way to tie that into Jira (i'm pretty sure there's a plugin for GitHub in Jira?)
Excuse my ignorance
I've always preferred Jira for project planning and Bug tracking. Though jira is expensive I don't know if you would get a open source license for the project. But you probably know more about that.
I love both Github and bitbucket, Github charge for repos and bitbucket charge for users, so probably github. But most games companies use perforce for its ability to deal with binary file. so you would need you own server for this, and its also expensive, infact more than i paid for the dev package per user.
I think the cheapest would be trello for tasks, mantis for bugs, Gitlab for source, skype and google docs for management and chat. And a file server for assests. I think the only cost would be the servers.
Yeah we could host something ourselves, might by ideal if we want to scale to many users. Perforce is free to some number of users right? Would be harder to scale that one, unless they had some kind of open source special mode (probably not).
Using SVN right now which lets us keep our code and art assets in the same tree, separating them out would be a hassle, the way Unity intermingles them, though maybe there are some standard solutions for that?
Has anyone used Slack? Wonder if that would be a good fit.
g1franc last edited by
Hi all, I personnaly think that GIT is more appropriate than SVN for such kind of external/shared project.
That aside, GitHub is cool (and also the bug tracker with pull request link) but maybe a Jira would be more appropriate due to attachement functionnality.
Regarding licencing, as someone exposed, having a contributor agreement to sign is a common way to do but feel free to propose any way.
I still deligth to contribute to this wonderfull project.
Scots last edited by
I haven't used slack extensively but maybe a good way to aid communication between the dev team & community. Pretty much similar to slack from what I can gather but for a communication solution, hipchat may be a better fit integration wise with Jira and/or bitbucket since it's from the same company.
jkxyz_ last edited by
My biggest concern for you guys is how this will work from a management point of view. Any comments on that @JohnK ? If there's lots of contributions, someone needs to manage the codebase and make sure that feature trackers get updated.
From a technical point of view, that makes BitBucket + Jira an excellent choice given that they integrate well. Slack is also great for remote teams from what I hear.
For large assets, Git has lots of options. There's git-annex, which is a plugin which lets you store large files separately on a file server, but they can be checked out with the repository. Or new versions of Git have Large File Storage (LFS) built in, which I think does something similar. LFS has beta integration with GitHub but it's more expensive than just setting up an S3 bucket.
eat_those_lemons last edited by
I am not quite sure exactly what you would like to open source but I would put my vote for an MIT license, as it would allow for the most people to work and leverage the work that happens. The main thing would to just not use a GNU license if we could, would be my recommendation. I also second the opinion of the contributor agreement, and if there is one I would definitely recommend adding a section about compensation like compensation is not guaranteed or whatever you would like.
I would like to make a vote for gitlab and hosting it ourselves, by using the community edition:
Haven't used slack, but it looks ok, it's also free for unlimited users and unlimited which is always good. If it doesn't work it can always be changed.
Perforce does lot like they do a free version for up to 20 users. But will that be enough? I currently use SVN at work, its simple and it works.
Albloutant last edited by
If they are using SVN right now, is it worth the time/effort to transition this to git? I understand the benefits of git, just concerned if this would just cause more bad than good.
SVN has worked well for us so far, but transitioning to something open source, with the potential to accept outside contributions, I think we need something more sophisticated, that handles branching well. Basically source control where we can have full control over what goes into the main branch, but users can create side branches and mess around all they want. If something has unlimited users thats going to be better, so we can scale up a lot of users if we want.
Github with large file storage sounds pretty cool, wonder if it's stable enough to use/cheap enough?
one other thing have you thought about where you would store documentation?
Good point, probably keep using Google Docs, and just share it to the community
eat_those_lemons last edited by
Also will documentation be made by hand or will some of the documentation (see the python documentation for a great example) be generated from the doc strings? If so what program will we use to generate the documentation? (ie what syntax needs to be done to the docstrings to make it readable by the program?) and will we also want basic user documentation made? or just a wiki that the community contributes to to give a basic user guide?
Also if we use the gitlab community edition and host it ourselves then it is completely free for however we want to use it ("completely free and open source (MIT Expat license)" from the gitlab community page) I don't know if we have the resources to host one though, for that github might be nice since they will potentially allow for more users.
Source control: GitHub probably? - <b>Love Github. :D</b>
Bug database: Jira? - <b>I am familiar with Jira so i would be fine with this.</b>
Project planning: Trello - <b>Pretty common now and days, and for good reason it works.</b>
Chat and project management: Slack? - <b>Love Slack, i switched our entire company to it when i got hired as IT Director.</b>
As far as a depot, you could easily set up a server with OwnCloud installed (free) and then use WEBDAV to connect the "remote hard drive" to your computer. It's one option.
What someone said above, Gitlab works well, i have used it in projects before it can be a stickler some times with configuration but nothing extreme. But github repo's can be private as well, but it cost per user slot i thought.
P.S - Afaik.. Slack requires company e-mail addresses, you can allow multiple domain e-mail addresses however to sign up (i run 4 community sites, so i generate e-mails from all 4) but i have never tried with a common domain such as gmail.
I have used all of these technologies plus several other kinds (as im sure people above have to) so if you are looking for something specific in any of these that would be the question to ask. But no matter what, Git (Community edition or normal) is a personal preference for code repo.
Scots last edited by
<blockquote>P.S - Afaik.. Slack requires company e-mail addresses, you can allow multiple domain e-mail addresses however to sign up (i run 4 community sites, so i generate e-mails from all 4) but i have never tried with a common domain such as gmail.</blockquote>
From my understanding, an invite can be sent out by the dev team to enable backers to sign up via their own email addresses.
Well that would be good, as i said i have never tried it with common e-mail domain addresses. Hopefully it works fine bc i love slack plus then i can be in the slack dev chat at work and no one would know! >;D
Stephen last edited by
I've used Jira professionally for a few years now, and it's okay for development tracking, but not ideal. It works better for bug tracking, but I wouldn't strongly recommend it, as it's quite expensive and the UI is getting pretty old. It doesn't play as nicely with other tools as some other options.
On the other hand, GitHub has always worked perfectly for me, either directly or via Xcode.
I give Slack a +1.
Well he said he wanted to use it as the bug DB and Trello for project planning. But you are right about the expensive part. There are not to-to many bug tracking options out there however.. (that are worth the time or good). But i can put together a short list of options i am familiar with i guess!
Aside from <a href="https://www.atlassian.com/software/jira">Jira</a> we have...
<a href="https://www.jetbrains.com/youtrack/">YouTrack</a>: Which is awesome, and i have used them before but unless you are open source/learning project on the free edition the cost is some-what prohibitive... >->
<a href="https://www.mantisbt.org/">Mantis</a>: Is a common, free option among many projects i have worked on. It doesn't look very pretty.. but the functionality is there and works fine plus you can self host it.
<a href="https://www.bugzilla.org/">BugZilla</a>: Used by FireFox makers (Mozilla) for their products. The fuctionality works well, it is free and can be self-hosted. But again if aesthetics matter its just ok in that department.
<a href="https://www.zoho.com/bugtracker/">Bug Tracker</a>: Made by ZoHo it is actually not that bad, its fairly feature filled and has github integration built in which is nice. It looks nice as well however there is not a self-host option only remote hosting on their system. I will say however, their pricing plan is nice because you pay based on how many projects, not users. You can have unlimited users. I haven't used this Zoho product before but have used some of their others, their service has always been stable for me.
<a href="http://www.thebuggenie.com/">The Bug Genie</a>: Has a self-host or cloud host option, you can but a one time license for the self host. The pricing really isn't terrible considering they have a one time license unlimited user option. I haven't used them personally before but they do have GitHub integration among other things. And they claim to be aesthetically pleasing.
This is a short list and hopefully it is useful; it could be expanded upon but a lot of the others are prohibitively expensive, doesn't work for what this type of project is, or has been abandoned.