Open Social

Author Message

Paul Forsyth

Thursday 08 November 2007 3:32:55 pm

I've kicked off a project on Google's OpenSocial initiative over on the projects site.

http://projects.ez.no/opensocial/news/opensocial_what_we_should_do

I'd like to hear feedback, gain help etc, so if you are interested, please pop over.

Cheers,

Paul

gabriele francescotto

Saturday 10 November 2007 12:42:38 am

Hi Paul,
nice article and nice vision.
I'm really interested in this topic: several times I had the need to solve the problem of the user authentication between eZ and other platforms (recently: Semantic MediaWiki), I overcame the problem in some way but I'm not satisfied about the solution I've implemented.

In this moment, I couldn't imagine a general benefit to use Open Social with eZ; I find simpler to speak about the requirements and the problems I personally met, and in which I imagine Open Social could be used to overcome the problems; then I hope that we can elaborate more abstract and general solutions with the eZ network.

I experienced (working for several Italian universities of humanistic sciences) that there's a greater and greater interest for the social network in the educational world; for a research project, I've used eZ to create a sort of social platform, in which students, facilitators ad teachers can upload, share, comment and customize "objects" like books, personal experiences, learning objects. But how to merge these eZ-objects (using the powerful "relation objects" datatype) with the ontologies instances, defined into a different platform (MediaWiki)? How to create a flexible relation between eZ users and LinkedIn users?
Could Open Social help in this?

I need also to create the users' FOAF, but, sharing what you mentioned, I didn't want to extend too much the user class. I thought to add just some field to the user profile ( like personal interests, as keywords datatype , geolocation and IM ).
To create the FOAF then, I thought to take the user attributes + some attribute coming from the objects in relation with the personal profile, like the "Curriculum Vitae" object and the "personal experience" objects, that the user will create in the platform.

I'm not sure if it is the best approach, it was simply the easier I imagined, using the existing eZ functions and properties (and adding some Ajax to create easily the "related objects").

I hope to read soon other experiences from you, that will help to formulate a more general solution.

best,
gabriele

www.opencontent.it
via Verdi 19, 38100 Trento

Paul Forsyth

Tuesday 13 November 2007 3:38:32 pm

Thanks Gabriele,

I fully agree that the benefits need to be defined. A major issue with opensocial adoption is that you *must* reinvent the wheel with your applications. Simple applications like 'Show my latest content', 'Show my friends latest content' and variations of can all be done now but with opensocial there is more on offer. For example, an editor can have dynamic friends - their fellow editors and indeed any groups they have access to. Editors may then see what their 'friends' have been doing. If permissions and security become reliable then you can view your editors activities in the context of another social app elsewhere. Perhaps browsers such as Firefox, Flock, Safari and IE will allow such apps as extensions.

OpenSocial has to augment what users do with their content and for that we need good applications to provide value, otherwise they'll move to another social network which matches their persona's better. Perhaps we need to think of the system as a bank account and the open social apps as the reason to 'bank your content with us'.... perhaps not ;)

I'm going to list out as part of my docs shortly a range of users who might want to use OpenSocial. In this way we can start to work out which types of applications are needed.

I'm in the middle of writing an impementation doc which *has* to be accompanied with initial code for it to be of use. Here is a quick summary:

There will be four new classes within the OpenSocial UserGroup - 'OSUser', 'OSFriend', 'OSApplication', 'OSActivity'. 'OSFriend' and 'OSActivity' may not be needed in final version but they are good to have for now.

The focus of developement right now is the OSUser class. This will contain four attributes with datatypes:

- ezuser. identifier: user_account
- ezcFeed. identifier: open_social_api
- ezcFeed. identifier: foaf_fields.
- ezcFeed. identifier: xfn_fields.

ezcFeed is a eZP4 datatype which 'wraps' and uses the eZ Component Feed for its XML handling of the google atom feeds. However, it only goes so far and it actually needs an XSD field in the class for validation purposes. The upshot of using this datatype is allow dynamic changes of the XSD to use more fields. It *should* work :) I'll post more on this soon with examples.

For all this to work the software required includes 'eZP4', 'eZComponents' & PHPUnit.

I'm hoping this is a start to a simple solution for this problem. There are lots of other ways to implement such a solution, and i'm sure my own will evolve... :)

Paul

Andreas Kaiser

Monday 03 March 2008 3:33:49 pm

Any news about this...

I think this kind of enhancements are excelent for ezp (including others, like OpenID, I have to test ezp4 & ez components/OpenID).

Thanks,

eZ Partner in Madrid (Spain)
Web: http://www.atela.net/

Paul Forsyth

Tuesday 24 June 2008 8:20:14 am

A small update:

http://projects.ez.no/opensocial/news/shindig

Sign up while you are over there :)

Paul

Powered by eZ Publish™ CMS Open Source Web Content Management. Copyright © 1999-2014 eZ Systems AS (except where otherwise noted). All rights reserved.

eZ debug

Timing: Jan 18 2025 03:05:46
Script start
Timing: Jan 18 2025 03:05:46
Module start 'layout'
Timing: Jan 18 2025 03:05:46
Module start 'content'
Timing: Jan 18 2025 03:05:47
Module end 'content'
Timing: Jan 18 2025 03:05:47
Script end

Main resources:

Total runtime0.5554 sec
Peak memory usage4,096.0000 KB
Database Queries65

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0055 588.8984152.6094
Module start 'layout' 0.00550.0025 741.507839.3984
Module start 'content' 0.00800.5458 780.9063613.1563
Module end 'content' 0.55380.0016 1,394.062516.2031
Script end 0.5554  1,410.2656 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00300.5488160.0002
Check MTime0.00130.2318160.0001
Mysql Total
Database connection0.00090.156110.0009
Mysqli_queries0.491588.4919650.0076
Looping result0.00070.1172630.0000
Template Total0.529195.320.2645
Template load0.00210.369820.0010
Template processing0.527094.877720.2635
Template load and register function0.00010.019210.0001
states
state_id_array0.00070.128210.0007
state_identifier_array0.00070.127820.0004
Override
Cache load0.00180.3246480.0000
Sytem overhead
Fetch class attribute can translate value0.00040.077830.0001
Fetch class attribute name0.00210.379670.0003
XML
Image XML parsing0.00360.644030.0012
class_abstraction
Instantiating content class attribute0.00000.003370.0000
General
dbfile0.00330.5977220.0002
String conversion0.00000.001640.0000
Note: percentages do not add up to 100% because some accumulators overlap

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1node/view/full.tplfull/forum_topic.tplextension/sevenx/design/simple/override/templates/full/forum_topic.tplEdit templateOverride template
5content/datatype/view/ezxmltext.tpl<No override>extension/community_design/design/suncana/templates/content/datatype/view/ezxmltext.tplEdit templateOverride template
9content/datatype/view/ezxmltags/paragraph.tpl<No override>extension/ezwebin/design/ezwebin/templates/content/datatype/view/ezxmltags/paragraph.tplEdit templateOverride template
2content/datatype/view/ezimage.tpl<No override>extension/sevenx/design/simple/templates/content/datatype/view/ezimage.tplEdit templateOverride template
5content/datatype/view/ezxmltags/line.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/line.tplEdit templateOverride template
1print_pagelayout.tpl<No override>extension/community/design/community/templates/print_pagelayout.tplEdit templateOverride template
 Number of times templates used: 23
 Number of unique templates used: 6

Time used to render debug report: 0.0001 secs