Learning Seaside
Notes from my learning experience with Squeak Seaside, by Ian Prince
14 June 2010

Testing the WebVelocity AWS EC2 image

Just tested the AWS EC2-based WebVelocity 1.1 beta.

A few gotchas:

  1. The ec2 image ami-9a866ef3 is available in the US East region
  2. You need to set up the EC2 firewall to allow access to port 7777.
  3. The ubuntu ec2 server is accessed via ssh -i your-key ubuntu@public-dns-address
  4. The web username:password to the WebVelocity app is admin:password
What's nice is that the EC2 image is ebs-based, which means you can halt the server, and only pay storage costs, between testing sessions.

Click to enlarge.

8 April 2010

Seaside load-balancing on EC2

It just got a lot easier to implement load balanced and fault tolerant Seaside servers on Amazon EC2 as sticky sessions have just been announced as a feature of Elastic Load Balancing.

Before sticky sessions it was not guaranteed that subsequent web requests would go to the same server instance, which obviously is no good if you're running a Seaside application on more than one server. With sticky sessions that is no longer a problem.

Hmmm, anyone using CloudFork SimpleDB in a production environment. Seems like a great was to implement a "no single point of failure" system....

6 June 2008

Gemstone/S now available as public beta

Good news, Dale Henrichs announces that Gemstone/S is now available as a public beta downloaded.

The Mac download requires OSX 10.5 (Leopard). I'm still running OSX 10.4 (Tiger) so it looks like I'll give the GLASS Virtual Appliance under VMware Fusion a try.

21 May 2008

Finished 'An Introduction to Seaside'

An Introduction to Seaside[1] does exactly what is says in the title. It walks the reader through building a "To Do Application" and by doing so covers an amazing amount of ground in just 138 [2] pages, including more advanced topics such as database options, AJAX and the meta-framework Magritte. As such I would recommend it to anyone wanting a book providing a good detailed overview of what a Seaside application looks like.

[1] An online version of the book exists here.
[2] Excluding the Appendix. The printed book's length is 200 pages.

21 April 2008

Seaside book ordered

I just saw that An Introduction to Seaside has been published on Lulu and couldn't resist placing an order.

I took the economy shipping option (to make an order of $34.78) so the book should arrive within a month (5 days to be printed plus 5 to 20 to be shipped to Europe).

I'll report back here on the actual shipping time and my thoughts on the book itself.

Update: The book, shipped from Spain via UPS, arrived here in Switzerland today, April 30th . 9 days total, not bad.

28 December 2007

Seaside on Amazon EC2

This is cool, the Seaside One-click Experience image running on a EC2 (Amazon Elastic Compute Cloud) node, as announced here.

8 December 2007

Easy sessions or easy bookmarking, choose one

Randal L. Schwartz nicely sums up a key difference between Seaside and traditional web frameworks:
In traditional web programming, the default is "sessions are hard, bookmarks are easy". In Seaside, the default is "sessions are easy, bookmarks are hard". You can't get both at the same time.
Non-automatic bookmarking, rather than hard bookmarking, might be closer to the truth, at least from a developer's point of view. And as Lukas Renggli says, with Gemstone "infinite memory" you can just keep your sessions for ever and never have expired URLs.

Update: there's an interesting discussion on handling expired seaside sessions here on Ken Treis's blog.

22 October 2007

Excellent Seaside tutorial from Hasso-Plattner-Institut

The Software Architecture Group at the Hasso-Plattner-Institut in Germany has an excellent step-by-step online Seaside tutorial in English here.

18 June 2007

Free Software

I couldn't pass on the opportunity to see and hear Richard Stallman talk at the University of Lausanne this morning.

Stallmann's talk Éthique et pratique du logiciel libre – given in excellent French – revolved around the four freedoms of "Free Software":

  • The freedom to run the program, for any purpose;
  • The freedom to study how the program works, and adapt it to your needs;
  • The freedom to redistribute copies so you can help your neighbor;
  • The freedom to improve the program, and release your improvements to the public, so that the whole community benefits.

Seaside is distributed under the very generous BSD-style MIT License. Thanks Avi! See here for a long discussion on GPL vs BSD.

Stallman briefly talked about e-voting which he doesn't consider secure enough today, nor in the foreseeable future (40 years). The video below (mp4, 2197k) is Stallman receiving applause for saying "il faut voter en papier", i.e. voting should be paper-based.

And Yves, if you're reading this, thanks for inviting me to lunch!

8 May 2007

Transparent Persistence

Dale Henrichs explains how GemStone persistence is transparent in Seaside:
a beginTransaction is performed when the request comes in from the http server and a commitTransaction is performed right before the response is shipped back out to the http server.
This seems to mirror the way ZODB transactions are handled in Zope.

Data transparency makes a big difference to rapid web prototyping, and I'm glad it has made its way into Seaside.