The question of whether Machines Can Think... is about as relevant as the question of whether Submarines Can Swim.
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack.
Computer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter.