I'm Mark Biesheuvel and I enjoy developing web applications.
What makes a web application great is the ability to keep interacting with the page. A good way to do this is to make the front-end and back-end work together. A click on a button will result in a small interaction with the server and only reload that bit of the page that changed.
Knowing when to use what tool/technique is very important when optimizing for performance. Storing the right chunk of data in cache can save computation time while maintaining flexibility. A relational database is great at searching through data sets with many connections between the objects.
Frameworks like Zend allow developers to build upon a great foundation. This makes it easier to get started on the part of a project that is unique instead of worrying about the parts that are the same across all projects.