hi, I’ve started developing websites with rails about 3 months ago,
and now I need to work with for people at the same project.
How can I do that?
first, I can’t allow access of the entire code to everyone for security
purpose;
second, it seems to me that rails works in a very coupled way, I don’t
understand how I would be able to split the project in parts so I can
delegate one part to each member of the team.
if anyone can help me with any tips or website that explains how I can
work in groups I apreciate it.
work in groups I apreciate it.
At the risk of sounding unhelpful, start by finding people you trust.
If it’s write access that is problematic, you could have them work on
a fork of your project and pull changes from them when you’re happy
with them (similar to how a lot of open source projects work)
hi, I’ve started developing websites with rails about 3 months ago,
and now I need to work with for people at the same project.
How can I do that?
first, I can’t allow access of the entire code to everyone for security purpose;
second, it seems to me that rails works in a very coupled way, I don’t
understand how I would be able to split the project in parts so I can
delegate one part to each member of the team.
It is possible to break up a Rails app (e.g. push bits of functionality
out to gems/engines/etc.) but unless those bits of functionality are
genuinely self-contained and well-defined then it’s likely to be a
hassle, and/or you’ll end up having to do a bunch of speculative
architecture design up-front. I would seriously consider whether it is
worth this extra burden.
There was a similar thread on this topic a few months ago:
On Wed, Aug 17, 2011 at 2:58 PM, Frederick C. < [email protected]> wrote:
understand how I would be able to split the project in parts so I can
delegate one part to each member of the team.
if anyone can help me with any tips or website that explains how I can
work in groups I apreciate it.
At the risk of sounding unhelpful, start by finding people you trust.
If it’s write access that is problematic, you could have them work on
a fork of your project and pull changes from them when you’re happy
with them (similar to how a lot of open source projects work)
As well, even if you did give write access to the main repo, github
allows
you to easily see all changes made and you would have control to revert
anything which is ‘bad’. As well, I am sure you are – make sure
everyone is
writing tests and no commits are made if a test is not passing. I think
you
will have an easier way of keeping in sync this way, assuming the others
in
the group are committing (and needing to pull) regularly.
I think the idea of splitting a rails project is problematic from the
standpoint of dev’s being able to operate their environments as well as
to
regression test. I guess you could ask for classes and tests for them on
an
individual basis but that just seems impractical. End of day if you dont
have trust in your devs, maybe you need to find others, or revise your
policies… as well NDA’s are an option too if that is your concern.
Thank you everyone, and that link helped me with git.
Well, setting aside the code access concern, the other thing I wanted to
know is how to work in a team with rails, and I mean, how should I split
my
project?
For example, one member will do the Controllers, other will do the
Models,
other will do the Views, one for Mailers, and one for Tests.
That is probably a wrong example, so thats what I need to know, how to
explicitly split parts of my project for each one to work on. It seems
to me
that rails is like a one way straight coding, you can’t work on one part
of
the code without completing all the others that should come before.
I don’t know if I was very clear, so please give me some feedback if I
wasn’t. If I was, thought, please give me answers =)
Thank you guys.
Ps.: Ruby (or Rails) community is awesome, every single question I’ve
made
was answered.
Thank you everyone, and that link helped me with git.
Well, setting aside the code access concern, the other thing I wanted to
know is how to work in a team with rails, and I mean, how should I split my
project?
For example, one member will do the Controllers, other will do the Models,
other will do the Views, one for Mailers, and one for Tests.
That sounds really wrong to me. Splitting along vertical slices of
functionality is normally how I do things
On Thu, Aug 18, 2011 at 6:58 PM, Rodrigo R. [email protected]
wrote:
Well, setting aside the code access concern, the other thing I wanted to
know is how to work in a team with rails, and I mean, how should I split my
project?
Define the features you want to add to your project; give one to each
developer, who will then write the tests and write the code.
If you have a big enough or specialized enough team, you might have
someone working specifically on refining views/CSS/graphics.
Regardless, free and direct communication amongst the development
team members is absolutely critical.
On Fri, Aug 19, 2011 at 12:24 AM, Frederick C. < [email protected]> wrote:
For example, one member will do the Controllers, other will do the
Models,
other will do the Views, one for Mailers, and one for Tests.
That sounds really wrong to me. Splitting along vertical slices of
functionality is normally how I do things
Definitely a recipe for disaster. Rodrigo, you might want to look at
mountable engines here:
This is one way to partition application functionality, where you add
specific models + controllers + views as one mountable engine into a
gem,
which can be developed independently. So you could have one for
accounting,
one for sales management, one for production planning or whatever your
poison is. You might also want to look into SOD (service oriented
design),
there is a good book about it here: http://www.amazon.com/Service-Oriented-Design-Rails-Addison-Wesley-Professional/dp/0321659368
In any case, and please take don’t take that in a negative way: I think
you
are over-complicating things unnecessarily. Adding security requirements
in
a workflow is necessary when you work for the DoD, but in 99.9% of the
cases
it is just a huge waste of time and makes your project a magnitude
riskier.
Don’t worry about people stealing your code, worry about finding and
making
customers happy. It is much much harder than any coding you will ever
encounter in your life.
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.