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? |
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]>
Bernat Romagosa. |
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? |
you could use cloudfoundry for that :)
Esteban
On Jan 26, 2013, at 12:25 PM, Stéphane Ducasse <[hidden email]> wrote:
|
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 |
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 > |
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 |
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 :-) |
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 |
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. |
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 > |
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
|
In reply to this post by Andy Burnett
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?
|
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 |
>>
> > 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 |
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 |
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 |
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 |
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?
|
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. |
Free forum by Nabble | Edit this page |