I think you're right and wrong: Programmers can be similar to mechanics, but that can alternatively be similar to engineers. It's all semantics, but the people taking part in the whole "learn to code" thing are most likely going to be the mechanics of programming: they can, if given oversight and clear instructions, build lots of things.
On the other side, there are those who are going to be doing the oversight and giving the clear instructions, who can build something from vague requirements with minimal fuss. There are also lots of people in between, but everything is easier when you put it in absolute terms.
On the other side, there are those who are going to be doing the oversight and giving the clear instructions, who can build something from vague requirements with minimal fuss. There are also lots of people in between, but everything is easier when you put it in absolute terms.