Dear all, my colleagues and I have to write some R code for some of our projects. I would like to ask you help to organize us a little. a. Do you know if there is any system that can convert our R scripts to html pages with some nice dependency graphs (which functions calls which). b. Could you please suggest me an easy way to exchange the R code with my colleagues. I know about these version systems but unfortunately they look pretty bizarre to me. I would like to thank you in advance for your help Best Regards Alex
Alex writes:> Dear all, > ... > a. Do you know if there is any system that can convert our R scripts > to html pages with some nice dependency graphs (which functions callswhich).> > b. Could you please suggest me an easy way to exchange the R code > with my colleagues. I know about these version systems but > unfortunately they look pretty bizarre to me.We're in the same boat, and have been for a few years. Version control software can be complicated to use for distributed projects, but for small ones (less than 20 people in 6 different timezones, no need to reconcile lots of branches, etc) the advice I've read is to just pick one and go with it, ignoring most of the bells & whistles until you need them. We expect to use git as soon as it gets through the bureaucracy here. We've also found unit testing invaluable to our development, so get and use the RUnit package. Regular use insures our code runs the way we expect and the way the customer expects, even after multiple edits and across R updates. I've yet to find a way to integrate it into Eclipse, but it's still a fundamental part of our development. Good luck finding a dependency checker; I'm sure one or more are out there. cur -- Curt Seeliger, Data Ranger Raytheon Information Services - Contractor to ORD seeliger.curt@epa.gov 541/754-4638 [[alternative HTML version deleted]]
a. Check out Roxygen. b. Use version control. You will not regret it. Thanks, Dale Smith, Ph.D. Senior Financial Quantitative Analyst Risk & Compliance Fiserv. 107 Technology Park Norcross, GA 30092 Direct NYC: 212-419-3242 Mail: dale.smith at fiserv.com www.fiserv.com -----Original Message----- From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On Behalf Of Alaios Sent: Tuesday, April 19, 2011 1:20 PM To: R-help at r-project.org Subject: [R] How to program with colleagues Dear all, my colleagues and I have to write some R code for some of our projects. I would like to ask you help to organize us a little. a. Do you know if there is any system that can convert our R scripts to html pages with some nice dependency graphs (which functions calls which). b. Could you please suggest me an easy way to exchange the R code with my colleagues. I know about these version systems but unfortunately they look pretty bizarre to me. I would like to thank you in advance for your help Best Regards Alex ______________________________________________ R-help at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.
On Tue, Apr 19, 2011 at 6:20 PM, Alaios <alaios at yahoo.com> wrote:> b. Could you please suggest me an easy way to exchange the R code with my colleagues. I know about these version systems but unfortunately they look pretty bizarre to me.Nothing looks more bizarre than a project that isn't using version control. You end up with files like 'modelfit-daves-version.R', 'workedOnThursday.R', and 'daves-version-worked-on-Thrusday-0022.R'. Use Mercurial ("hg"), and force the team to use it. Only through force will the team realise it is a Good Thing. You can get private hosting for Mercurial on BitBucket for a small number of people/projects. If your code is open you can have as many projects as you like. Or you can pay for hosting. You may also want to decide on coding style (so that Fred isn't continually re-indenting Dave's code with three spaces instead of four). If you are developing a package the most of the directory structure is decided for you, but you might also want to use Roxygen for documentation. The important thing is to get it right at the start, since it can be a pain to implement many best practices after the team has been doing it wrong for a while. And obviously +1 for writing tests, and use git if anyone prefers it to hg. Barry