Presentation of rackincloud.com (new Pharo hosting)

M
mikefilonov
Tue, Aug 13, 2013 3:04 PM

Hello,

My name is Mikhail Filonov and I am here to present my project "RackInCloud
– virtual appliance hosting" to the community.

Some time ago I created several Seaside applications and faced with the fact
that it was quite a job to host them. After couple futile attempts I could
not find any satisfied Seaside-hosting solution. Other option, running and
configuring a VPS with Pharo/Seaside seemed like a non-trivial task that
requires some skills.

You should be very motivated to host your seaside application, right?

I'm sure, this kind of troubles might be a huge barrier for people who want
to try Smalltalk. I believe existence of easy Smalltalk hosting is an
essential addition to Seaside with its beauty and power, which in its turn
should attract more people to the community.

At the time being I know several ways on how this issue could be solved.

First of the existent solution – seasidehosting.st. This project has several
strong constraints on its use though, which limit possible applications it
hosts. Frankly speaking, I also don’t share the way their management is
organized: it is really not obvious for new user how to deploy and manage
your Smalltalk image. Another trouble with seasidehositing.st is that it is
a little bit outdate:
http://forum.world.st/Pharo-dev-rackincloude-seaside-hosting-tp4701427p4701490.html.

The promising successor of seasidehositing.st – the smalltalkharbour project

  • seemed to set a very good set of aims for them:
    http://smallharbour.seasidehosting.st/seaside/seaside/seaside/seaside/seaside/pier/project.
    However it seems that smalltalkharbour team chose a very long road to the
    success and now this promising project is dead: the last news is dated with
    11 August 2011, their main site does not respond. Moreover as for me, the
    way of management that is set by seasidehositing.st is not very convenient.
    For example, it is not possible to use monticello to update my application
    on hosting or to use external services like MySql or mongodb. Moreover there
    is a performance concern: by moving memory- and processes- expensive tasks
    from Smalltalk to other services, Seaside might be used with all its beauty
    and speed for Web font-end development. Even Seaside developers share this
    approach by recommending to move "static file sharing" task outside of
    Smalltalk to Apache server:
    http://book.seaside.st/book/in-action/serving-files.

So when we talk about Smalltalk hosting, it is not correct to think only of
Seaside: it is important to find a more general way to manage the whole
infrastructure of external services for easy deployment.

RackInCloud might solve this issue with the idea of "appliances" — the
pre-configured VMs which are built to serve one single function (ex.,
MySql-appliance, FileServer-appliance, Pharo-appliance). One great benefit
of this approach is that we can prepare all necessary ISO images for the
services and deploy them when needed, so that a developer can easily build
their own service environment – just running all necessary services in one
click in a personal "virtual rack".

Thereby I developed a Pharo-Appliance. It is an ISO image that runs Pharo-vm
and provides developer with an access via VNC to the Pharo developing
environment, where it is possible to use your favorite tools to deploy your
application: you are absolutely not limited in configuration of the hosting.
Ideologically the appliance is a non-installable ISO-image with minimal
memory footprint (approx. 60Mb), where it is supposed that only user data is
stored on a hard disk (Pharo image in the case of Pharo appliance) and all
the software and libraries  are loaded directly from a system ISO-image.
This makes it possible to startup a new Pharo instance in "one click". Here
you may watch a short video of the full process:
http://www.youtube.com/watch?v=1V75LFgdxHY or you may simply try it out on
http://www.rackincloud.com (it is free for a trial).

In my opinion this approach is far more generic then the existing ones. It
does not limit the developer in how to use the hosting. For example, here
you can read the comment, written by Janko Mivšek, the author of Aidaweb
Smalltalk Web application framework on how he run his framework on
RackInCloud:
http://forum.world.st/Pharo-dev-rackincloude-seaside-hosting-tp4701427p4701655.html.
So it is important that here you are not limited only to Seaside. Anything,
that can be run on Pharo, can be run on rackincloud.com. Moreover, if it
cannot be run on Pharo for some reason, we can apply the same approach to
build the appliance you need and run your application in coherent
environment.

In conclusion let me mention, that this is a very first run of
rackincloud.com. This is only a starting point (though we have already
implemented most of smallharbour project vision here :) ) and in the future
I plan to develop the service further on.

If this project finds interest among the community, I already have a lot of
ideas on how to enhance the service. So let me invite everyone to test it
and I'm really looking forward to hear any feedback from you, guys. If you
have any ideas, please contact me.

--
View this message in context: http://forum.world.st/Presentation-of-rackincloud-com-new-Pharo-hosting-tp4703494.html
Sent from the ESUG mailing list archive at Nabble.com.

Hello, My name is Mikhail Filonov and I am here to present my project "RackInCloud – virtual appliance hosting" to the community. Some time ago I created several Seaside applications and faced with the fact that it was quite a job to host them. After couple futile attempts I could not find any satisfied Seaside-hosting solution. Other option, running and configuring a VPS with Pharo/Seaside seemed like a non-trivial task that requires some skills. You should be very motivated to host your seaside application, right? I'm sure, this kind of troubles might be a huge barrier for people who want to try Smalltalk. I believe existence of easy Smalltalk hosting is an essential addition to Seaside with its beauty and power, which in its turn should attract more people to the community. At the time being I know several ways on how this issue could be solved. First of the existent solution – seasidehosting.st. This project has several strong constraints on its use though, which limit possible applications it hosts. Frankly speaking, I also don’t share the way their management is organized: it is really not obvious for new user how to deploy and manage your Smalltalk image. Another trouble with seasidehositing.st is that it is a little bit outdate: http://forum.world.st/Pharo-dev-rackincloude-seaside-hosting-tp4701427p4701490.html. The promising successor of seasidehositing.st – the smalltalkharbour project - seemed to set a very good set of aims for them: http://smallharbour.seasidehosting.st/seaside/seaside/seaside/seaside/seaside/pier/project. However it seems that smalltalkharbour team chose a very long road to the success and now this promising project is dead: the last news is dated with 11 August 2011, their main site does not respond. Moreover as for me, the way of management that is set by seasidehositing.st is not very convenient. For example, it is not possible to use monticello to update my application on hosting or to use external services like MySql or mongodb. Moreover there is a performance concern: by moving memory- and processes- expensive tasks from Smalltalk to other services, Seaside might be used with all its beauty and speed for Web font-end development. Even Seaside developers share this approach by recommending to move "static file sharing" task outside of Smalltalk to Apache server: http://book.seaside.st/book/in-action/serving-files. So when we talk about Smalltalk hosting, it is not correct to think only of Seaside: it is important to find a more general way to manage the whole infrastructure of external services for easy deployment. RackInCloud might solve this issue with the idea of "appliances" — the pre-configured VMs which are built to serve one single function (ex., MySql-appliance, FileServer-appliance, Pharo-appliance). One great benefit of this approach is that we can prepare all necessary ISO images for the services and deploy them when needed, so that a developer can easily build their own service environment – just running all necessary services in one click in a personal "virtual rack". Thereby I developed a Pharo-Appliance. It is an ISO image that runs Pharo-vm and provides developer with an access via VNC to the Pharo developing environment, where it is possible to use your favorite tools to deploy your application: you are absolutely not limited in configuration of the hosting. Ideologically the appliance is a non-installable ISO-image with minimal memory footprint (approx. 60Mb), where it is supposed that only user data is stored on a hard disk (Pharo image in the case of Pharo appliance) and all the software and libraries are loaded directly from a system ISO-image. This makes it possible to startup a new Pharo instance in "one click". Here you may watch a short video of the full process: http://www.youtube.com/watch?v=1V75LFgdxHY or you may simply try it out on http://www.rackincloud.com (it is free for a trial). In my opinion this approach is far more generic then the existing ones. It does not limit the developer in how to use the hosting. For example, here you can read the comment, written by Janko Mivšek, the author of Aidaweb Smalltalk Web application framework on how he run his framework on RackInCloud: http://forum.world.st/Pharo-dev-rackincloude-seaside-hosting-tp4701427p4701655.html. So it is important that here you are not limited only to Seaside. Anything, that can be run on Pharo, can be run on rackincloud.com. Moreover, if it cannot be run on Pharo for some reason, we can apply the same approach to build the appliance you need and run your application in coherent environment. In conclusion let me mention, that this is a very first run of rackincloud.com. This is only a starting point (though we have already implemented most of smallharbour project vision here :) ) and in the future I plan to develop the service further on. If this project finds interest among the community, I already have a lot of ideas on how to enhance the service. So let me invite everyone to test it and I'm really looking forward to hear any feedback from you, guys. If you have any ideas, please contact me. -- View this message in context: http://forum.world.st/Presentation-of-rackincloud-com-new-Pharo-hosting-tp4703494.html Sent from the ESUG mailing list archive at Nabble.com.