It would depend on the scope of what people are trying to achieve, at a certain point of complexity you pass from being a "non programmer" to being a programmer due to all of the inferred learning you get from experience.
I know a handful of non programers who can automates tasks in their everyday workflow but as you say they're not maintainable pieces of software or particularly transferable, they are custom tools they create for their own flow.