This post has been on my mind a lot in the last couple of weeks.
I'm tutoring a new student who has decided to take a computer science foundation to decide whether he wants to consider starting a full degree course, and it is being a delightful, challenging, and bizarre experience because he's never tried programming. At all. No Scratch, no after school Python, nothing - nobody in his circle of acquintances had the background to get him started and it had become this semi-mythical challenge in his mind to get started.
For example, he reached out because he started reading the course material and then came to me saying "I understand the ideas, and it sounds fascinating... but where am I suppose to type the Python?"
Aside: with all due respect to Python as a good starter language, installing Python as your introduction to programming is... not ideal.
I've only been teaching him for a few weeks, but it has immediately solidified one aspect of the quoted post: we confuse 'hard' and 'unfamiliar' way too much. For him, the fact that dividing by zero must be an error is intuitive because he has the maths to understand why - while I can spend a long time trying to explain "why can't it just be zero?" to younger students. He struggled for most of an hour to write a "for" loop to print the odd numbers up to "N", but then sent me a message shortly after the session to say "so why do we have for loops, it seems obvious a while loop could always be used instead".
I... don't have good answers to some of the questions this raises around how to teach and train people, especially as I look at teaching groups of students and having been roped into helping support some teachers teaching whole classes of students. The moment you step outside the bounds of "the shared curriculum so far", or have a student from outside the system, or account for neurodiversity, or somebody has done a related hobby. With an individual you can start from the familiar (in this case maths foundations and, oddly, some useful psychology analogies), but with a group that isn't going to work.
Is this "news"? Not really - it isn't even the first time I've thought about this. I suppose I'm mostly posting because I do feel like it's actually quite hard to spot the issue of familiarity versus difficulty for anyone who isn't involved in training/teaching, so I wanted to share...