ropensci-archive / wishlist

:no_entry: ARCHIVED :no_entry:
https://discuss.ropensci.org/c/wishlist/6
50 stars 4 forks source link

wishlist: The thanks package. #25

Closed petermeissner closed 3 years ago

petermeissner commented 8 years ago

I think one thing missing in the R-verse is a package making it easy to give credit where credit is due by naming people involved in the packages used. Sure, one can use e.g. citation() and citation("digest") but this is not the whole story.

The shortcomings of citation()

What I would imagine is a package (let us call it thanks for now) that has one or two functions based around the idea that (a) thanking is important and (b) should be as easy as possible. So the most important function of the package (let us call it thanks()) would produce a simple string containing everyone mentioned in as author, copyright holder and or contributer in any package mentioned in the output of sessionInfo(). If you need a more visual example see the last slide from my UseR2015 talk where I faked such a package/function

How to approach it

The following lines allow to get author and maintainer information of all currently loaded / attached packages which not come with base R:

lapply(sessionInfo()$otherPkgs, `[[`, "Maintainer")
lapply(sessionInfo()$otherPkgs, `[[`, "Author")

Than one needs to do some munching and crunching and et voilà.

Problems

One of the major problems I see so far is that CRAN allows for authors to be listed in author files - e.g. igraph owns one of those - which I suspect adhere to no standard and are therefore to be handed manually.

Discussion

I think the thanks package is a wonderful idea that should be written and made public - I am excited to hear what others think and how to best approach the problem. One might argue that listing all people and institutions involved would be overkill but I think that it would just show plainly how things are - using a bunch of R-packages usually means that one builds on a very large amount of people, their creativity, motivation and working hours.

Ironholds commented 8 years ago

I really really like this idea. I'd maybe call it "credit" rather than "thanks" but it sounds super-fun! It could also rely on metacran to generate citation() info and similar for non-installed libs.

Ironholds commented 8 years ago

Gonna spin up a repo on my side, experiment around, build, submit to ROS. Want in? :)

petermeissner commented 8 years ago

Yip - I am in!

Rekyt commented 5 years ago

Hi @petermeissner and @Ironholds :wave:, I know this issue is almost 3 years old. But I think @Pakillo {grateful} package https://github.com/Pakillo/grateful would solve your problems to cite all the packages that are loaded or used at a given moment.

See also this thread on Twitter https://twitter.com/apreshill/status/1093516079748460550 and @crsh papaja::r_refs() https://github.com/crsh/papaja/blob/master/R/r_refs.R