Archive for the Naiad Category

Context 3 beta 2 (“Usable By Humans”) released

Posted in Appsterdam, consulting, Context, Naiad, Smalltalk, Spoon with tags , , , , , , on 19 October 2012 by Craig Latta

Context 3 beta 2 is released. This one includes the development environment memory from the 3 alpha 3 release, startable from the webpage that the app automatically opens. A remote system browser onto the history memory opens automatically. You can also shut down the development environment from the webpage. It should be fairly easy to get into trouble with this release…

Next, I’ll set up a third memory, a minimal environment which will become Squeak 5. I’ll write instructions for creating unit tests for each package in our community, and imprinting the code run by those tests into the minimal memory, thereby creating a module. We can work toward a release where all the packages anyone might want to load are served by some online history memory, with package metadata searchable with Google.

I’m interviewed on the Smalltalk Inspect podcast

Posted in Appsterdam, consulting, Naiad, Smalltalk, Spoon with tags , , , , , on 1 October 2012 by Craig Latta

Oh! I forgot to mention: I had another fun podcast interview, this time with Joachim Tuchel for the Smalltalk Inspect podcast. Check it out!

Looking forward to fun new visualizations with Cytoscape

Posted in Appsterdam, consulting, Naiad, Smalltalk, Spoon with tags on 18 September 2012 by Craig Latta

Wow, check out Cytoscape. I’ve made some very useful visualizations of Spoon object memory reference graphs before. With Cytoscape I think I’ll be able to illustrate the relative popularity of individual objects. There’s a pleasing synchronicity here, too: Cytoscape was designed for bioinformatics visualization, which jibes nicely with Alan Kay’s notions of message-passing recapitulating biology.

slides from my InnoViz talk today at PICNIC

Posted in Appsterdam, consulting, Naiad, Smalltalk, Spoon with tags , , on 17 September 2012 by Craig Latta

Here are the slides from my presentation today at PICNIC in Amsterdam.

concept: the active filesystem

Posted in Appsterdam, consulting, Naiad, Smalltalk, Spoon with tags , , , , , on 17 September 2012 by Craig Latta

The Spoon history memory’s embedded webserver presents the object memory as a WebDAV filesystem. Classes appear as directories, and methods appear as files in those directories. Developers can mount the filesystem so that it appears normally with the other volumes on their operating system. Because of this, they can also use familiar file-based tools like file browsers and text editors to interact with it. When a file is written with one of these tools, the corresponding method is compiled and installed in the running system. Other side effects can be associated with special locations in the filesystem; for example, when a special “do it” file is written, the expressions in it are evaluated and the answer is written to another special file.

This is an example of an active filesystem: a virtual filesystem with behavior associated with its typical operations. Since the WebDAV server is a Spoon app, we have complete control over the way a virtual filesystem interacts with a user. In particular, we can support commodity tools.

I’m making another active filesystem for the InnoViz project in Amsterdam. This one behaves as a general-purpose database. The class hierarchy still appears as directories, but the methods do not appear. Instead, each class can contain subdirectories representing queries on objects in the database. A query directory contains files indicating the code run by the query, and the objects answered by it. Since queries are just another part of the filesystem, they are persistent and can be reused in another queries by multiple authors. This enables a form of collaborative query.

Users need not be programmers in the traditional sense in order to interact with the database. For example, one may add a new object to the database by editing the another object’s file and saving it under a new name. Still, users who know how to write programs can also interact with the database with their favorite language, they only need to know how to read and write files.

I’m looking forward to finding more use cases for active filesystems…

Context 3 beta 1 released

Posted in Appsterdam, consulting, Context, Naiad, Smalltalk, Spoon with tags , , , , , , on 12 September 2012 by Craig Latta

I’ve released Context 3 beta 1. This is another “ignition check” release. On the Mac, the intended sequence of events is:

  • You double-click on the app.
  • The app is an AppleScript which starts an embedded Context virtual machine, which resumes a web server. The AppleScript also opens a web browser on the web server’s welcome page.
  • The welcome page tells you what to do next (but it currently refers to things which don’t exist).

I’m working on the equivalent magic for Microsoft Windows and GNU/Linux for the next release; suggestions welcome.

Please let me know if the startup sequence works for you, and any questions or comments you have. This is an exciting release, because it’s the first one that could be the basis for a self-supporting community.

Thanks!

Craig

screenshot of Context launcher website

Posted in Appsterdam, consulting, Context, Naiad, Smalltalk, Spoon with tags on 30 August 2012 by Craig Latta

the Spoon launcher website

A description of the default Context workflow.

Posted in Appsterdam, consulting, Context, Naiad, Spoon with tags on 22 August 2012 by Craig Latta

Well, it took a while to evolve into clarity, but here it is…

You get Context by downloading a ZIP file from the net. You install Context by unzipping the ZIP file and putting the resulting all-in-one app folder where you want it to be. You start Context with a simple platform-dependent gesture (on Mac, you double-click the app).

This starts a history memory. This memory can…

  • …speak with web browsers. It presents a simple control interface for starting and stopping the other memories in the app (called “subject memories”), and discovering other memories on the net.
  • …speak with FTEs (Favorite Text Editors). It presents itself as a filesystem via a WebDAV server, so that a person can use their Favorite Text Editor to control the subject memories, edit classes and methods, and evaluate expressions.
  • …speak with the subject memories, to keep track of their development changes.
  • …speak with remote memories, to obtain their modules.

This is available in Context 3 alpha 5, which I plan to release in time for the Camp Smalltalk event in Gent, Belgium on 24 August 2012, ahead of the European Smalltalk Users Group conference the next week.

Context 3 alpha 4 released

Posted in Appsterdam, Context, Naiad, Spoon with tags on 16 August 2012 by Craig Latta

Hi–

I’ve released Context 3 alpha 4, just to fix some VM problems with 3a3. It’s at:

https://dl.dropbox.com/u/15188004/spoon/Spoon-3-alpha-4.zip

Please fire it up and let me know that it starts. We’ve tried it on:

  • Mac OS X 10.8 (Mountain Lion)
  • Ubuntu GNU/Linux 12.04 64-bit
  • Ubuntu GNU/Linux 12.04 32-bit
  • Windows XP SP3
  • Windows 7 64-bit
  • Windows 8

Thanks!
Craig