Progressive enhancement is a simple idea with big consequences. It comes from a desire to provide an awesome user experience, married with the need for performance. If all our users had perfect, ultrafast connections, we could build an incredible application. However, if all our users have slow connections, we have to settle for a more bare-bones experience.
Progressive enhancement says porque no los dos? Why not both?
Our audience includes both fast connections and slow connections. We should serve both, and serve each appropriately, which means providing the best experience for the best connections and a more stripped-down (but still great) experience for poor connections, and everything in between.
In a sentence, progressive enhancement means our application gets progressively better as our user’s connection improves, but it is always useful and useable. Our application is thus an application adaptive to the connection.
You can actually imagine that this as...