Programming Paradigms: What we Learned Not to Do