GLASS 2.0Dale Henrichs  VMware, Inc.  ESUG 2011Edinburgh, Scotland   August 22, 2011
GLASS 2.0●   Overview of GLASS●   VMware Cloud Foundry●   tODE demo
What is GLASS?●   A platform for deploying web-based Smalltalk    applications in GemStone/S       –   Develop in Squeak/P...
Why use GLASS?●   GemStone/S is a high performance, high    reliability alternative when your web application    outgrows ...
Transparent Persistence●   GemStone is based on same persistence    model used in Squeak/Pharo       –   Objects rooted in...
Transparent Persistence (contd)●   GemStone transaction logic is embedded in the    web framework       –   Abort/Commit o...
Transparent Concurrency●   On commit, GemStone merges changes to    object graph with latest view in repository        –  ...
VMware Cloud Foundry●   Cloud Foundry is a platform for building,    deploying, and running cloud-based apps       –   Clo...
Cloud Foundry and GLASS●   We are actively integrating GemStone/S and    Maglev into Cloud Foundry framework●   Plans to i...
tODE      the Object-centric Development               Environment●   A Proof of Concept for a Smalltalk IDE that runs    ...
Why tODE?●   tODE was created to provide the Smalltalk IDE    for deployed web-applications       –   The traditional Smal...
tODE paradigm●   Modeled on a web browser – tODE is an    “Image Browser”       –   URL is a Smalltalk expression       – ...
Navigation PaneHistory PaneSidebarPanePane contentsFrame Pane - Evaluate Smalltalkaspect of the current object   History b...
tODE Demo
Conclusion●   Successful Proof of Concept       –   Functional ...       –   Simple, extensible framework       –   Need a...
Future work●   tODE       –   Head towards alpha release●   GemStone/S for Cloud Foundry       –   Keep an eye out for fur...
Upcoming SlideShare
Loading in...5
×

Glass 2.0

1,187

Published on

Glass 2.0


smalltalk, esug2011, oop, esug, 2011

Published in: Technology, Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,187
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
5
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Glass 2.0

  1. 1. GLASS 2.0Dale Henrichs VMware, Inc. ESUG 2011Edinburgh, Scotland August 22, 2011
  2. 2. GLASS 2.0● Overview of GLASS● VMware Cloud Foundry● tODE demo
  3. 3. What is GLASS?● A platform for deploying web-based Smalltalk applications in GemStone/S – Develop in Squeak/Pharo, Deploy in GemStone ● OmniBrowser-based development tools ● Compatibility layer for the Squeak and Pharo code base ● Many popular projects ported to GemStone/S
  4. 4. Why use GLASS?● GemStone/S is a high performance, high reliability alternative when your web application outgrows a single vm – With the “transparent persistence” and “transparent concurrency” features of GLASS ● Add multi-vm persistence to web app without changes to your source code – Free for commercial use
  5. 5. Transparent Persistence● GemStone is based on same persistence model used in Squeak/Pharo – Objects rooted in “Smalltalk” are considered persistent● GemStone uses transactions instead of “save image” in Squeak/Pharo – commit ● Changed objects in vm saved to repository – abort ● Entire object graph in vm updated to current view – Dropping any changes on the floor
  6. 6. Transparent Persistence (contd)● GemStone transaction logic is embedded in the web framework – Abort/Commit on HTPP request boundaries ● Fresh view at start, changes saved to disk before user sees response● No additional application-level code needed
  7. 7. Transparent Concurrency● On commit, GemStone merges changes to object graph with latest view in repository – if two vms concurrently update same object ● Commit conflict thrown● Conflict management code embedded web framework – On conflict HTTP request is retried ● As if request had been delayed in arriving● No additional application-level code needed
  8. 8. VMware Cloud Foundry● Cloud Foundry is a platform for building, deploying, and running cloud-based apps – CloudFoundry.com is a complete, hosted environment offered by VMware – CloudFoundry.org is an open source project
  9. 9. Cloud Foundry and GLASS● We are actively integrating GemStone/S and Maglev into Cloud Foundry framework● Plans to include support for Seaside/Aida/Iliad/Pier● When finished well have cloud-based hosting service for GLASS – Will make deploying to GemStone/S even easier
  10. 10. tODE the Object-centric Development Environment● A Proof of Concept for a Smalltalk IDE that runs in a web browser – Written in Seaside – Ported to Pharo and GemStone – MIT license● A small, powerful framework that is easy to customize
  11. 11. Why tODE?● tODE was created to provide the Smalltalk IDE for deployed web-applications – The traditional Smalltalk GUI is too slow when used across the WAN – Limited access to machines running in cloud ● HTTP access only in Cloud Foundry● Smalltalk without an IDE? – No way!
  12. 12. tODE paradigm● Modeled on a web browser – tODE is an “Image Browser” – URL is a Smalltalk expression – LINKs follow object references – HISTORY is a stack of object references – PAGE is a set of tabbed PANES for an object – PANE contains a rendered aspect of the object
  13. 13. Navigation PaneHistory PaneSidebarPanePane contentsFrame Pane - Evaluate Smalltalkaspect of the current object History by when frames/objects List pane, a renderer Select tab visitedneeded Drawn of to view Expressions - - View, Help, Inspect, Class and Method Back button is derived from a specification in a pragma method The renderer - Search - etc.
  14. 14. tODE Demo
  15. 15. Conclusion● Successful Proof of Concept – Functional ... – Simple, extensible framework – Need a (web framework) neutral rendering language – Need a bit of CSS and javascript polish
  16. 16. Future work● tODE – Head towards alpha release● GemStone/S for Cloud Foundry – Keep an eye out for further info● For more info – http://seaside.gemstone.com/ – http://cloudfoundry.org/ – http://code.google.com/p/tode/ – http://gemstonesoup.wordpress.com
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×