HN user

_Wintermute

1,645 karma
Posts0
Comments503
View on HN
No posts found.

The increasing prevalence of non-standard evaluation in R packages was one of the major reasons I switched from R to python for my work. The amount of ceremony and constant API changes just to have something as an argument in a function drove me mad.

The choice of groovy was unfortunate, but yet it still seems more popular than snakemake which I can only attribute to the nf-core set of curated workflows.

I have a dislike of nextflow because it submits 10s of thousands of separate jobs to our HPC scheduler which causes a number of issues, though they've now added support for array jobs which should hopefully solve that.

My biggest issue with R package management is version pinning. If I specify an older version of a package, R will fetch the latest versions of all its dependencies, regardless if they're compatible or not, which leads to manually chasing down and re-installing specific versions of dependencies and sub-dependencies one-by-one.

Microsoft's CRAN time machine helped solved this, but I think they've recently shut it down and I don't really trust Posit to not have a version behind a paywall.

They can invite whoever they want, but I think they will struggle to attract talent unless they actually start making some changes to make it a more attractive option rather than just assuming elsewhere is going to get worse.

I did a post-doc in France after my PhD in the UK. It was possibly worthwhile just for the experience, but the actual funding and research environment is not one I would recommend to my colleagues.

Big Book of R 1 year ago

We tried plumber at work and ran into enough issues (memory leaks, difficulty wrangling JSON in R, poor performance) that I don't think I could recommend it.

Happens with R as well where everything gets dumped into a global namespace. It's a huge mess.

If you're lucky all functions will have a common prefix str_* or fct_*. If you're unlucky then you have to figure out which package has clobbered a standard library function, or the exact ordering of your package import statements you need for your code to run.

I would argue a European PhD prepares you for research better than a US one. You're expected to hit the ground running with required prior research experience and you have no classes or teaching obligations which explains why they're typically 3-4 years long.

And the ones who do care about reproducibility are using R anyway

I worked in a pharma company with lots of R code and this comment is bringing up some PTSD. One time we spent weeks trying to recreate an "environment" to reproduce a set of results. Try installing a specific version of a package, and all the dependencies it pulls in are the latest version, whether or not they are compatible. Nobody actually records the package versions they used.

The R community are only now realising that reproducible environments are a good thing, and not everybody simply wants the latest version of a package. Packrat was a disaster, renv is slightly better.