As a desktop developer you are presented with a state full environment which utilizes the state to simplify development tasks. You are presented with a full object model allowing you to interact with the UI elements in a very intuitive way. You are presented with a rich data binding mechanism which again simplifies your development tasks.
Web developers are used to working in a stateless environment forced by the need to be scalable. Even when they are not working on implementing the next Amazon-like application they are still presented with the same general purpose tools. It is common practice to implement web applications using state as it dramatically simplifies implementation and reduces security issues but working with pages still implies some kind of stateless implementation that provides web developers with some non-trivial challenges.

Go to the
next section