I wish agent-based programming was more popular today. It's an extremely powerful way of thinking about complex problems and distributed solutions. And it has much more actual theory behind it than things like SOA (which is mostly a re-branding of good OOP practices with a lot of buzzwords added in).