Seems like it has to do with the end result. If your goal is to make an app, then you have to program that app. So you are a programmer.
If you want something quick, maybe throwaway-able, you pick something to use for that, and you are a user.
You could build a program with that throwaway script without being a programmer though. Just like I can build a house without being a carpenter.
That's my interpretation though.