Of course, programming jobs do exist where you do the same thing over and over again. And there's a threshold of skill required before you can automate some classes of things; and you also need a clear understanding of the task, to see precisely which aspects are mechanical, and which aspects are configurable. It pretty quickly gets into compsci research. And sometimes it's not worth the effort (it can take a lot of effort.)
But if you've ever called a method twice, instead of writing the code twice, then you have done some of it.
I feel that your question "start to make sense" suggests your thinking is all-or-nothing. Does no aspect of programming make sense to you - or do some "trivial" aspects make sense but they "don't count"? Does a print statement make sense to you, to some extent? Does a loop make sense to you? There's a continuum of mastery. If you only acknowledge perfect and complete mastery as "mastery", then you won't feel any satisfaction in mastery of one small bit of it. And without the confidence and encouragement of that success, it's very hard to be motivated to continue. (oh yeah, plus, of course, it's impossible to have perfect and complete mastery of programming anyway, for Turing's reason.)