I like some of what superkoko had to say.

Personally I haven't been programming nearly enough years yet but what I have begun to sense is where the boundaries may lie, hence I have chosen C++ as my language of choice, I think it sits in the right place for me to see what is and isn't possible with programming.

If I got to the end of what C++ could teach me and thus what I could do with C++ I would probably have to go study the real world some more and look for problems that a programming language can help solve in it, there is bound to be something, and then I would have something to solve in a programming language again.

If that makes sense at all.