Phaas - anyone interested in setting up Pharo as a Service?

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

Phaas - anyone interested in setting up Pharo as a Service?

Andy Burnett
We would love to develop more of our ideas in Pharo, but we are completely allergic to doing sys admin. We don't want to deal with anything below the Pharo application level. What I would ideally like to see if something like Heroku, or similar, but for Pharo. However, just wishing won't make it happen, so I am wondering if there is anyone out there who is thinking about this, and whether there are enough of us to constitute are market.

Our requirements are pretty simple. We need a way of uploading an image, and some standard for of persistence. At this point, we would be perfectly happy to make compromises by agreeing that it had to be e.g. Mongo or whatever (although ideally it would be gemstone). We just want to make some progress on this.

Personally, I think lots of bits are coming together. We now have various persistence options, websockets (both in Zinc and Aida-web), OAuth ( in both places again), and lots of other exciting elements. We just want a really simple way to take advantage of them.

Does anyone else feel this need?
Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

Bernat Romagosa
I'd be so happy if something like this existed. However, I'm not sure there are enough Pharo webdevs to make a service like that profitable...

But yes, I do feel this need! I'm sick of configuring VPSes with their apache virtual hosts, DBs, etc.


2013/1/26 Andy Burnett <[hidden email]>
We would love to develop more of our ideas in Pharo, but we are completely allergic to doing sys admin. We don't want to deal with anything below the Pharo application level. What I would ideally like to see if something like Heroku, or similar, but for Pharo. However, just wishing won't make it happen, so I am wondering if there is anyone out there who is thinking about this, and whether there are enough of us to constitute are market.

Our requirements are pretty simple. We need a way of uploading an image, and some standard for of persistence. At this point, we would be perfectly happy to make compromises by agreeing that it had to be e.g. Mongo or whatever (although ideally it would be gemstone). We just want to make some progress on this.

Personally, I think lots of bits are coming together. We now have various persistence options, websockets (both in Zinc and Aida-web), OAuth ( in both places again), and lots of other exciting elements. We just want a really simple way to take advantage of them.

Does anyone else feel this need?



--
Bernat Romagosa.
Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

Stéphane Ducasse
In reply to this post by Andy Burnett

On Jan 25, 2013, at 10:02 PM, Andy Burnett wrote:

> We would love to develop more of our ideas in Pharo, but we are completely allergic to doing sys admin. We don't want to deal with anything below the Pharo application level. What I would ideally like to see if something like Heroku, or similar, but for Pharo. However, just wishing won't make it happen, so I am wondering if there is anyone out there who is thinking about this, and whether there are enough of us to constitute are market.

It would be so great!

This is a big orthogonal but I know that laurent laffont worked on Harbor. The idea was to provide a better Seaside hosting in the same that you could install it in an easier manner on your machine.

I imagine that the work done by nicolas P and mariano/esteban around mongo, fuel… fit perfectly.

>
> Our requirements are pretty simple. We need a way of uploading an image, and some standard for of persistence. At this point, we would be perfectly happy to make compromises by agreeing that it had to be e.g. Mongo or whatever (although ideally it would be gemstone). We just want to make some progress on this.
>
> Personally, I think lots of bits are coming together.

Yes me too.

> We now have various persistence options, websockets (both in Zinc and Aida-web), OAuth ( in both places again), and lots of other exciting elements. We just want a really simple way to take advantage of them.
>
> Does anyone else feel this need?


Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

EstebanLM
you could use cloudfoundry for that :)


Esteban 

On Jan 26, 2013, at 12:25 PM, Stéphane Ducasse <[hidden email]> wrote:


On Jan 25, 2013, at 10:02 PM, Andy Burnett wrote:

We would love to develop more of our ideas in Pharo, but we are completely allergic to doing sys admin. We don't want to deal with anything below the Pharo application level. What I would ideally like to see if something like Heroku, or similar, but for Pharo. However, just wishing won't make it happen, so I am wondering if there is anyone out there who is thinking about this, and whether there are enough of us to constitute are market.

It would be so great!

This is a big orthogonal but I know that laurent laffont worked on Harbor. The idea was to provide a better Seaside hosting in the same that you could install it in an easier manner on your machine.

I imagine that the work done by nicolas P and mariano/esteban around mongo, fuel… fit perfectly.


Our requirements are pretty simple. We need a way of uploading an image, and some standard for of persistence. At this point, we would be perfectly happy to make compromises by agreeing that it had to be e.g. Mongo or whatever (although ideally it would be gemstone). We just want to make some progress on this.

Personally, I think lots of bits are coming together.

Yes me too.

We now have various persistence options, websockets (both in Zinc and Aida-web), OAuth ( in both places again), and lots of other exciting elements. We just want a really simple way to take advantage of them.

Does anyone else feel this need?



Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

Andy Burnett
In reply to this post by Andy Burnett
<I am merging my responses to Bernat and Stephane>

I agree that there are probably too few webdevs to make this viable -
yet :-). However, we may be able to build on other people's work.

For example, I have been quite impressed by OpenShift. I wondered if
someone could create a Pharo (or gemstone) cartridge. That would then
give us access to the rest if their system. It might then allow anyone
to set up their own system, just by using that cartridge.

Obviously, someone would need to keep the cartridge up to date etc,
and maybe a first step would be to adapt the work on Harbour to make
image uploading easier.

At this point, as I am sure you can tell, I am way beyond my
expertise, so I am just guessing. However, it does seem as though
people - such as redhat - are doing a lot if the work for us, and it
could be smart to build on their structures.

Has anyone tried creating a cartridge? Or would someone like to try? I
am happy to sponsor part of this, if that helps.

Cheers
Andy

Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

EstebanLM
he, sorry for insist, but cloudfoundry already does that... and is opensource too :)
at ESUG I seen James present it to deploy pharo images... so is viable :)

cheers,
Esteban


On Jan 26, 2013, at 1:52 PM, Andy Burnett <[hidden email]> wrote:

> <I am merging my responses to Bernat and Stephane>
>
> I agree that there are probably too few webdevs to make this viable -
> yet :-). However, we may be able to build on other people's work.
>
> For example, I have been quite impressed by OpenShift. I wondered if
> someone could create a Pharo (or gemstone) cartridge. That would then
> give us access to the rest if their system. It might then allow anyone
> to set up their own system, just by using that cartridge.
>
> Obviously, someone would need to keep the cartridge up to date etc,
> and maybe a first step would be to adapt the work on Harbour to make
> image uploading easier.
>
> At this point, as I am sure you can tell, I am way beyond my
> expertise, so I am just guessing. However, it does seem as though
> people - such as redhat - are doing a lot if the work for us, and it
> could be smart to build on their structures.
>
> Has anyone tried creating a cartridge? Or would someone like to try? I
> am happy to sponsor part of this, if that helps.
>
> Cheers
> Andy
>


Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

Janko Mivšek
In reply to this post by Andy Burnett
Hi Andy,

Dne 26. 01. 2013 02:02, piše Andy Burnett:

> We would love to develop more of our ideas in Pharo, but we are
> completely allergic to doing sys admin. We don't want to deal with
> anything below the Pharo application level. What I would ideally like to
> see if something like Heroku, or similar, but for Pharo. However, just
> wishing won't make it happen, so I am wondering if there is anyone out
> there who is thinking about this, and whether there are enough of us to
> constitute are market.
>
> Our requirements are pretty simple. We need a way of uploading an image,
> and some standard for of persistence. At this point, we would be
> perfectly happy to make compromises by agreeing that it had to be e.g.
> Mongo or whatever (although ideally it would be gemstone). We just want
> to make some progress on this.
>
> Personally, I think lots of bits are coming together. We now have
> various persistence options, websockets (both in Zinc and Aida-web),
> OAuth ( in both places again), and lots of other exciting elements. We
> just want a really simple way to take advantage of them.
>
> Does anyone else feel this need?

Certainly!

Smalltalk as a dynamic language with environment which enables
applications to grow organically (saying simpler: to be updated while
running) has actually a big potential in the cloud. To provide web
services via REST APIs to the so called front-end clients like mobile
apps or client-side web apps. And yes, we have now adequate support for
REST API services, including OpenID for authentication and OAuth for
authorization. Maybe OpenID/OAuth server would be also nice..

You are probably aware of work by Gemstone guys, specially by James
Foster, to put Smalltalk web app on the CloudFoundry [1]. This can be
the start and their experiences adapting Gemstone to work in existing
cloud infrastructure is valuable to tho the same with Pharo.

I'd also go adapting Pharo to some existing cloud infrastructure like
Amazon, Heroku, CloudFoudry, ... We seems to don't have enough resources
to build and maintain our own ones, as experience with our hosting
attempts so far shows. It would be also long-term better to join the
cloud wave instead building our own replicas. Because a whole IT world
goes that way.

Best regards
Janko

[1] Preparing Smalltalk for Cloud Foundry
http://programminggems.wordpress.com/2012/02/14/preparing-smalltalk-for-cloud-foundry/

--
Janko Mivšek
Aida/Web
Smalltalk Web Application Server
http://www.aidaweb.si

Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

Andy Burnett
In reply to this post by Andy Burnett
>
> you could use cloudfoundry for that :)
>
> http://www.cloudfoundry.org/
>
> Esteban

Yup, cloudfoundry could be great too. Particularly if it made it
easier to get gemstone running.

I think it is important that we try to reach a consensus on this,
purely to minimise duplicated work. It would be great if - for example
- the pharo consortium were able to issue a new cartridge when they
issue a new pharo release. So that the hosted version of pharo is
automatically kept up to date.

My vision is that we end up with a one-click hosting model in just the
same way we have one click pharo. That would be fantastic :-)

Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

Andy Burnett
In reply to this post by Andy Burnett
> he, sorry for insist, but cloudfoundry already does that... and is opensource too :)
> at ESUG I seen James present it to deploy pharo images... so is viable :)
>
> cheers,
> Esteban
>

I agree. And, I was really quite optimistic about cloud foundry when
it first came out. I particularly like the way you can have a local
micro cloud, and then transition to the hosted cloud. My only
disappointment was that VMware are not - seemingly - going to offer
gemstone as an option on cloudfoundry.com.
Building on what Janko said, I think it is really important to join
the cloud 'wave'.

The question is how might we - collectively - make this happen? I am
perfectly happy to go with cloud foundry, or open shift, or any other
option if more knowledgeable people can show that X is the way to go.
My only requirement is that I don't want to deal with anyone lower
than pharo. All OS patches need to be done automagically by the
hosting provider. I think cloudfoundry.com and open shift do that, but
my understanding of cloudfoundry.org is that this is a 'roll it
yourself' solution. Obviously, that would require someone to step up
and do that for us.
My preference would be for us to create a suitably configured module
for one of e platforms, and we can then start getting experience with
it.  Stephane, is this something that the consortium might take a lead
on? My company is happy to pay some of the costs, if this will help.

Cheer
Andy

Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

fstephany
In reply to this post by Andy Burnett


On 26/01/13 02:02, Andy Burnett wrote:
> Our requirements are pretty simple. We need a way of uploading an image,
> and some standard for of persistence. At this point, we would be
> perfectly happy to make compromises by agreeing that it had to be e.g.
> Mongo or whatever (although ideally it would be gemstone). We just want
> to make some progress on this.

I would prefer to upload a MetacelloConfiguration (or something similar)
instead of an image.

I like to think about the image as a temporary runtime. Not something
where I store code or someting I deploy. I would love to have something
like:

     $ pharo -v 1.4-summer myProject.ston

where myProject.ston would contain all the necessary information to load
my project (dependencies, repositories, etc). This command would create
an image with my project on the fly from a stock Pharo 1.4-summer and
launch it. It would recreate the image everytime I want to work on my
project (or when it is deployed).

The problem right now is the loading time for dependencies (try to load
seaside in a pristine image, you'll get the point). All the other bricks
are there.

Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

Stéphane Ducasse
In reply to this post by Andy Burnett
andy

thanks for this discussion. It would be good to raise a kind of consensus because this is an effort that the association
could support.

Stef

On Jan 26, 2013, at 11:41 AM, Andy Burnett wrote:

>> he, sorry for insist, but cloudfoundry already does that... and is opensource too :)
>> at ESUG I seen James present it to deploy pharo images... so is viable :)
>>
>> cheers,
>> Esteban
>>
>
> I agree. And, I was really quite optimistic about cloud foundry when
> it first came out. I particularly like the way you can have a local
> micro cloud, and then transition to the hosted cloud. My only
> disappointment was that VMware are not - seemingly - going to offer
> gemstone as an option on cloudfoundry.com.
> Building on what Janko said, I think it is really important to join
> the cloud 'wave'.
>
> The question is how might we - collectively - make this happen? I am
> perfectly happy to go with cloud foundry, or open shift, or any other
> option if more knowledgeable people can show that X is the way to go.
> My only requirement is that I don't want to deal with anyone lower
> than pharo. All OS patches need to be done automagically by the
> hosting provider. I think cloudfoundry.com and open shift do that, but
> my understanding of cloudfoundry.org is that this is a 'roll it
> yourself' solution. Obviously, that would require someone to step up
> and do that for us.
> My preference would be for us to create a suitably configured module
> for one of e platforms, and we can then start getting experience with
> it.  Stephane, is this something that the consortium might take a lead
> on? My company is happy to pay some of the costs, if this will help.
>
> Cheer
> Andy
>


Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

Andy Burnett
In reply to this post by Andy Burnett
<<<
I would prefer to upload a MetacelloConfiguration (or something similar)
instead of an image.

I like to think about the image as a temporary runtime. Not something
where I store code or someting I deploy. I would love to have something
like:

     $ pharo -v 1.4-summer myProject.ston

where myProject.ston would contain all the necessary information to load
my project (dependencies, repositories, etc). This command would create
an image with my project on the fly from a stock Pharo 1.4-summer and
launch it. It would recreate the image everytime I want to work on my
project (or when it is deployed).

The problem right now is the loading time for dependencies (try to load
seaside in a pristine image, you'll get the point). All the other bricks
are there.>>>

Sounds like a very good idea. Does anything like that exist already? Also, it raises the question of what should be in the base image.

Cheers
Andy
Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

Andy Burnett
In reply to this post by Andy Burnett





andy

thanks for this discussion. It would be good to raise a kind of consensus because this is an effort that the association
could support.

Stef



Should we move this discussion somewhere else, perhaps a google+ group?  I would like to suggest that anyone who is interested joins, and we can produce a first attempt at a plan - and maybe some running code :-).  Anyone else interested? 

Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

fstephany
In reply to this post by Andy Burnett


On 26/01/13 21:38, Andy Burnett wrote:

> <<<
> I would prefer to upload a MetacelloConfiguration (or something similar)
> instead of an image.
>
> I like to think about the image as a temporary runtime. Not something
> where I store code or someting I deploy. I would love to have something
> like:
>
>       $ pharo -v 1.4-summer myProject.ston
>
> where myProject.ston would contain all the necessary information to load
> my project (dependencies, repositories, etc). This command would create
> an image with my project on the fly from a stock Pharo 1.4-summer and
> launch it. It would recreate the image everytime I want to work on my
> project (or when it is deployed).
>
> The problem right now is the loading time for dependencies (try to load
> seaside in a pristine image, you'll get the point). All the other bricks
> are there.>>>
>
> Sounds like a very good idea. Does anything like that exist already?
> Also, it raises the question of what should be in the base image.

I'm not aware of any.
Tanker[1] + Metacello are maybe an answer for the loading time issue.


[1]: http://marianopeck.wordpress.com/2012/09/28/new-tanker-current-status/

--
http://tulipemoutarde.be
+32 65 709 131

Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

Stéphane Ducasse
>>
>
> I'm not aware of any.
> Tanker[1] + Metacello are maybe an answer for the loading time issue.
>
>
> [1]: http://marianopeck.wordpress.com/2012/09/28/new-tanker-current-status/

But it requires some work to make it production ready.
I do not think that you need ston. You plain smalltalk code is good enough to trigger the correct metacello file.

metacello is key for the projects dependency management and complex projects.
Once we will have the continuous validation of pckage ready + binary loader we will get ready for a new phase
in Pharo.

Stef
Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

jgfoster
In reply to this post by fstephany
On Jan 26, 2013, at 7:30 AM, Francois Stephany <[hidden email]> wrote:

> On 26/01/13 02:02, Andy Burnett wrote:
>> Our requirements are pretty simple. We need a way of uploading an image,
>> and some standard for of persistence. At this point, we would be
>> perfectly happy to make compromises by agreeing that it had to be e.g.
>> Mongo or whatever (although ideally it would be gemstone). We just want
>> to make some progress on this.
>
> I would prefer to upload a MetacelloConfiguration (or something similar) instead of an image.

I built CloudFoundry so that you uploaded a .st file (in my ESUG example it was 'aida.st') that was used to build the image. The server executed the .st file and saved the resulting image (it could load .mcz files directly or execute a Metacello script). Whenever your application was needed, a copy of the saved image was used.

James Foster


Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

EstebanLM
In reply to this post by Stéphane Ducasse
also... the capability to upload images is not contrary to the capability to prepare them before put them online :)

I imagine it could be an "incremental" process: first a service to put images online, after a service to prepare them :)

btw, I think you'll need a special vm (the guys from netstyle have a custom vm in seasidehosting, for security issues (onether btw: we should have a CMakeMaker config to produce such a special VM... and a jenkins job... well, dreams...)

cheers,
Esteban

On Jan 27, 2013, at 3:41 AM, Stéphane Ducasse <[hidden email]> wrote:

>>>
>>
>> I'm not aware of any.
>> Tanker[1] + Metacello are maybe an answer for the loading time issue.
>>
>>
>> [1]: http://marianopeck.wordpress.com/2012/09/28/new-tanker-current-status/
>
> But it requires some work to make it production ready.
> I do not think that you need ston. You plain smalltalk code is good enough to trigger the correct metacello file.
>
> metacello is key for the projects dependency management and complex projects.
> Once we will have the continuous validation of pckage ready + binary loader we will get ready for a new phase
> in Pharo.
>
> Stef


Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

fstephany
In reply to this post by jgfoster


On 27/01/13 07:04, James Foster wrote:

> On Jan 26, 2013, at 7:30 AM, Francois Stephany <[hidden email]> wrote:
>
>> On 26/01/13 02:02, Andy Burnett wrote:
>>> Our requirements are pretty simple. We need a way of uploading an image,
>>> and some standard for of persistence. At this point, we would be
>>> perfectly happy to make compromises by agreeing that it had to be e.g.
>>> Mongo or whatever (although ideally it would be gemstone). We just want
>>> to make some progress on this.
>>
>> I would prefer to upload a MetacelloConfiguration (or something similar) instead of an image.
>
> I built CloudFoundry so that you uploaded a .st file (in my ESUG example it was 'aida.st') that was used to build the image. The server executed the .st file and saved the resulting image (it could load .mcz files directly or execute a Metacello script). Whenever your application was needed, a copy of the saved image was used.

That sounds great.

http://programminggems.wordpress.com/2012/02/17/adding-smalltalk-to-cloud-foundry/

http://programminggems.wordpress.com/2012/02/27/using-mysql-in-aida-on-pharo/

https://programminggems.wordpress.com/2012/02/28/using-mysql-from-smalltalk-in-cloud-foundry/

Are the three articles describing it :)

Thanks James


Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

Geert Claes
Administrator
While it is great that one can actually use Smalltalk in Cloud Foundry ... it does require a lot of steps to get it going.  Having said that  reckon it would be interresting to have an easy to use Pharo-as-a-Service.  For persistence maybe rely on things like MongoLab or MongoHQ so you don't have to worry about that?

Reply | Threaded
Open this post in threaded view
|

Re: Phaas - anyone interested in setting up Pharo as a Service?

Nick Smith
In reply to this post by Andy Burnett
This is very timely.  For last three years I have been trying to get my Rails developer friend (they build fairly large scale educational products) to take a look at Pharo/Seaside/Gemstone... and, funnily enough, the last time we discussed this was 3 days ago over lunch at our local Cafe.  

But this time he didn't say anything.  He just passed me his iPad and showed me the Heroku app managing live performance and services of their applications, with real time monitoring for any latency or bottlenecks issues.  He told me they could not seriously consider moving to another language/framework without the same peace of mind of knowing the back-end was well taken care of, so they could focus on development... and know that scaling their applications was no longer an issue.

It seems that for most enterprises, hosted 'back-end management' is now the single most important factor in the decision making process of what language/framework to go with.
12