A study like this helps us gain inspiration and to remind ourselves how non-programmers think about programming problems.
In the words of the linked pdf: "Programming may be more difficult than necessary because it requires solutions to be expressed in ways that are not familiar or natural for beginners."
Law may be...
Physics may be...
Getting the point? Beginners may not always be the best yardstick of everything.
This study, and the person you're replying to, aren't saying that all programming languages are unnecessarily complicated and should be changed. They're just saying that they're inaccessible to beginners. The authors of the study note that they're designing a programming language for beginners, so these things are useful for them to know.
A good tool should allow someone to progress from beginner to novice to expert, but at the end of the day, the expert is who the tool is really designed for. Anything else is just bonus.
Musical instruments increasingly are designed for beginners. A typical software suite makes it easy to make decent music by tapping a few buttons more or less in time.
Classical instruments aren't designed for beginners, because they weren't designed at all - they evolved from crude and simple historical originals.
But they're a subset of music as a whole.
Arguably the problem is that computer languages are NOT designed for anyone. This is why so many software products and services are significantly broken so much of the time - to an extent that would be ridiculous and completely unacceptable for hardware objects.
I don't see a problem with at least exploring new language models that have roots in perceptual psychology instead of in hardware design.
I'm reminded of a lesser-known talk by Dan Geer, in which he discusses cybersecurity maturing into its own field - its own science - using T. S. Kuhn's definition as a rough guideline. One of the criteria used to recognize the transition into a specialized field was the use of jargon. Maturity as a stand-along field has happened when it becomes necessary to invent new jargon that is - by definition - inaccessible to outsiders.
To be clear, I completely agree that tools shouldn't preclude beginners whenever possible, but I suspect that my not be possible as everything becomes more specialized.
The questions for me is that do we actually want to master a bare bones instrument (for example a violin) or do we want to make music.
I don't agree that this is all that different.
In physics, some phenomenons can be either simple or complex to describe, depending on what formalism you use to describe them. And sometimes, complex formalisms can be hard to understand at first, but help producing simpler description of the phenomenons your looking at.
For example functions and derivatives are hard to understand at first, but they drastically simplify the description of classical physics.
So in programming just as in physics, you just need the right conceptual tools to describe your problem.
And while boolean logic may be hard to understand at first, it really helps specifying complex behaviors.
In that sense, I think I agree with GP: over simplifying the conceptual tools may not results in better problem descriptions.
To answer your question, in my experience (I taught programming 101 number of times) many people are indeed confused when they need to reason about complex if statements. Typically, they make redundant tests, and it takes a little while before they understand why it is not needed.
But doesn't the machine reflect nature for a programmer as well? I think this paper does little more than capture fantasies about the inherent capabilities of machines and recite general logic elements of natural language.
Unless your point is "they won't listen to a poor sap like you", in which case, take a chill pill.
The human body is merely (re)produced by humans, whereas with "construct" here we mean the design of things (which, in the body's case would be, e.g. nature, evolution, etc).
It occurs to me if you get it wrong, glass shards from the bottle could emerge before submerging into your flesh, so perform this trick at your own risk.
One of my colleagues put a wine bottle into a shoe, so the base of the bottle was resting where your heel would go.
Then repeatedly 'tapped' the bottle/shoe combination heel first against the wall. Apparently hoping the hydraulic rebound would cause the cork to back out.
The bottle smashed. The concrete wall was permanently stained, the shoe was ruined and the carpet needed to be cleaned.
Very entertaining, but not terribly useful.
Although, I would think borrowing a wine opener from reception would've been the easiest approach in this case.
I do this anytime I don't have a wine opener handy.
Scenario is wine with cork fully inside bottle. Take a long slender knife, stab through the center of the cork as far as possible. Twist and and pull, with very little pull and lots of twist. Cork comes out. The key here is that the pressure of twisting prevents most of the slippage that would happen if you just pulled the knife out.
Enjoy impressing friends/family.