data-carpentry-for-agriculture / trial-lesson

Data Harvesting (Data Carpentry for Agriculture) lesson-generating code
https://data-carpentry-for-agriculture.github.io/trial-lesson/
Other
4 stars 1 forks source link

How to un-bewilder / un-frustrate the combination of R, packages, and SSURGO? #43

Open dlstrong opened 4 years ago

dlstrong commented 4 years ago

"This only works with this package," "This is an exception here," "Doing this makes that harder," "It's a little weird," all of this stuff makes R seem even more impenetrable than it already is.

Their personal goal isn't to learn to be R programmers. It's to learn how to use the tools we're giving them to accomplish what they want to do. The chances someone who's gone through this class is going to want to write their own functions is near 0%, but the chances they're going to want to run these scripts on their own farm data is very high.

We need to focus more on "how do you use what we've given you with your own data" and less on "here are eighteen hundred different confusing exceptions and sets of punctuation and words that usually aren't English."

ETA: I'm still mentally chewing on what we can do with "the SSURGO database sounds like a confusing tangle, and when you add that confusing tangle to the various dueling R package function-name-and-command-creation standards, you end up with a SUPER confusing tangle that apparently has regularly reoccurring download issues which can lead to substantial frustration for both students and teachers."

SSURGO was presented with a disclaimer like "this is super confusing and you can get really lost in here unless you know exactly what you're doing," which most of our students folks really won't. So I'm looking for "what makes this steep messy mountain worth extra confusion for people who are still struggling with things like 'What does the top window do differently than the bottom window again?'"

jnaiman commented 4 years ago

I think this comes back to how much do we want to "functionize" stuff for them and how much we want them to explore on their own. If its really, "here be able to use the stuff we have built for you" then the only thing they should have to know how to do is import their files into R and then input those files into pre-written functions that will hide all the plotting, transforming between data types, etc.

If we want them to be able to do stuff, then we do have to get into the nitty gritty of things.

Curriculum dev wise:

  1. The first option means we would have to think of all the possible ways they might want to use R and write functions for all
  2. The second option means we have to spend time on whittling down what we are teaching to the essentials, make sure we are not going on tangents that might confuse beginners, and that we have enough time to cover the basics
dlstrong commented 4 years ago

Let's ask this crew at break / lunch which general philosophical approach they would find more useful?

dlstrong commented 4 years ago

My general impression from the whiteboard conversation was that the folks in the class were more in favor of "Give us the code, we don't want to write that ourselves, and teach us how to know what type of data we've got and where we plug it in so we get our own results." Does that match with your impression?