So next time you find yourself coding a 500-line abstraction for something that could be copy-pasted a few times and done in 50 lines, ask yourself: are you solving a real problem for the users and maintainers… or just indulging in intellectual masturbation?