[Glass] Silly question: what is "GLASS"?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

[Glass] Silly question: what is "GLASS"?

GLASS mailing list
There seems to be some ambiguity as to what the term GLASS refers to.

On http://seaside.gemtalksystems.com/ it refers to GemStone, Linux,
Apache, Seaside, and Smalltalk. In other words it just seems to be a
catchy overarching name for the practice of providing web systems by
running Seaside on GemStone (as opposed to, say, using Ruby on Rails). In
that sense of the word, it seems to me when you've successfully loaded
Seaside on some version of GemStone, you've got GLASS.

But then there's GLASS1, the Metacello project, published at
github://glassdb/glass:master/repository, which is apparently something
newer than GLASS,which is published elsewhere, even though GLASS1's
repository is not called github://glassdb/glass1, somewhat confusingly.

I've always asssumed that GLASS/GLASS1 is just a collection of low-level
dependencies needed to load Seaside on GemStone. But isn't that also what
Grease is, in a way?

The GLASS readme says how to load it, but not what it *is*, or when you
may want to load it.

On the other hand, the Seaside 3.1 installation instructions say to use
GsUpgrader to upgradeGrease, and no mention of using it to upgradeGLASS1.

So if GLASS1 isn't needed for Seaside, what is it for?

Sorry for such a silly question by a member of a mailing list that is,
after all, called "GLASS" ;-)

_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: [Glass] Silly question: what is "GLASS"?

Richard Sargent
Administrator
It's not a silly question. The answer has been in flux almost from the beginning.

GLASS originally was an appliance, a complete ready to use VM. The process for creating the VM was manual and very labour intensive. Consequently, the GLASS appliance was stale almost from the beginning.

Over the last several years, Dale has been working to change the situation and make all these other tools - like seaside - work with GemStone simply and easily. The expectation was that one would always update their installed appliance with (perhaps) the latest versions of everything, including GemStone/S itself.

And of course, some people didn't want to use the appliance, especially as it fell further and further behind the times. So they've been working with the software, but not the appliance.

Relatively recently, Dale created GLASS1, as a stepping stone along the way to the end game. We're not there yet, but getting closer.

GsUpdater came along partly because Metacello cannot readily update itself while running to load newer versions of things. It also accommodates the many different versions of the GemStone/S server product supporting "GLASS" - from 2.x onward. Just loading packages isn't enough.

Very recently, Dale's brought out GsDevKit which is a set of stepping stones on that path mentioned above. I *think* when GsDevKit is complete, we will be at that endgame where everyone can readily and easily use GemStone and all the other tools that go into making a good web application. That endgame is very close now!


[I'm sure Dale can fill in many holes in the above. But the summary is "work in progress, transitional elements, nearly finished".]
Reply | Threaded
Open this post in threaded view
|

Re: [Glass] Silly question: what is "GLASS"?

GLASS mailing list
Like “LAMP” (Linux, Apache, MySql, PHP/Perl/Python), “GLASS” can be viewed as little more than a marketing acronym (initially for GemStone, Linux, Apache, Seaside, Smalltalk). And just as the “P” in LAMP is flexible, in GLASS Linux can be replaced with Mac, Apache can be replaced with the web server of your choice, and Seaside can be replaced with the web framework of your choice.

> On Feb 4, 2015, at 2:11 PM, Richard Sargent via Glass <[hidden email]> wrote:
>
> The answer has been in flux almost from the beginning.

_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: [Glass] Silly question: what is "GLASS"?

GLASS mailing list
In reply to this post by GLASS mailing list
Sorry Pieter, your message ended up in my spam folder (thank you google)
and I didn't know there was a pending message until Richard and James
replied...

On 2/3/15 11:40 PM, Pieter Nagel via Glass wrote:
> There seems to be some ambiguity as to what the term GLASS refers to.
>
> On http://seaside.gemtalksystems.com/ it refers to GemStone, Linux,
> Apache, Seaside, and Smalltalk. In other words it just seems to be a
> catchy overarching name for the practice of providing web systems by
> running Seaside on GemStone (as opposed to, say, using Ruby on Rails). In
> that sense of the word, it seems to me when you've successfully loaded
> Seaside on some version of GemStone, you've got GLASS.
...and that was the genesis of the original name. Over time GLASS has
migrated from an acronym to just a name and not a very good one at that:)
>
> But then there's GLASS1, the Metacello project, published at
> github://glassdb/glass:master/repository, which is apparently something
> newer than GLASS,which is published elsewhere, even though GLASS1's
> repository is not called github://glassdb/glass1, somewhat confusingly.
GLASS1 was created because of a technicality in using Metacello. I
wanted to move the entire GLASS repository to github, but if I moved it
to github and retained the project name GLASS i would have to use the
same configuration: ConfigurationOfGLASS, but because a configuration
class has to be loaded before you can load the code from the
configuration and referencing a github repository from a configuration
requires that a new version of Metacello be loaded and because I insist
of supporting older versions of GemStone (like GemStone 2.4.4.1) with
the latest versions of GLASS, it was just easier to rename the project
ot GLASS1 and manage it with ConfigurationOfGLASS1 ...

I am in the process of re-branding GLASS/GLASS1 to GsDevKit and
eventually the BaselineOfGsDevKit will be used to load GsDevKit and I
will create a version of GsUpgrader that exunges the GLASS/GLASS1
configurations and baselines.
>
> I've always asssumed that GLASS/GLASS1 is just a collection of low-level
> dependencies needed to load Seaside on GemStone. But isn't that also what
> Grease is, in a way?
GLASS has actually turned into a compatibility layer between the base
GemStone class library and Pharo/Squeak. Grease is a compatibility layer
for Seaside, but GLASS goes farther than that. GLASS provides support
for Monticello and fairly big chunks of the Pharo/Squeak class library
above and beyond those required for Seaside.
>
> The GLASS readme says how to load it, but not what it *is*, or when you
> may want to load it.
I am a software developer, not a marketeer:)
>
> On the other hand, the Seaside 3.1 installation instructions say to use
> GsUpgrader to upgradeGrease, and no mention of using it to upgradeGLASS1.
>
> So if GLASS1 isn't needed for Seaside, what is it for?
The Seaside configurations now have a dependency upon GLASS1. So there
is no need to explicitly load GLASS1 before Seaside ... But Seaside
definitely depends upon GLASS1. All of the projects that have been
ported to GemStone should be using the latest version of GLASS1.

#upgradeGrease is needed because there were some issues with getting
Seaside to load the proper version of Grease ... at the end of the day,
the best{?} solution was to explicitly load the proper version of Grease
and then use 'lock' to ensure that the proper version continued to be used.

#upgradeGrease also loads the latest version of Metacello which is critical.

As I said earlier, I support GemStone 2.4.4.1 which dates back to
sometime in 2009, when Metacello was first invented and it is
particularly hard to use Metacello to upgrade Metacello especially when
the bug that you are trying to fix prevents Metacello from properly
loading ... so the whole GsUpgrader class is designed to allow me to
make sure that things are loaded in the proper sequence without exposing
the relatively complicated sequence to you guys ... The existence of
GsUpgrader has made it much simpler to write the load instructions:)

>
> Sorry for such a silly question by a member of a mailing list that is,
> after all, called "GLASS" ;-)
No problem ... over the years the marketing and technical material for
GLASS has migrated from my blog to google code and a website or two ...

The GsDevKit initiative is an attempt by me to pull all of the material
into one place[1], but as Richard pointed out, it is a work in progress:)

Dale

[1]
https://github.com/GsDevKit/gsDevKitHome#open-source-development-kit-for-gemstones-64-bit-
_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass