Join us on:

T40. Can you be Rich and Thin? Building Dynamic Web Applications with Seaside

James Foster, GemStone Systems, Inc.

As a junior-high student in 1971, James discovered the local university's computer lab and learned Basic, Fortran, and assembly. After trying other careers (commercial aviation and law), he returned to computer programming and was introduced to OOP on the Macintosh in the 1980s. Since then James has worked on large system (primarily in healthcare) and introduced agile practices to the teams he has lead. James is a veteran OOPSLA attendee and has presented at OOPSLA and other conferences. James Foster is on the Smalltalk Engineering Team at GemStone Systems, Inc. and is an evangelist for the Seaside web framework.

Is there a inherent contradiction between a rich client/server application and a thin client? Can a web application provide the control flow that we have come to expect from good desktop applications? Why is it that so many otherwise professionally-developed web sites (including on-line banking, travel reservations, and even the OOPSLA submission system) include warnings like, "Do not save, print or reload this page!" or "Do not use your browser's button!"? Has the web really set programming back to the era of GOTO? Is a basic subroutine call too much to ask from your web framework? Why is it that popular web frameworks devote so much to handling object-relational mapping?

While other web frameworks are evolutionary, Seaside has been characterized as revolutionary, even heretical. What makes Seaside different? Is it the funny URLs? Is it continuations? Is it the ability to create reusable domain-specific components? All of the above?

This hands-on tutorial will present Seaside (a free, open source, web framework) and walk through the process of building a pure-objects application (UI to database) using Squeak and GLASS (GemStone, Linux, Apache, Seaside, and Smalltalk). You may bring your own computer or team up with someone else who brought one.


Participants will develop a Seaside application and understand how the framework addresses the various web architecture challenges.


This tutorial will combine lecture with hands-on exercises where participants will develop an application following a script provided.

Audience: Practitioners
Please email any questions to . This e-mail address is being protected from spambots. You need JavaScript enabled to view it