That’s a great point. I developed most of convertr
without even knowing that udunits2
existed. Another thought is to have a package wishlist somewhere that people could comment on to identify gaps for other people to attempt to fill.
Some background on the submission. Initially I developed convertr, then learned about udunits2 and said basically “well, no need for this package.” Then recently I thought that unit conversion was a good use case for an RStudio add-in because that would make it easier to see what units were available (the initial version of convertr came with a shiny app, but not an add-in). After that I decided that it might be useful enough to release because there were a couple differences in usability between the two packages. So there’s still a lot of overlap in what you can do, but some difference in how you can do it. I guess the only other thing is that convertr
looks to be about twice as fast (this surprises me, but probably doesn’t matter much for this use case):
x <- sample(1:100, 1000000, replace = TRUE)
microbenchmark(convertr::convert(x, "kg", "g"), udunits2::ud.convert(x, "kg", "g"))
>Unit: milliseconds
> expr min lq mean median uq max neval
> convert(x, "kg", "g") 15.72549 18.37563 23.23852 20.49377 22.83835 80.07975 100
> ud.convert(x, "kg", "g") 38.64360 45.63138 60.38057 49.13104 89.14825 99.99149 100
I think the overlap conversation probably also should include “is this package better than the alternatives”, this could either be in terms of usability, speed, or just complying with the ROpensci guidelines for package development.
Generally, I really like the idea of having a list of common tasks with a recommended package, kind of like a thewirecutter.com for R packages. This would help both in identifying package needs, and also for a new researcher figuring out which packages are useful, stable, and supported.
Anyway, thanks for taking a look at all this!