Live data from Hacker News

Too many R packages: CRAN is inundated with submissions

rworks.dev

61–70 of 85 posts

Re: Too many R packages: CRAN is inundated with submissions

#61
post #46

Earlier quoted context omitted.

> Young people producing bad code is not surprising. They're your grad students, mentor them, and maybe they'll adapt to your ways of thinking. Or not. You’re right, mentorship is key and I do my best to suggest better practices. They are often quite happy to find out they can do more with less and can forget having to remember multiple additional syntaxes (looking at you “ggplot2”). I somewhat understand why R instr…

For doing "more with less" in graphics, I would rather learn a unique syntax for a package that is based on the grammar of graphics (ggplot2) than use a package with standard syntax and some other foundation.

Good you find value in that framework, but it doesn’t seem like a useful starting point for first time R learners interested in plotting and exploring their data. I have a colleague that integrates ggplot2 and other tidyverse packages into their undergraduate classes and they struggle quite a bit with creating basic plots since they now have to learn two things instead of one.

Re: Too many R packages: CRAN is inundated with submissions

#62
post #4
post #3

Frankly the bigger problem is an over reliance among R instructors on the tidyverse, an ever-expanding ecosystem of redundant functions and anti-patterns. They’re teaching new R users that everything can be solved with yet another package import and skipping over teaching them how to use the already powerful and intuitive base packages.

I’m not saying it doesn’t have flaws, but the tidyverse is still the most coherent and functional ML/stat computing ecosystem I’ve ever used. R packages outside of the tidyverse can get pretty gnarly. Even the R stdlib is usually considered to be inconsistent and riddled with legacy cruft.

The core of the problem is that the tidyverse is trying to turn R into a user-friendly real-time calculator, rather than a tool for stable, deterministic, and literate data analysis.

Re: Too many R packages: CRAN is inundated with submissions

#63
post #34

CRAN is not a conventional package repo. Its audience is not really people who care about programming or software. It is a means to an end for them and slop is perfectly fine. The language itself is also very simple and has defaults that people don't even bother changing. For example the default output file name. It doesn't ask for an output file name when you save output. As a result of the above, it is full of pack…

> For example the default output file name. It doesn't ask for an output file name when you save output. I'm not really sure what output file even means for an interpreted language, but GCC doesn't ask either, it will spit out an a.out by default (not even .elf or something logical).

I can't find the script now but I am talking about text output to a file. Perhaps people were normally running the script in a Jupiter like env and that's why they didn't bother with file names and it created a file with a default name when I ran it to test the interpreter.

Re: Too many R packages: CRAN is inundated with submissions

#64
post #55
post #4

Earlier quoted context omitted.

I’m not saying it doesn’t have flaws, but the tidyverse is still the most coherent and functional ML/stat computing ecosystem I’ve ever used. R packages outside of the tidyverse can get pretty gnarly. Even the R stdlib is usually considered to be inconsistent and riddled with legacy cruft.

I would be in minority. But, I don't like tidyverse ecosystem. I prefer data.table for most of my uses.

Data.table is just so much faster, and the sql-like stntax is easier tonunderstand

Re: Too many R packages: CRAN is inundated with submissions

#65
post #3

Frankly the bigger problem is an over reliance among R instructors on the tidyverse, an ever-expanding ecosystem of redundant functions and anti-patterns. They’re teaching new R users that everything can be solved with yet another package import and skipping over teaching them how to use the already powerful and intuitive base packages.

I agree. There has never been anything in tidyverse I couldn't do in base R. Usually a lot cleaner in base R. People complain about plotting in base R, really? It is just a function call with supplied arguments. It is super straight forward. Follow the vignette.

People also saying python is better don't realize that R is basically like having pandas in the standard library. I don't think there is a better language for wrangling tabular data to be honest.

Re: Too many R packages: CRAN is inundated with submissions

#66

Earlier quoted context omitted.

I couldn’t disagree more. The base packages are a complete mess. If R was subset to only the tidyverse 5 years ago then it wouldn’t have lost so much ground to Python in nearly all fields. Posit is obviously the only organization with the pull to do that, and I feel like they got pulled in 10 directions during the move to AI and trying to also support Python. R Shiny is dead too which sucks because reflex.dev just co…

Python is just such a good Swiss army knife and it's never a waste to learn: you can do data science and you can do almost anything else. It's the BASIC of the 21st century.

Swiss army knife with nothing actually attached to it, just the empty frame of the knife. You need to import so many aspects.

I mean one example is people routinely reaching for pandas. Pandas is basically just replicating base R data wrangling syntax.

Re: Too many R packages: CRAN is inundated with submissions

#67
post #10

Earlier quoted context omitted.

Programming is a lot easier than statistics bc it’s deterministic, whereas statistics is stochastic (that extends and encompasses deterministic functions). AI speeds up learning, so I bet that’s what you’re noticing with R. As an aside, the best programmers these days are probabilistic programmers (who write stochastic functions). Our languages are Stan and PyMC. Both can be called by Python or R, and AI writes all o…

I partially agree, but I also differ on some points. The part I agree with is that probabilistic programming is difficult and that advanced programmers tend to enjoy it. Where I differ is on the claim that programming is deterministic. At the script level, programming is deterministic and sequential, but once it crosses a certain threshold, it becomes absolutely probabilistic. That's because latency, locks, and async…

You don't have to use tidy verse. I never reached for it since base R does it all already. I write in a functional approach though and I understand a lot of pythonistas and others prefer the object oriented approach. R written in a function approach is lean and mean. Use your apply functions, kids.

I think saying academic code is algorithm centric is perhaps missing the larger userbase of academic code: not people writing the functions and vetting on simulated data, but the people actually using the functions on real world data.

This is why there is a seemingly uncaring attitude towards typical programming conventions. They do not matter. The code is pretty much a one off for the given analysis. It doesn't matter if it takes an hour to run or two weeks on the cluster. You are chasing the wrong dragon when you try and make your two week run time into something sensible. Spending effort on process for process sake and not the hypothesis building, discovery, and analysis.

It is a different planet than the world of professional CS where it is really about process and saving time and money, and results that aren't highly convenient to the bottom line are largely ignored. There is no bottom line to satisfy with research compute, only reporting what the evidence suggests and publishing this information.

Re: Too many R packages: CRAN is inundated with submissions

#68
post #62
post #4

Earlier quoted context omitted.

I’m not saying it doesn’t have flaws, but the tidyverse is still the most coherent and functional ML/stat computing ecosystem I’ve ever used. R packages outside of the tidyverse can get pretty gnarly. Even the R stdlib is usually considered to be inconsistent and riddled with legacy cruft.

The core of the problem is that the tidyverse is trying to turn R into a user-friendly real-time calculator, rather than a tool for stable, deterministic, and literate data analysis.

"The real problem with this package is that it makes things easy, instead of hard"

Re: Too many R packages: CRAN is inundated with submissions

#69

Earlier quoted context omitted.

The other half is: "What combination of packages and task views do I actually need to not reinvent the wheel for this particular type of analysis?"

And the third half is "what preprocessing and analysis methods I actually need". Because I have never met a person who is great at that last part (methods theory) and sucks at the others (technical implementation; because the same work and effort leads one to train both). The issue is that AI solves all these problems at once, which will probably result in more academics understanding their methods and choices in pre…

One of the ways we can be hopeful that LLMs will have a positive effect is the ability to interrogate a researcher "so the LLM did this and this and this for you, what did YOU do?" and whatever that is can be the focused judgement, quality, and purpose of a researcher.

In other words, relieving the researcher of the slog of editing proposals, figuring out compiler configuration, and locating esoteric code from years past they can be judged on the quality of their actual contribution now that the menial tasks can be delegated to an LLM and reviewed by hopefully the expert researcher.

Re: Too many R packages: CRAN is inundated with submissions

#70
post #62

Earlier quoted context omitted.

The core of the problem is that the tidyverse is trying to turn R into a user-friendly real-time calculator, rather than a tool for stable, deterministic, and literate data analysis.

"The real problem with this package is that it makes things easy, instead of hard"

That’s a rather glib interpretation of what I said.

I’m being rather charitable when I call the tidyverse “user-friendly”. That might be the goal of tidyverse devs, but it hasn’t been the reality since inception.

The point is even if we assume it is or will eventually become user-friendly, are we willing to accept the trade-offs that come with that?

Post reply on HN