I teach a lot of Python and data science (pandas, Polars, scikit learn, XGBoost...) in Jupyter.
(I also teach a bunch of software engineering best practices to folks who claim they don't want to be "software engineers".)
My experience is that with training, many of these issues go away. Just saw this again firsthand at a client last week.
My current take is that many focus on making the code newbie friendly. I think they should level up and start writing code for a professional audience, using software techniques that a professional would use. Newbies won't like this code.
I get a lot of flak on social when I post this from naysayers, but the overwhelming response from my students and those who have read my books indicates there might be something to this.