I have a personal business and I want to get a Doctoral degree at a University, in the near future.
I want to know licence about R packages and their copyrights (intellectual property restrictions).
For example, one Professor makes R's packages and I want to use it to make my conduct research for my dissertation. and for business.
Would you tell me license that about the copyrights of R's packages? I can use that packages under free and unlimited?
I have been seeking about this problem but I cannot find answer.
My english is not good but I want to know about this problem,
And you can understand my simple question I think, beside my low english skill...
Could you tell me about R's packages copyright and thats reason?
There are 3 related, but different, concepts in your question:
Usage - free and unlimited vs paid or limited
Copyright - do they allow you to use their code and/or limit reproduction? A similar concept is License which is much more common and relevant that copyright in the context of R libraries.
Citation - should you cite the package in your paper and how to cite it
The vast majority of R packages (a.k.a. "libraries") offer free and unlimited usage. A small minority of libraries are wrappers of "freemium" or paid services, which I will mention later below.
It is more of a matter of proper citation than copyright. You should cite your libraries in your dissertation or thesis paper and other published work.
Citing packages is quite common. You can find a variety of resources on the Internet and you can look at published papers as good examples (via Google Scholar, your library, etc).
Often times the packages' documentation tells you how they'd like you to cite their library, which you can view in a viewer or on the command like (e.g. citation(package = "milleR").
For example:
citation(package = "caret")
To cite package ‘caret’ in publications use:
Max Kuhn. Contributions from Jed Wing, Steve Weston, Andre Williams, Chris Keefer, Allan Engelhardt, Tony Cooper, Zachary Mayer, Brenton Kenkel,
the R Core Team, Michael Benesty, Reynald Lescarbeau, Andrew Ziem, Luca Scrucca, Yuan Tang, Can Candan and Tyler Hunt. (2018). caret:
Classification and Regression Training. R package version 6.0-79. https://CRAN.R-project.org/package=caret
A BibTeX entry for LaTeX users is
#Manual{,
title = {caret: Classification and Regression Training},
author = {Max Kuhn. Contributions from Jed Wing and Steve Weston and Andre Williams and Chris Keefer and Allan Engelhardt and Tony Cooper and Zachary Mayer and Brenton Kenkel and the R Core Team and Michael Benesty and Reynald Lescarbeau and Andrew Ziem and Luca Scrucca and Yuan Tang and Can Candan and Tyler Hunt.},
year = {2018},
note = {R package version 6.0-79},
url = {https://CRAN.R-project.org/package=caret},
}
ATTENTION: This citation information has been auto-generated from the package DESCRIPTION file and may need manual editing, see ‘help("citation")’.
While it might technically possible to copyright libraries, R is an "open" community in that the language is not only open source, but the vast majority of libraries and tools fall under some sort of open philosophy license like Apache, GNU, MIT, etc. The exceptions are rare and the companies behind any copyrighted packages with any special usage restrictions will probably make it quite clear.
I actually tried to find an example of a truly copyrighted R package. I was going to use one by Revolution Analytics, but from what I can see even theirs is just under Apache 2.0 license. An example from #jordan is one called highcharter which says:
The libraries are available under different licenses depending on
whether it is intended for commercial/government use, or for a
personal or non-profit project.
That would be a case where you'd have to have an appropriate license for the version of the software in question. Though even that package itself isn't technically copyrighted (they use licenses rather than copyrights to limit usage).
As a licensed user you could still probably use and cite the package, but that can be limited or eliminated by the specific license type/wording.
Further, note that just because something is copyrighted doesn't necessarily mean that you can't use it (within the prescribed scope of use) and cite it.
In summary, yes you can use 99.99% of R packages as you said - free and unlimited. The exceptions are extremely rare and even in those very rare cases you can usually still use and cite the libraries as long as you obey the license.
Packages that provide access to external API's, like Google Maps (gmaps) may sell access to their API's by volume. For instance, Google offers free API access for light usage, but for large numbers and frequent requests you must open a billing account.
This goes beyond just copyright or even citation requirements. In order to determine whether you can use the software for your purpose you need to get the license, read the restrictions, and determine whether you are willing to accept them.
For example, some open source projects are licensed with "copy-left" rules. A copyleft license requires that any derivative software MUST also be open source. This may or may not be a problem depending on your business model.
See: https://opensource.org/licenses
Additionally, you need to be aware of the rules that your University places on work you create related to your schooling. The contract at many schools states that any work you produce as part of your program is the property of the University. If you look up these rules in advance you may be able to negotiate with the University and get a written contract releasing you from the generic school policies. Some schools do not attempt to own your University project work.
Related
While OpenFOAM 10 (release date July 2022) is located on OpenFOAM.org and GitHub,
OpenFOAM® v2212 (published December 2022) is from OpenFOAM.com and on GitLab.
Both versions sharing an unofficial Wikipedia representation on Unofficial OpenFOAM wiki.
Is there a difference on results from each versions implemented solvers running and if so, what are tasks for providing compatibility between these newest release versions (also considering source included tutorials)?
This is an age old question (openfoam.org vs openfoam.com). The direct answer can be found in the links below.
https://www.cfd-online.com/Forums/openfoam/197150-openfoam-com-versus-openfoam-org-version-use.html
https://www.reddit.com/r/OpenFOAM/comments/o6spq5/openfoamorg_versus_openfoamcom/
Basically, both are two forks of the same software, with some code added or removed. Community contribution is higher in OpenFOAM.org's version and some advanced solvers are added in OpenFOAM.com's version.
They are very similar in most aspects and differ only in very advanced solvers / simulations. By the time people start to understand those differences, they can choose the version for themselves.
Also, note that ESI-OpenFOAM can and will contain code from OpenFOAM.org, but not the other way around. The code added in ESI-OpenFOAM stays only there. It is one of the reasons it is used more in industries.
For basic usage or learning, both versions are nearly equal. I generally stick with the OpenFOAM.org's version as it is used in more academia (from personal experiences) and it is more accessible (the documentation and tutorials) (personal opinion).
To find what exact code differs for both versions, we have to see the commit history and examine solvers manually. I'll keep on adding to this answer as I find more stuff (asking friends and professors).
I've written a technical book using Bookdown, which is hosted on GitHub and is open access. As an academic, I'd like people to be able to cite the book, and normally that would be done with an ISBN and DOI. However, I'm not sure what is the best way to get hold of these.
Could anyone tell me the best way to go about this? I am not looking for any royalties, and the book will likely be updated every now and then, so I don't see much point in using a self-publishing service like Amazon, or going through a classical publisher like Springer, CRC, etc.
My ideal end scenario would be just to have the book open access online, but so that it can be cited (I mean properly cited, ideally with ISBN and/or DOI). Any ideas?
p.s. apologies if Stack Overflow is not the place for asking this, not sure where else to ask.
Getting a ISBN costs money, and I do not think it will work well for free online only books. However, getting a DOI is free and easy either by publishing the book as a pre-print on arxiv without peer review, or using zenodo. You can even automatically generate new DOIs for newer versions with GitHub actions.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 1 year ago.
Improve this question
If someone has provided a useful block of code to an R library, what is the appropriate role for them in package documentation?
Why it matters
I have seen contributor role given to such cases, but after reviewing the definitions of author and contributor, I believe author is the appropriate role. But there may be something else more appropriate (or perhaps both author/contributor)
What library of congress says
Author:
A person, family, or organization responsible for creating a work that is primarily textual in content, regardless of media type (e.g., printed text, spoken word, electronic text, tactile text) or genre (e.g., poems, novels, screenplays, blogs). Use also for persons, etc., creating a new work by paraphrasing, rewriting, or adapting works by another creator such that the modification has substantially changed the nature and content of the original or changed the medium of expression
Contributor:
A person, family or organization responsible for making contributions to the resource. This includes those whose work has been contributed to a larger work, such as an anthology, serial publication, or other compilation of individual works. If a more specific role is available, prefer that, e.g. editor, compiler, illustrator
Possible points of confusion
When a pull request is accepted, github will refer to the creator of the PR as a 'contributor'
In day-to-day conversation, someone who provides useful input into a project could reasonably be called a 'contributor'
As pointed out in previous answers, the idea was to distinguish how substantial the different code contributions are. The manual page ?person explains:
The new scheme also adds the possibility of specifying roles
based on a subset of the MARC Code List for Relators (URL:
https://www.loc.gov/marc/relators/relaterm.html). When giving
the roles of persons in the context of authoring R packages, the
following usage is suggested.
"aut" (Author) Use for full authors who have made substantial
contributions to the package and should show up in the package citation.
"cre" (Creator) Use for the package maintainer.
"ctb" (Contributor) Use for authors who have made smaller
contributions (such as code patches etc.) but should not show
up in the package citation.
Suggestions for the usage of further roles in the context of R packages are also provided there ("com", "cph", "ctr", "dtc", "fnd", "rev", "ths", "trl"). The citation mentioned above is the "default" or "auto" citation that you get from citation("foo") if package "foo" has no dedicated CITATION file. If it has you can still get the default by citation("foo", auto = TRUE). See ?citation for more details.
Coming back to the question of "author" vs. "contributor": When we wrote the documentation above (and the accompanying paper by Hornik et al. in The R Journal) we deliberately just gave rough guidelines because the ultimate decision what is "substantial enough" needs to be made by the package authors themselves. This is not unsimilar to the decision who to include in the author list of a scientific paper vs. mentioning in the acknowledgments - for which the practices also vary a lot across disciplines/communities.
A strategy that is not uncommon is to distinguish three levels of contribution:
Those who made very small contributions (like small fixes or improvements) are not listed in the DESCRIPTION but acknowledged in the NEWS or Changelog. This applies to many small contributions made through bug/issue trackers or small pull requests on GitHub or similar platforms.
Those who provided larger patches, small helper functions, additions for specific cases, etc. who should be listed in the DESCRIPTION as "conributors" (ctb). This also applies to the case where code parts are copied from other packages or other sources.
Those who made larger and/or continuing contributions that are substantial enough to be listed as "authors" (aut) in the DESCRIPTION and the package's default/auto citation.
Reference: Hornik K, Murdoch D, Zeileis A (2012). "Who Did What? The Roles of R Package Authors and How to Refer to Them." The R Journal, 4(1), 64-69. doi:10.32614/RJ-2012-009
I think this is a really interesting question and I wondered about this before.
Unfortunately, I don't think the two definitions you provide are as clear as you think. One problem is that based on how you read them, you could argue that both author and contributor are correct labels for someone writing code in a package. Just look at what an R package is in the categories used in the definitions:
You could either see a package as "work that is primarily textual in content, regardless of media type"---in which case someone writing on it would be an author---or "compilation of individual works"---in which case someone who added an individual work, such as a function, would be a contributor.
In the book "R packages" by Hadley Wickham, the section about the author has to say the following:
cre: the creator or maintainer, the person you should bother if you
have problems.
aut: authors, those who have made significant contributions to the
package.
ctb: contributors, those who have made smaller contributions, like
patches.
(The original source of this seems to be this article: Hornik, Murdoch and Zeileis (2012))
Using the size of the contribution to determine if someone is an author or a contributor seems like a good way of dealing with the distinction.
Leaves the problem what a substantial contribution is. Ultimately I think that this has to be negotiated between the authors and contributors. Ideally, there is a guideline established by the creator/maintainer or the issue is discussed before a possible PR.
A rule of thumb I hereby propose is to ask if the core functions of the package would exist without the contribution of one person. If the answer is "no" then this person is an author. If the answer is "yes, but they wouldn't work as well" I think this person should be a contributor.
I am working on a project where I am fetching bulk data from Bloomberg, such as the stock of the 1000 highest valued US companies, and then computing summary statistics on them.
I would like to use R for the procedure and I am wondering which package is would suit the task better, RBloomberg or Rblpapi.
This is what I think are the pros and cons of the packages:
RBloomberg
Has good Manual from 2010 and more SO questions
+May be more stable since it's been around for longer
May not work on new version of R, Requires Java
Will likely not receive new functions and support
Rblpapi
Faster, does not require Java
Will likely receive new functions
If the package is updated significantly, I may have to rewrite my code
In addition, is the functionality of the two packages equivalent?
Thank you for your input.
These opinion based questions are not always the best fit for Stack Overflow but this may help you:
1) This debate may be of use with Whit one of the writers of Rblpapi in 2014 saying go with Rbbg until the functionality is more developed.
2) #Dirk Eddelbuettel write-up explains the history of these packages. Dirk explains how the collaborators are linked from Dirk to Ana to John to Whit. So there is a lot of idea sharing between the two packages.
3) Only the binaries not source is available from which can be a problem for non-Windows users. (please see #GSee comments) Also packages like packrat for sandboxing do not like the lack of src files for Rbbg. (Others might comment on a workaround for this.)
Disclaimer: I do not use Rblpapi yet so I cannot judge it.
I'm a totally blind individual who would like to learn more of the theory aspect of computer science. I've had an intro data structures class and the general intro programming but would like to learn more on things such as software design, advanced data structures, and compiler design. I want to do this as a self study course not as part of college classes.
Unfortunately there aren’t many text books available on computer science from Recordings for the Blind and Dyslexic where I normally get my textbooks. I would appreciate any electronic resources preferably free that could help me get more of a computer science education rather then the newest language or platform that a lot of programming sites appear to focus on.
You might find the Experiences of a Blind Computer Scientist a good read.
MIT's Open Courseware would be a good resource for you with the amount of videos/audio they have.
Really though, for the core computer-science topics I find it pretty hard to beat some of the better textbooks out there. Some offer digital versions of their book with purchase and some don't. For those that don't, I would just purchase the book and then download via a torrent site a digital e-book equivelant. Since you already own the book I don't think this would be a major problem.
UC Berkley has a couple of computer science courses online for free as mp3 and video files (including RSS feed for each course). And if reading PDF files aren't an issue you could check out O'Reilly's Safari.
The text book for Structure and Interpretation of Computer Programs appears to be accessible. Software engineering radio is a good podcast that I listen to but recently has focused a lot on model driven development and UML which doesn't interest me. The UC Berkley
lectures are of varying quality, it's like all other college classes it depends on the professor. I've found I can follow along with the cs162 lectures fine but not so much with the cs61b. Part of this is because of the professor and part is probably because 61b is more math heavy since it's a data structures class. Unfortunately the RSS feeds are useless since the file names are meaningless. I used my podcatcher to download the entire lecture series, then used the converting capability of foobar 2000 to rename the files with there track number so I could listen to them in order. I've used Safari at work before and it is accessible although to expensive for me to get a yearly subscription. Open Courseware appears to have a lot of good stuff. Unfortunately I don't use itunes so instead of downloading each mp3 file individually I used the firefox extension DownThemAll! with a custom filter to grab all the mp3 files at once from the specific course I wanted. Another series of books that looks useful are the data structures books by Bruno R. Preiss several of which are available online at
http://www.brpreiss.com/books/opus5/
Some of the equations are represented as graphics but I can often tell what the general idea is by context.
I wonder would the Structure and Interpretation of Computer Programs video lectures by Hal Abelson and Gerald Jay Sussman be of any use?
If the audio content is enough on its own without the video, they are an excellent digital resource.
The podcast "software engineering radio" is excellent. Though not CS courseware, it is the most academic and intellectually stimulating podcast I have found about software development and computer science.
http://www.se-radio.net/
personally I am just blown away by the questioner. I mean, the challenge alone of programming is too much for most people but being without the primary sense used in the task is amazing to me. What is ironic though is I bet that given this challenge the questioner is still FAR more adept at most CS tasks than the people I work with day to day. Just saying.
I'm also a totally blind programmer, currently working for Microsoft. The most valuable resource for te technical books is Safari (safari.oreilly.com). You can read thousands of computer science texts there. if you're in the USA, you can also get many of those titles for free from BookShare (www.bookshare.org). In both cases graphical images will be an issue, but there's no easy solution for that. Most good books have enough descriptive text that one can manage without the diagrams.
I to am a new blind programmer! I only lost my vision 5 years ago. Anyway, I have been programming in Visual Basic 2008 throughout the past year. It turned out to be more accessible than I had at first suspected.
I start a Java class next semester and the required text is a free online text! It is posted below.
Introduction to Programming Using Java, Fifth Edition
http://math.hws.edu/javanotes/
Can some of you seasoned blind programmers share with us any blogs or websites where other blind programmers can be found??
Check out this Stack Overflow question about podcasts.
A language called Quorum is a lot like Python but optimized across a few more syntactic details, and the corresponding development environment is designed with the blind in mind. https://quorumlanguage.com/ This might fit especially well with the use case where most students are using Python.
A 2016 blog about CSed (actually a response to a blog post) points to
program-l discussion board for blind programmers at https://www.freelists.org/list/program-l
The EPIQ conference for blind and other programmers interested in Quorum
https://quorumlanguage.com/epiq.html
Also, see other ideas in a similar question on another SO site: https://cseducators.stackexchange.com/questions/3441/teaching-a-blind-high-school-student