They may have a perfectly good shot at being smart, but I still don't buy the argument. The reason they struggle to become coders (assuming they tried at all), in my experience, is a lack of problem-solving and debugging skills. There is no real shortcut here. An "image" of the chair isn't enough; when the first iteration is wrong, you have to be able to explain why it's wrong.