Why are there so many programming languages? Are they use case or can they all do the same things? Is it worth it to learn multiple or stick to one?