There are few things in CS that are new these days, definitively very few since the 80's. Pretty much all we tend to do is rehash the old stuff in a new package. I personally find that pretty boring. One of the questions that I asked myself when I was younger was: how can I be creative? For some reason that it was, and it still is, a very important question to me.
In a field where rehashing is the norm, how do you keep being creative?
You need to challenge all that is given, ask yourself: why do we do things like that? Who decided? When? Does it still hold true today? Can I do it differently? Would it be worth it? Many times we do what we do just because we have always been doing like that. Pure habit and resistance to think out of the box.
What do we need to think out of the box in a world of numbers? Math.
Without a deep understanding of the mathematical foundation of the methods and algorithms we use, there is no way of ever do anything creative in this field.
So, it is up to you: What kind of programmer you want to be?