I just got inspired by David Intersimone's latest blog posts about the history of Delphi:
Modern programming is like Onions. It stinks? Yes. No. They make you cry? Yes. NO. Layers. Onions have layers. Modern programming has layers. Onions have layers. You get it?
(Which reminds me that I need to buy the latest Shrek movie)
When adding layers, always remember that layers add latency.