In software engineering it happens very frequently that good, or even not so good, ideas are periodically reinvented, possibly rebranding them with new and cool-sounding buzzwords. These trends follow a few recurring patterns. Sometimes we try to simplify core concepts up to a point where oversimplification leads to something impractical to use in real-world situations. Even more often our architectural choices, like in the cases of centralized vs. distributed or fat vs. thin clients, keep swinging like a pendulum between 2 positions. Finally other times we explore different solutions but at the end of this cycle we find ourselves at the starting point or very close to it. During this presentation, mostly delivered as a rant of a 50 years old engineer who for some reasons insists on writing software on a daily basis, we will go through and try to make sense of these trends.