Yesterday a student came to me with project questions. She was trying to learn some ground-level tool basics (how useState works in React, but details don’t matter), and she was just hopelessly confused: the pieces were there, fragments of nascent understanding littered all around, but somehow it just wasn’t coming together for her.
She walked me through her fragments of non-working code, and as I was trying to figure out how she’d got so lost, she popped back to her documentation source:
1/2
ChatGPT.
I had her type “react usestate” into a search engine and showed her how to identify the React project’s •actual documentation• in the search results.
She looks at it. A long pause. Then: “This is SO much better.”
After who knows how many hours of struggle, she was unstuck in 5 minutes.
2/2
@inthehands This has been my near-universal experience with junior developers using ChatGPT.
It somehow *feels* amazingly productive and helpful to them. One mentee did a mini-postmortem on a project that didn't go well, and really, really, powerfully struggled with the cognitive dissonance between "chatgpt helped me be so productive, really useful!" and "I just spent 2 weeks instead of 2 hours on a task because I asked chatgpt instead of reading the documentation."
@tedinski @inthehands dealing with high variance like this & difficulty in evaluating related strategies is a very well known classic problem. Instead of acting like learners won't make this mistake it would be nice for meta learning strategies to be taught explicitly, which have shown great benefit for early learners avoiding time suck traps. To me this is very informed by "misconceptions about what studying should look like" research. Software education should catch up and integrate this tbh.
@tedinski @inthehands dealing with an unpredictable support ("sometimes this will unblock a whole thing I didn't know I didn't know but sometimes this is a rabbit hole distracting me") is not a new meta skill of learning strategy. A lot of the folks I know teaching here are adapting the same meta skill building lessons for correcting misconceptions re how we learn. The hopeful side of students dealing with confusing technology imo is that it makes this stuff really immediately relevant to them.
@tedinski @inthehands maybe my lab should put out some stuff on this for junior developers
@grimalkina @tedinski @inthehands I mean the problem is... not limited to them. I am slowly building a talk on "models we organise by" and the amounts of stuff that "felt" like it has to be true that we built this field on, except they are not true once you actually study it, is mindboggling.
But the moment you explain it, people keep refusing to deal with it.
Postmortem/retrospective analysis is a major way engineers learn, and I don't recall *formally* doing it when I was a student. (I would personally, ofc, "how did I get that wrong?" on any assignment being one of the most basic things to do.)
But in this case, they'd written a great retrospective... except they'd run face-first into cognitive dissonance and failed to overcome it.
I don't know how to teach overcoming it, except to point it out where I can.
@tedinski @grimalkina
Students are generally pretty self-aware and capable of useful reflection tbh, more than one might assume. Not always, but prompt them well and they’ll give good answers more often than not.