Are there apps in production (not necessarily mega-high volume) that use Magma? Is there a list of these someplace?
Thanks - Sophie
I am aware of two projects undertaken with Magma that are running in a corporate "production" environment. I know there are other significant projects but not necessarily in "production".
I myself am not at liberty to discuss them, but I've linked a new "Magma Projects" page from the home page with a couple of publicly announced projects which I hope their owners and other projects owners will add their entry to the page, that this question may be clarified.
http://wiki.squeak.org/squeak/6030
Thanks.
On Fri, Feb 22, 2008 at 1:41 AM, itsme213 itsme213@hotmail.com wrote:
Are there apps in production (not necessarily mega-high volume) that use Magma? Is there a list of these someplace?
Thanks - Sophie
Magma mailing list Magma@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/magma
Hi!
"Chris Muller" asqueaker@gmail.com wrote:
I am aware of two projects undertaken with Magma that are running in a corporate "production" environment. I know there are other significant projects but not necessarily in "production".
I myself am not at liberty to discuss them, but I've linked a new "Magma Projects" page from the home page with a couple of publicly announced projects which I hope their owners and other projects owners will add their entry to the page, that this question may be clarified.
Yes, Gjallar is in production today for one customer. They may be expanding it a bit. This is a low volume deployment though. We also have one more customer lined up and interested in a highly customized version.
Gjallar uses Magma with a relatively complex model. The architecture around transactions is "non standard" though so one should not use Gjallar as a "typical" example of a Magma app.
regards, Göran
Can you expand on what you mean about the "non standard" part?
On Wed, Feb 27, 2008 at 3:48 AM, goran@krampe.se wrote:
Hi!
"Chris Muller" asqueaker@gmail.com wrote:
I am aware of two projects undertaken with Magma that are running in a corporate "production" environment. I know there are other significant projects but not necessarily in "production".
I myself am not at liberty to discuss them, but I've linked a new "Magma Projects" page from the home page with a couple of publicly announced projects which I hope their owners and other projects owners will add their entry to the page, that this question may be clarified.
Yes, Gjallar is in production today for one customer. They may be expanding it a bit. This is a low volume deployment though. We also have one more customer lined up and interested in a highly customized version.
Gjallar uses Magma with a relatively complex model. The architecture around transactions is "non standard" though so one should not use Gjallar as a "typical" example of a Magma app.
regards, Göran
Magma mailing list Magma@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/magma
Hi!
(hmmm, your base64 encoding makes my Celeste slightly confused)
"Chris Muller" asqueaker@gmail.com wrote:
Can you expand on what you mean about the "non standard" part?
Yes, what I mean is that in Gjallar we have reified all our kinds of database modifications. This means we have a class hierarchy subclassing Q2Txn (Q2 = Gjallar prefix), for example there is a Q2CaseCreateTxn.
So when we create a case in Gjallar we don't do (silly pseudo code coming up) as one would typically do:
session begin. allCases add: aNewCase. session commit.
Instead we do a much more elaborate operation kinda like:
session begin. txn := Q2CaseCreateTxn new. txn subject: 'blabla'; description: 'more text'. "etc etc" txn apply. "this does mainly the same thing as the typical code above" allTransactionsSinceDawnOfTime add: txn. session commit.
...but in a much more elaborate, convoluted way of course only in order to make it really hard for a Gjallar newbie to understand what the heck is going on and thus make the wrong conclusion that using Magma is complicated. :) :)
regards, Göran
Oh yes, you're talking about that Command framework you have. I am very interested in taking a look at that. Is it separable from Gjaller for use in other apps?
On Thu, Feb 28, 2008 at 2:44 AM, goran@krampe.se wrote:
Hi!
(hmmm, your base64 encoding makes my Celeste slightly confused)
"Chris Muller" asqueaker@gmail.com wrote:
Can you expand on what you mean about the "non standard" part?
Yes, what I mean is that in Gjallar we have reified all our kinds of database modifications. This means we have a class hierarchy subclassing Q2Txn (Q2 = Gjallar prefix), for example there is a Q2CaseCreateTxn.
So when we create a case in Gjallar we don't do (silly pseudo code coming up) as one would typically do:
session begin. allCases add: aNewCase. session commit.
Instead we do a much more elaborate operation kinda like:
session begin. txn := Q2CaseCreateTxn new. txn subject: 'blabla'; description: 'more text'. "etc etc" txn apply. "this does mainly the same thing as the typical code above" allTransactionsSinceDawnOfTime add: txn. session commit.
...but in a much more elaborate, convoluted way of course only in order to make it really hard for a Gjallar newbie to understand what the heck is going on and thus make the wrong conclusion that using Magma is complicated. :) :)
regards, Göran _______________________________________________ Magma mailing list Magma@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/magma
Hi!
Oh yes, you're talking about that Command framework you have.
Right. Though they do not offer "undo", that is not their purpose in Gjallar.
I am
very interested in taking a look at that. Is it separable from Gjaller for use in other apps?
Well, I guess you could possibly "extract" some patterns and some code - but it has several specific things:
- The Q2Txn hierarchy is domain specific. This is by design, we want to be able to do conflict detection and "special things" depending on the type of txn. - We have a disconnect/connect procedure in order to make the Q2Txn objects serializable and transferable from one Gjallar to another. This is for the offline/synch operation. We disconnect the txns, serialize them using SmartRefStream IIRC, gzip it and send it off using a SOAP call with a ByteArray argument. - Plus probably numerous other small details.
But sure, it might be useful depending on context. :) Feel free to ask more. Or suck down Gjallar and take a looki. :)
regards, Göran
magma@lists.squeakfoundation.org