Over time I’ve been refining a Seaside tutorial and the recent week-long workshop at Santa Fe gave a good opportunity to polish it further. GemStone has agreed to make it available for download.
The workshop was a good experience and in addition to learning Seaside several people started new projects, including a Google Maps library. If you are interested in having a Seaside tutorial/workshop in your area, please contact me at James dot Foster at GemStone dot com.

5 comments
Comments feed for this article
April 15, 2009 at 12:37 pm
Kevin Driedger
Thanks James for the detailed tutorial/workshop that you’ve released! I’m looking forward to running through it – ]{evin
April 15, 2009 at 12:48 pm
Learning Web Development with Seaside « (gem)Stone Soup
[...] 15, 2009 in GLASS, Seaside James Foster has just announced the availability of the Seaside tutorial Learning Web Development with Seaside, that he has been [...]
April 17, 2009 at 4:41 am
Stephan Eggermont
Hello James,
A nice error to show in Chapter 7 is forgetting the ^ in children (page 2).
It’s a mistake I’ve made often, and is probably difficult to understand.
It is not debuggable from the web, and leads to:
Internal Error
MessageNotUnderstood: FlightInfoWhenComponent>>do:
FlightInfoWhenComponent(WAComponent)>>childrenDo:
FlightInfoWhenComponent(WAComponent)>>nextPresentersDo:
FlightInfoWhenComponent(WAPresenter)>>withNextPresentersDo:
[] in WAAnswerHandler(WAPresenter)>>withNextPresentersDo: {[:ea | ea withNextPresentersDo: aBlock]}
WAAnswerHandler(WADecoration)>>nextPresentersDo:
WAAnswerHandler(WAPresenter)>>withNextPresentersDo:
[] in WADelegation(WAPresenter)>>withNextPresentersDo: {[:ea | ea withNextPresentersDo: aBlock]}
FlightInfoWhenComponent(WAComponent)>>decorationChainDo:
WADelegation>>nextPresentersDo:
WADelegation(WAPresenter)>>withNextPresentersDo:
[] in WAToolFrame(WAPresenter)>>withNextPresentersDo: {[:ea | ea withNextPresentersDo: aBlock]}
FlightInfoComponent(WAComponent)>>decorationChainDo:
[] in WAToolFrame(WAComponent)>>nextPresentersDo: {[:ea | ea decorationChainDo: aBlock]}
[] in WAToolFrame(WAComponent)>>childrenDo: {[:ea | ea ifNotNil: [aBlock value: ea]]}
Array(SequenceableCollection)>>do:
WAToolFrame(WAComponent)>>childrenDo:
WAToolFrame(WAComponent)>>nextPresentersDo:
WAToolFrame(WAPresenter)>>withNextPresentersDo:
[] in WAToolFrame(WAComponent)>>visiblePresentersDo: {[:ea | ea withNextPresentersDo: aBlock]}
WAToolFrame(WAComponent)>>decorationChainDo:
April 17, 2009 at 4:54 am
Stephan Eggermont
Chapter 9 page 2 refers to a WAExpirySession in the text, but not in the code. That’s confusing.
[Thanks, Stephan! This and other corrections found by Stephan and others have been incorporated into the latest version. --James]
June 19, 2009 at 3:21 pm
Experience Report on Tutorial « Programming Gems (on GemStone)
[...] 19, 2009 in Uncategorized As has been mentioned earlier, we have a Seaside tutorial available for download. I’ve gotten some good feedback from [...]