Learning (needlessly) hard technology
A few years ago, a friend told me he was thinking about learning a certain technology because it was really hard to use. This was not something that had to be complex to solve a complex problem, but something that was unnecessarily complex. Why would anyone do that?
His reasoning was that as a consultant, he could make good money supporting a technology that's hard to use. My friend would have more integrity than to recommend something that he didn't think was a good solution. Perhaps he was thinking of saying something like this to a client: "I wouldn't recommend this technology if you were starting from scratch. But since you're invested in it, I'll help you with it or help you migrate to something else."
That sounds like an unpleasant way to earn a living. It also sounds risky. If something really is unnecessarily complex, better alternatives are likely to arise, perhaps suddenly. (This assumes people are free to choose alternatives, not prohibited by law, for example.)
Learning a technology that's complex for good reasons could be a smart and ethical move. The work is harder at lower levels of abstraction, but someone has to solve the problems others would rather not think about. And since not as many people can do that work, it should pay better and be more secure.
There are a couple dangers, however, associated with choosing a more difficult technology. One is the temptation to use it where it isn't needed. The other is that the set of problems where it is needed may shrink over time.
Related posts: