I agree with this path. It's important to start by being able to replicate other people's successful applications before trying to go overboard with your own. That way you can learn a lot of design basics while working on cool things, to you know, earn your wings.