Using OpenCobalt as a P2P browser-based application framework

41 views
Skip to first unread message

Aran Dunkley

unread,
Jan 4, 2011, 6:42:22 PM1/4/11
to openc...@googlegroups.com
Hi, I'm part of a development team who are helping an organisation to
architect a CMS based project that they want to work in a P2P network
rather than using a centralised web-server.

We've researched existing CMS's such as Plone to see if they could be
modified to operate on top of a DHT but found that they rely too heavily
on querying methodologies that are incompatible with the P2P paradigm.

I realise that Cobalt is really intended as a virtual world system, but
it seems that it has a lot of the P2P applicational functionality in
place that could be developed to serve content to a local standard browser.

We have a specific application in mind that we like to develop which is
a project-management/workflow environment running in a CMS with some
other standard tools such as wiki/blog, but rather than a web-server
we'd be using a local P2P app as the backend. I'm wondering what you
guys, the OpenCobalt developers, think of the practicalities of this idea?

We have a good budget available for this and will be developing it as a
completely free open source component, so we'd also like to hear from
developers who may be interested in working on the project too.

Thanks a lot,
Aran

Darius Clarke

unread,
Jan 4, 2011, 7:50:08 PM1/4/11
to openc...@googlegroups.com
Hi Aran, 

The P2P part of Open Cobalt and Croquet is the TeaTime system.
http://en.wikipedia.org/wiki/Croquet_Project#Synchronization_architecture 
The idea of TeaTime is that the same code is executed in the same order on all clients, giving the perception that everything is happening at the same time. This is useful for syncing clients in a 3D simulation. 

There has been discussion about separating TeaTime out as an independent feature. I'm not sure how much progress has been done on that. 

I'm not quite sure what features you intent to implement as P2P. P2P can mean that clients store a repository resources that all other clients can access, like BitTorrent. It can also mean that clients see and manipulate what's on each other's screen simultaneously, like a whiteboard. P2P also add the added concern as to how quickly data is accessed from one client by another. So issues of how large a cache is available on the hard drives and how fast/slow are the connections between clients. One also must consider how often new clients come into the network and when older data stores go "off grid". Would one's client's screen/web page need data from a hundred different other clients? Also, are clients behind corporate firewalls which they do not control? If so, tunneling is a complex issue that Open Cobalt does not address well and is only tackeled by corporations with large resources like Skype.

So, it's hard to make a recommendation based what you've said. NoSQL backends (like RIAK or MongoDB) as synced storage for normal web apps or native OS apps can provide the syncing of user created data needed if clients don't need to see the same thing at exactly the same time. Think of Umbutu One https://one.ubuntu.com/. RIAK is more for syncing servers with large bandwidth in-between and rare interruptions, but can still be used for peer clients. 

TeaTime is more for the "seeing" or "calculating" "the same thing at the same time" applications. And even then, only dozens of clients seeing the same thing, not thousands of clients.

That said, you might still consider using the Smalltalk web server Seaside, with the Pier CMS, and data definition Magritte on the Squeak or Pharo dialects of Smalltalk. The Seaside webserver is so easy to install on a client's computer once setup, it's almost like just adding an app. Then, add the Smalltalk MongoDB drivers and MongoDB, for larger amounts of data or something like memcache or HTTP(P2P) or WebSockets for smaller amounts. 

Best wishes for a successful project. :)

Cheers,
Darius



--
You received this message because you are subscribed to the "Open Cobalt" Google group.
To post to this group, send email to openc...@googlegroups.com
To unsubscribe from this group, send email to
opencobalt+...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/opencobalt?hl=en

Kenneth Wyrick

unread,
Jan 4, 2011, 7:51:44 PM1/4/11
to openc...@googlegroups.com
Hi Aran,

I'm an open cobalt wanta be user that is exploring ways to use it. your
e-mail caught my attention
and i want to share the http://openacs.org with it's learning (
http://dotlrn.org ) and business ( http://project-open.org ) packages that
may be worth looking into for what you are doing.

Thanks a lot,
Aran

--


You received this message because you are subscribed to the "Open Cobalt"
Google group.
To post to this group, send email to openc...@googlegroups.com
To unsubscribe from this group, send email to
opencobalt+...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/opencobalt?hl=en

--
Cheers! I'm Glad to Be Human

Darius Clarke

unread,
Jan 4, 2011, 7:59:46 PM1/4/11
to openc...@googlegroups.com
Hi Aran, 

I should also mention, playing to Open Cobalt's strengths, if your clients can really use the memory aids of 3D immersion and visually placing complex ideas near each other for comparison, Open Cobalt can leverage all the aforementioned technologies as well. 

Cheers, 
Darius

Carlos Crosetti

unread,
Mar 6, 2011, 8:42:08 PM3/6/11
to openc...@googlegroups.com
Hi, I remember there is a demo in Croquet that shows a dynamic spreadsheet,
who can help me in finding the classes that builds that? Regards, Carlos


John Dougan

unread,
Mar 7, 2011, 7:22:17 AM3/7/11
to openc...@googlegroups.com
TSpreadSheetTxtr and the other classes in it's category.  We don't use it in Cobalt at present, check some  Open Croquet versions for usage info. It doesn't look very complex though.

Cheers,
  -- John

On Sun, Mar 6, 2011 at 20:42, Carlos Crosetti <carlos....@mostar.com.ar> wrote:
Hi, I remember there is a demo in Croquet that shows a dynamic spreadsheet, who can help me in finding the classes that builds that? Regards, Carlos
--
You received this message because you are subscribed to the "Open Cobalt" Google group.
To post to this group, send email to openc...@googlegroups.com
To unsubscribe from this group, send email to
opencobalt+...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/opencobalt?hl=en



--
John Dougan
jdo...@acm.org

Julian Lombardi

unread,
Mar 7, 2011, 8:57:41 AM3/7/11
to openc...@googlegroups.com
It would be wonderful to see this up and running again!

-Julian
Julian Lombardi  :  jul...@duke.edu  :  919.323.5016  :  Skype julianlombardi

Carlos Crosetti

unread,
Mar 7, 2011, 9:04:59 AM3/7/11
to openc...@googlegroups.com
thank you!

Carlos Crosetti

unread,
Mar 7, 2011, 9:18:18 AM3/7/11
to openc...@googlegroups.com
Julian I am looking to the spreasheet to se how it was implemented. I do not need a full spreadshet but something like a tabluar list to show 1 to 100 elements, regards, Carlos
----- Original Message -----
Sent: Monday, March 07, 2011 10:57 AM
Subject: Re: [Open Cobalt Group] croquet demo ' spreadsheet

Carlos Crosetti

unread,
Mar 13, 2011, 1:04:25 PM3/13/11
to openc...@googlegroups.com
Hi, is anyone available today to test ldap teleporrting?
The technical requiremets are,
- OpenCobalt alpha8
- Fixed IP addres or leased public address
- firewal disabled

Tieme required to test is around 30 minutes.

Procedure:
- chang the cobalt-router ro the one attached
- connect to Internet
- Edit your space info with your own distinct parameters
- Publish your space
- email to me saying waht is your space after published

Regards, Carlos

Carlos Crosetti

unread,
Mar 13, 2011, 1:12:05 PM3/13/11
to openc...@googlegroups.com
missed the router config file, now is attached...

cobalt-router.conf
Reply all
Reply to author
Forward
0 new messages