dcsimg

Seaside: Your Next Web Application Framework

Seriously? A Smalltalk web framework? While you might be skeptical at first, this just might be the the ultimate developer tinkertoy.

A Web application framework provides classes, tools, and techniques to rapidly build dynamic websites and Web services using modern programming techniques. A framework typically abstracts away common, Web-related operations, like interpreting data sent from a form, generating HTML, and persisting data, so you can focus on the features specific to your application.

Seaside is a Web application framework gaining popularity among developers. Seaside is similar to other frameworks, such as Catalyst (Perl), Rails (Ruby), and Cocoon (Java), but distinguishes itself by being written in Smalltalk, as a continuation-based framework.

Why Smalltalk?

Smalltalk is simple to learn, especially if you already have experience with object-oriented programming. The entire syntax can be learned in about a half hour, and consists (mostly) of unary messages, binary messages, keyword messages, blocks, and assignments. Code is organized into methods, which belong to a class, and everything in Smalltalk is an instance of a class. Nearly every class has visible source code, and you can override, extend, or (in extreme cases) monkeypatch the code to yield a new behavior. And because Smalltalk has been around for nearly three decades, there’s plenty of documentation, tutorials, and examples to study. It’s the ultimate tinkertoy.

Even better, the core code serves as examples for your own code, and the Smalltalk integrated development environment (IDE) provides features that even the most advanced commercial IDEs haven’t quite caught up with yet.

And best of all, when things blow up, the IDE shows a nice debugger stack trace, with the executing line of code highlighted. But the stack isn’t an autopsy—your code is still alive and well. You can poke and prod, add new code directly in the debugger, and even resume execution right from the point your application failed.

The debugger even works from the web in Seaside. If something blows up while you’re poking around your Web application, up comes the same debugger found in the IDE (or a Web-based one if you prefer) to reveal the live server state. You can poke at the stack, fix broken methods, and then resume, which refreshes your browser and reveals the corrected output, just as if you had coded it right the first time. This is called intra-hit debugging, and once you try it, you won’t be able to use anything else without regret ever again.

The Smalltalk community practically invented the notions of “Extreme Programming” and “Test-Driven Development”, and this applies in Seaside as well. You can write your unit tests to drive the web components to get pass/fail indicators, even testing all the way down to the generated HTML by using a simulated browser to poke at forms and follow links.

Seaside HTML templating is also done with Smalltalk. For example, to get…

<h3>hello</h3>

… in Seaside you write:

html heading level: 3; with: 'hello'.

This reads as, “Ask the html canvas for a heading brush, then configure it to be a third level heading, and include ‘hello’ as the content.) Although this looks a bit wordy at first, it becomes quite natural after a bit.

Additionally, the HTML brushes have some smarts to understand common page flow. For example, the code…

html image url: '/images/foo.jpg'.

… generates a classic img element. But you can also take a Smalltalk dynamically generated bitmap (called a form in Smalltalk, somewhat confusingly) and point the img element at that:

 html image form: aForm.

Seaside arranges for the Smalltalk form to be converted into a PNG graphic automatically, and generates a dynamic URL to point to that image, even cleaning up after a few minutes when the image has already been requested and cached. Now that’s service.

Smalltalk also offers multiple implementations for vendor and license choices. Two open source versions of Smalltalk, Squeak and GNU Smalltalk, already work with Seaside; three commercial vendors (Cincom VisualWorks, GemStone/S, and Instantiations) are Seaside-compatible, and you can even buy support if you get stuck.

Squeak Smalltalk and Cincom VisualWorks both provide distributed development tools similar to got or mercurial, so your Web application can be built by a team. Of course, these tools are Smalltalk-aware, so a renamed class or updated instance variable doesn’t cause a lot of spurious merge conflicts. (GNU Smalltalk works with traditional files, so you’ll be using your favorite text editors and version control systems there.)

Comments on "Seaside: Your Next Web Application Framework"

This plan detoxifies and trims your body at the same time, without sacrificing nutrition.Here is my blog post: suco detox pronto

Usually posts some pretty intriguing stuff like this. If you are new to this site.

Just want to say what a great blog you got here!I’ve been around for quite a lot of time, but finally decided to show my appreciation of your work!

Specialists necessary, specifically when you are first learning to use pc or google tv raging waters discount coupons Ankou used arrive in a cart drawn by 2 horses to grasp the spirits online deals Rhonda Byrne is an Australian born television producer as well as ghost writer discount school supply coupon You’ll need to be reminded to water your garden discount websites There was to try it out discount Shopping Online If you would like you can purchase sheet music books, however the focus this site is digital written music coupon codemy site: hotel discount codes

Very handful of web-sites that transpire to be in depth beneath, from our point of view are undoubtedly nicely worth checking out.

Always a massive fan of linking to bloggers that I love but don?t get a whole lot of link like from.

Below you will locate the link to some internet sites that we think you’ll want to visit.

Hello! I’m at work surfing around your blog from my new iphone!Just wantwd to saay I love reading your blog and look forward to all your posts!Carry on the outstanding work!Here is my bpog skip hire st albans (http://www.scribd.com/)

Although websites we backlink to beneath are considerably not connected to ours, we really feel they may be in fact worth a go through, so have a look.

We prefer to honor several other world wide web internet sites on the internet, even if they aren?t linked to us, by linking to them. Below are some webpages worth checking out.

Very handful of web sites that come about to be detailed below, from our point of view are undoubtedly very well worth checking out.

The time to read or visit the subject material or web-sites we have linked to below.

Hey there! Do you know if they make any plugins to help with Search Engine Optimization? I’m trying to get my blog to rank for some targeted keywords but I’m not seeing very good gains.If you know of any please share. Appreciate it!Here is my weblog … firma transportowa

Wonderful story, reckoned we could combine some unrelated data, nevertheless actually worth taking a appear, whoa did one particular discover about Mid East has got extra problerms at the same time.

Always a major fan of linking to bloggers that I appreciate but do not get a good deal of link like from.

Please check out the web-sites we follow, which includes this a single, because it represents our picks in the web.

Check below, are some absolutely unrelated web sites to ours, on the other hand, they may be most trustworthy sources that we use.

Here are several of the web pages we suggest for our visitors.

Always a massive fan of linking to bloggers that I appreciate but don?t get a good deal of link enjoy from.

Wonderful story, reckoned we could combine a couple of unrelated data, nonetheless definitely really worth taking a search, whoa did a single understand about Mid East has got far more problerms as well.

I got this webb page from my pal who informed mee regarding this website andd aat the moment tuis time I am visiting this site and reading very informative content at this time.My homepage; Skip Hire Brackley

We prefer to honor many other net websites on the internet, even though they aren?t linked to us, by linking to them. Under are some webpages worth checking out.

Here are some hyperlinks to internet sites that we link to due to the fact we assume they may be worth visiting.

Here are some links to sites that we link to for the reason that we believe they’re really worth visiting.

The facts talked about within the article are a number of the ideal readily available.

We like to honor several other web internet sites around the net, even though they aren?t linked to us, by linking to them. Below are some webpages really worth checking out.

The information mentioned within the report are a number of the top accessible.

Below you will come across the link to some internet sites that we assume it is best to visit.

Always a big fan of linking to bloggers that I like but do not get quite a bit of link love from.

Here are some links to internet sites that we link to mainly because we assume they’re really worth visiting.

Although internet websites we backlink to below are considerably not associated to ours, we really feel they may be really worth a go through, so have a look.

Leave a Reply