Hi All,
I've used drupal for a couple of decent sized sites and really enjoyed it. It think it's an exciting CMS with a great future.
I'm searching for a year long research project for university and I would love to find something that ties in with drupal.
I've previously been working in the distributed systems domain and I am trying to define a potential project combing dist systems and drupal.
Currently I am thinking along the lines of developing or extending the drupal model/database layer to cope with distributed content.
Something along the lines of taking content from webservices/RSS/distributed-databases and displaying it as nodes on a single drupal site.
Basically displaying distributed content as if it were a single collection of content.
Does anyone have any thoughts on this (good/bad idea?) or any specifics to define the project and make sure it's achievable in a year?
Cheers,
Toby
Comments
How about synchronization of distributed content?
Say you have a CCK content type with a few fields (text, date, number...), and you have a central listing (drupal site) of instances of this content type. But, with the help of database dumps, exports of the CCK types and Drupal install profiles, you let people set up their own instance of this central database (much like wikipedia lets you download the entire wikipedia database). Perhaps they want to install it on their university intranet to do research.
The problem then becomes, how do you coordinate updates made on the remote instances with updates made on the central instance?
Case 1:
Central instance updated, all remote instances must be updated likewise. The updates get pushed or pulled from the central instance to the remote instance.
Case 2:
Remote instance updated, central instance notified of update. Here it is clear that the remote instance should ping the central instance with the update. Perhaps it is new content, perhaps is a revision of existing content. Likely, Case 2 will precipitate Case 1.
Permissions:
The central instance is the official version, so all updates made by remote instances should be approved. Diff and merge tools would be handy here (see http://drupal.org/project/diff).
If the central instance has an update for remote instances, the local admins for the remote instances should get the choice of accepting or rejecting the change.
I wish I could spend a year researching this =)
Also useful will be the publish and subscribe modules.
- Robert Douglass
-----
Lullabot | My Drupal book | My Digg RSS feed