Magma goes HA!

29 August, 2009

MagmaNode

Chris Muller announced release 42 of Magma to the Squeak-dev mailing list. Magma is a multi-user object database for Squeak and Pharo images and which provides transparent access to a large-scale shared persistent object model. Magma release 42 brings unprecedented scale and availability of persistent domain models to Squeak users.  In particular, a single logical repository can now be served from multiple servers simultaneously, each hosting their own physical copy which are kept constantly up to date automatically.

There’s lots more information, introductory material and documentation at the Magma homepage.

iliad

Nicolas Petton recently announced on the squeak-dev mailing list the first public release of Iliad, which is succintly described on the Iliad website as a “a flexible, lightweight but powerful Smalltalk web framework.” Originally developed on GNU Smalltalk, but ported to Squeak/Pharo, Iliad features:

  • standalone stateful widgets
  • nice urls with a simple routing system
  • simple API
  • easy to setup and deploy (no complicated configuration step)
  • javascript layer to update widgets using AJAX. If javascript is not enabled, the behaviour remains the same by making normal requests
  • support for the Magritte meta-description framework, for simple generation of views on data

Iliad combines elements of the other leading Smalltalk web frameworks Seaside, Aida/Web and HttpView2. You can find out more about the installation and use of Iliad by reading the documentation on the Iliad site, and on the GNU Smalltalk site.

Pier 1.2 now out

14 July, 2009

Pier logo

Lukas Renggli, Tudor Girba and colleagues have been working hard on their Pier web content management system for the past few months, and have now shared the product of their labours with the release of Pier 1.2. Pier is a lightweight web content management system, built on Seaside, and intended to be managed from the browser.

They announced some of the key features of the 1.2 release as:

  • An improved system for including dynamic content in pages (see http://www.piercms.com/doc/syntax for more details)
  • No need to have the _s and _k Seaside parameters in the url (it uses cookies to record state by default)
  • Pier can remember last login information
  • Smaller javascript code for faster page loading
  • Better default CSS (including a style for events)
  • Halos for enhanced editing
  • Available as a one-click install (based on Pharo 0.1-10374)

The one-click image is available for download at the Pier web site, where Tudor has also produced a brief video to get you started with Pier. There are plenty more resources including more videos on the documentation section of the site.

appsavailable

Phil Schiller led the keynote presentation today at Apple’s Worldwide Developers’ Conference. One of the many causes for celebration he had was the phenomonal success of the iPhone App Store, which now has 50,000 applications available for download.

Although he was careful to be even-handed in giving credit to all iPhone developers for helping Apple achieve this success, he must have secretly been thanking John McIntosh, who is turning into a one-man app wave. Without John’s recent batch of new Squeak-based applications, Phil would have been left announcing the much less satisfactory figure of 49,99749,994 applications.

In case you missed it, John’s latest announcement was that his Fraction app is now available for calculations involving unlimited sized fractions and factorials, as it attempts to preserve numerical accuracy to an unprecedented degree. The new app joins the two apps based on his WikiServer that John already has on the App Store.

We look forward to seeing if the notoriously byzantine App Store approval process will be able to keep up with John’s flood of new applications.

Despite recent discussions over what killed Smalltalk, there continues to be lots of interest in the language and in Seaside in particular. Anyone based near London will be able to find out more about both topics at a talk dramatically titled “Seaside: The Revenge of Smalltalk“.

This “Geek Night” is going to cover how Smalltalk makes web development different and how Seaside is being put to use in the “Real World”. Participants will learn about real object-orientated programming rather than class-orientated programming.

The two presenters are Lukas Renggli, who will be talking about Squeak and the world of Open Source Smalltalk; and Michel Bany from Cincom who will be discussing how Seaside and Smalltalk has been used in companies like JP Morgan.

The talk is hosted by Thoughtworks‘ London office on Monday 6th July, 2009 from 7:00pm—10:00pm.

iPhoneApp

Following his success in getting Squeak running on the iPhone last year, John M McIntosh has announced on the Squeak-dev mailing list that he has had two applications approved for the Apple iPhone and iPod Touch App Store.

The two SqueakDocs electronic books, based on Squeak and Seaside, allow users to explore the code and documentation in two Smalltalk images: a 3.10.x Squeak web developer’s image, and a Pharo web developer’s image of late April 2009. They are now available for purchase on the App Store: Squeak version, Pharo version.

The applications use Seaside to render the content to the built-in Safari browser, so they can also present content to other machines on the local network.

John is still waiting for approval to come through soon for WikiServer, a “much more complex application,” which will allow users to view and maintain wiki content on their iPhones.

Andreas Brodbeck has written an interesting blog post detailing his experiences developing, configuring and deploying a Seaside application. He seems to have found it a positive experience; indeed he writes that “Some months ago I decided myself to work with Seaside, and to develop all my upcoming web applications with it, if possible. If not possible, I will fall back to Rails. So far I am very happy with my decision and the current projects.”

Unfortunately the application is not publicly viewable, but he has had to get to grips with a lot of interesting (and potentially troublesome) technologies, including migration to Gemstone, PDF generation, object serialisation using SIXX, running under a 64-bit virtual session, using Cherokee as front-end server, Magritte for presenting data, and of course his own SeaShell deployment helper application.

Congratulations to Andreas, whose application joins many others being developed in Seaside.

seashell

Andreas Brodbeck has posted on the Seaside mailing list that he has had a great experience using Seaside (running on Gemstone) in his business, and in order to give something back to the Seaside community, he’s released a new deployment tool that he’s developed for his own use.

The tool, called “Seashell”, is a shell-based deployment tool for Seaside applications running on Gemstone. The goals of SeaShell are:

  • Handle multiple concurrent gemstone seaside applications (each with its own stone), running on the same server machine.
  • Easy to add tasks for your individual environment and project.
  • Easy to run the tasks from the shell.
  • Fast execution.

Based on Andreas’ own requirements, the tool currently works with Gemstone as seaside server, lighttpd as frontend server and load balancer, everything running on Ubuntu 8.04.1. Andreas says on his blog post about Seashell that “It’s far from complete or rock solid, but I want to share it as early as possible. There is plenty of room to add more tasks for other tools and environments, of course. And I plan to add more features, as soon as I need them. Contributions welcome, of course!”

Soup for Squeak

19 January, 2009

squeaksoup

Zulq Alam has been working on Soup, a Squeak port of Beautiful Soup, the tolerant HTML/XML parser written in Python, which is extremely useful when you need to scrape data from a web page. He has recently announced a working release and gave some example of its usage.

Zulq notes that there’s still plenty of work to do on this port:

  • No attempt is made to deal with different character sets and encodings.
  • The parser will not convert entity or char references.
  • The parser will not accept options such as whether to convert entities, which entities to convert, what to parse, etc.
  • The parser will only do HTML; there are no configurations for other XML flavours yet.

He adds that the project repository is globally writable, and he looks forward to your feedback and contributions.

Squeak goes to Mars

8 January, 2009

mars

Esteban Lorenzano gave Squeakers on Mac OS X a nice little Christmas present to see out 2008, with the release of Mars, an MVC framework for Squeak built using Cocoa. Mars is a plugin, and will run in any fork of Squeak, and as you can see above, is integrated with OmniBrowser.

Esteban notes that one of his main objectives in developing Mars is to keep it small and simple, in order to allow it to be executed in small environments such as the iPhone, (using John McIntosh’s new VM and Edgar de Cleene’s SqueakLightII minimal images).

Mars is MIT licensed, and can be downloaded from the Mars homepage, which also has posts following the progress of Esteban’s work. Esteban adds that Mars is still in the pre-alpha stage, and he looks forward to bug reports, feature requests, comments, and of course, code.