Dynamic Web Development with Seaside

Buy PDF Buy Print

VWeb 2.0

Web 2.0 is a buzzword that characterizes the trend to make web applications more accessible. It is about opening up your data and services to your customers. It is about supporting standard protocols and allowing your application to run on many different devices, not just a web browser on a desktop computer. It is about letting your users interact with each other. It is about letting your application evolve with the needs of your users. That’s why many Web 2.0 projects are constantly evolving.

In this chapter we will present the different solutions offered by Seaside to support Web 2.0. We will extend the todo application we built in Chapter 15 with Web 2.0 technology. The definition of Web 2.0 itself is still open. Every day there are new features popping up, calling themselves the new leader in the Web 2.0 movement. Seaside is very supportive of the Web 2.0 philosophy.

  • Seaside ensures that the XHTML it produces is valid. It encourages developers to use meaningful XHTML markup and frees them from worrying about the final look of the application. Seaside lets designers define the colors, fonts and layout of the page through Cascading Style Sheets (CSS) as shown in Chapter 8.
  • Seaside embraces the evolution of web applications. In contrast to file-based web frameworks, Seaside allows one to take advantage of the full power of the Smalltalk development environment. The ability to refactor, test and navigate an application with the same set of tools makes it extremely powerful and easy to change and adapt the application to new needs. On-the-fly debugging is a huge time saver.
  • Seaside integrates easily with other output formats. Microformats are the easiest way to go. Just add specific classes and attributes to your XHTML to make your application generate a valid microformat. In Chapter 19 we demonstrate how to add an RSS (Really Simple Syndication) stream of todo items to your users.
  • While the core of Seaside does not rely on JavaScript, this client side technology might help you to increase the appeal and the usability of your web application. AJAX (Asynchronous JavaScript and XML) enables you to build user interactions without having to reload the whole page with every click. Best of all, the application will feel much more responsive. In Chapter 20 and Chapter 21 we will learn how to extend the todo application by communicating asynchronously with the server and adding JavaScript gimmicks without writing a single line of JavaScript code.
  • Comet takes AJAX to the next level. While traditional web servers always wait for the client to request data, Comet allows you to actively push changes from the server to the client. In Chapter 22 we will use this technology to let other people observe how our todo list updates.

Copyright © 30 May 2017 Stéphane Ducasse, Lukas Renggli, C. David Shaffer, Rick Zaccone
This book is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 license.

This book is published using Seaside, Magritte and the Pier book publishing engine.