Changes between Version 89 and Version 90 of GSoCIdeas2010

2010-03-16T17:43:19Z (11 years ago)

add Secure Decentralized Wiki, add Brian to Share Migration


  • GSoCIdeas2010

    v89 v90  
    1414||[#RedundantArrayofIndependentClouds Redundant Array of Independent Clouds]||Medium||[ Zooko Wilcox-O'Hearn] or any mentor||
    15 ||[#ShareMigration Share Migration]||Medium||any mentor||
    16 ||[#CloudApps Cloud Apps]||Easy–Hard||Jack Lloyd or any mentor||
     15||[#ShareMigration Share Migration]||Medium||[ Brian Warner] or any mentor||
     16||[#SecureDecentralizedWiki Secure Decentralized Wiki]||Medium||[ Zooko Wilcox-O'Hearn] or any mentor||
     17||[#CloudApps Cloud Apps]||Easy–Hard||[ Jack Lloyd] or any mentor||
    1718||[#WebDAV WebDAV]||Medium||[ David-Sarah Hopwood] or any mentor||
    1819||[#DistributedIntroduction Distributed Introduction]||Easy||[ Zooko Wilcox-O'Hearn] or any mentor||
    6364jumping-off point for health is #778.
     66= Secure Decentralized Wiki =
     68Write a wiki in Google's [ "caja"] dialect of !JavaScript. This wiki will load and store data directly on a Tahoe-LAFS storage grid so that it is a full "Cloud App"—there is no server. All computation is done in the user's web browser in caja and all of the storage is done by the decentralized Tahoe-LAFS storage grid. This wiki should leverage Tahoe-LAFS's secure sharing features to offer fine-grained, dynamic, and easy transclusion or client-side mashups. This project is intended to be the successor to [ the TiddlyWiki-on-Tahoe-LAFS project], which is a wiki written in !JavaScript and hosted on Tahoe-LAFS, but one that has been "bolted on" to Tahoe-LAFS instead of designed for Tahoe-LAFS, and is currently incapable of good transclusions or mashups.
     70To get started, play with [ the TiddlyWiki-on-Tahoe-LAFS quick start], read the source code of [ the !HTTPSavingPlugin] and [ the !TahoePlugin] for !TiddlyWiki, and experiment with [ writing live caja applets].
    6572= Cloud Apps =
    6774Difficulty: easy to hard, depending on project choice and how far you want to push it
    69 There are a lot of applications that could potentially make good use of Tahoe-LAFS replacing the typical centralized storage of flat files or SQL databases. Currently supported projects include [ TiddlyWiki] (one of the Tahoe-LAFS developers hosts his blog using [ TiddlyWiki stored in Tahoe-LAFS]), [ Hadoop], and [RelatedProjects a number of others].
    71 There are still many useful and interesting things that have yet to be built using Tahoe-LAFS. Perhaps the most promising is in the area of web applications; what applications can you think of that could make use of a highly reliable filesystem accessible from both desktops and [ handheld devices]? Keep in mind that Tahoe-LAFS's architecture allows sharing and delegation opportunities that are difficult or impossible to implement using other backends. Some ideas people have suggested include a calender or photo album, or porting Mozilla's [ Bespin] editor).
    73 Nathan Wilcox wrote most of interactive tree browser frontend in !JavaScript (see [wiki:RelatedProjects the RelatedProjects page]); Toby Murray wrote [ a front-end in Cajita]; what interesting ways might this be extended?
    75 This is in some ways the most interesting area for development as it combines security and distributed systems problems with providing a user interface that lets a person who isn't particularly security minded operate safely by default. This is a hard problem, but offers great rewards in terms of learning, and even the ability to break new ground in safe-by-default interface design.
    77 Required skills: HTML and !JavaScript for web applications. For other tie-ins, will depend on the base project (for instance porting the git DVCS to run on Tahoe would good C-fu, with git experience helpful).
     76Invent your own Summer-of-Code project by building a new web app on top of Tahoe-LAFS. The [#SecureDecentralizedWiki Secure Decentralized Wiki] is one example of a Cloud App. See [wiki:GSoCIdeas/CloudApps] for other ideas.
    7978= WebDAV =
    9291 * [ Zooko Wilcox-O'Hearn] [ blog] (Python/C/C++/JavaScript, security+cryptography)
    93  * Jack Lloyd [ blog] (C/C++/Python, security+cryptography)
     92 * [ Jack Lloyd] [ blog] (C/C++/Python, security+cryptography)
    9493 * [ David-Sarah Hopwood] (Python/C/JavaScript, SFTP frontend, security+cryptography)
    9594 * [ Brian Warner] (Python/C/JavaScript, security+cryptography)
    97 ----
    98 This page was modelled on [ the NetBSD Summer-of-Code page].