How do you approach learning a new programming language or framework?