Diff for /bookie/www/index.html between versions 1.5 and 1.18

version 1.5, 2000/11/27 02:07:35 version 1.18, 2001/03/22 08:54:24
Line 1 Line 1
Bookie is a personal attempt to keep the bookmarks that I have at homeYou can read what Bookie is <a href="purpose.html">here</a>, but here's the
synced with the bookmarks I have at work, and a way of solving mylong and short of it:
frustrations in sharing bookmarks with other people over computers.  It also 
is an outgrowth of the bluesky <a 
href="http://www.mozilla.org/blue-sky/ui/199805/bookmarks.html">good 
bookmarking</a> and <a 
href="http://www.mozilla.org/blue-sky/misc/199805/collaborative-bookmark-index.html">collaborative 
bookmark indexing</a>.  In addition, there are sites which attack this 
problem from another angle: <a href="http://renaghan.com/bookmarker/">Bookmarker</a> and <a href="http://www.webwizards.net/useful/wbbm.htm">Web-Based Bookmark Managers</a>. 
 
<p>Quite frankly, bookmark management sucks.  Every person I know has a 
collection of bookmarks which have grown over months if not years.  Not only 
the bookmarks themselves but the structure of the bookmark directory is 
critical.  Yahoo's origin and real, underlying purpose is as a huge 
collection of well organized bookmarks.  Yet while it is easy to send a URL 
over the web, sending branches or entire trees is impossible.  It is 
impossible to share the same bookmarks folder with several people, so that 
all information can be synced over a department.  And it's really hard to 
keep bookmarks synced between several locations. 
 
<p>The roaming access feature in Netscape goes in the right direction of 
solving these problems, but RDF is the perfect answer to these problems. 
Whenever a browser wants to see bookmarks, it can make a request to a 
central bookmark server, and receive streamed RDF.  Likewise, whenever a 
bookmark or branch is submitted, RDF can be sent to the server and synced 
with all the other clients. 
 
<p>Most of the work is already done -- Mozilla already has an 
RDFXMLDataSource, and all that needs to be done on the client end is some 
work to hook it into the network layer, and a way to present that data as a 
treeview. 
 
<p>The more involved work is in writing a server which can parse RDF, 
construct an internal RDF graph, and can convert the internal RDF graph into 
an SQL database.  And writing it out the other way. 
 
         serialized RDF <--> RDF graph <--> SQL database 
 
<p> Of course, this is barely scratching the surface of what Bookie could do 
-- it could invalidate useless bookmarks, keep a cache of bookmarks for 
you... it could keep private bookmark folders which you could only see by 
typing a password... It could provide folders with multiple parents so that 
you could have the equivalent of symlinks in folders... It could rearrange 
or delete bookmarks according to your own criteria (popularity, last 
updated)... You could have limited access to bookie allowing you to add only 
annotations to a bookmark, or submit links on an honor system so that the 
most popular float to the top...  You could adjust your filter so that only 
the oldest or the newest bookmarks show up. 
 
<p>Anyway... 
 
<p> The server is done, although it still is read-only.  You can import 
bookmarks into the database and you can read bookmarks out of the server. 
The mozilla client will connect to the server, but I've had some troubles 
getting the RDF from the server synced up with the user interface.  There's 
also a client written in Swing which I'm using for debugging, which is 
teaching me the joys of asynchronous non-blocking network IO in Java. 
   
   <blockquote>
   Bookie is an application which keeps all your bookmarks on a
   central server so that you can access bookmarks from anywhere on the web.
   </blockquote>
   
   <p>I have a server which is currently using a hacked up protocol based on
   FTP.  I have since learned why no-one uses a protocol from the 1970's if
   they can help it: the code is going to go away and be replaced with XML-RPC,
   which is both simpler and more intelligent.  Dunno anything about SOAP, but
   since it's not out of committee yet, I'm not going to worry about it.
   
   <p>Mozilla client is still very rudimentary, but it does do XML-RPC queries.
   If you enjoy pain or would like to help, then you can pick up the code from
   <a href="/source/browse/bookie/clients/mozilla/extensions/bookie/resources">here</a>.
   Thanks to Aaron Andersen for the cool <a
   href="http://www.xulplanet.com/tutorials/xulapp/">tutorial</a>.
   
   <p>You do have to have the XML-RPC extensions to use the client.  Go to your
   mozilla/extensions/xml-rpc directory and <code>"nmake -f
   makefile.win"</code> should take care of the problem.
   
   <p>Using the server requires
   
   <a href="http://www-uk.hpl.hp.com/people/bwm/rdf/jena/">Jena</a>, <a
   href="http://classic.helma.at/hannes/xmlrpc/">XMLRPC-Java</a>, <a
   href="http://jakarta.apache.org/log4j/docs/index.html">Log4j</a>, and <a
   href="http://www.junit.org/">Junit</a>.  At least.  I've been using JBuilder
   and haven't bothered to put together an <a
   href="http://jakarta.apache.org/ant/index.html">Ant</a> script.  If someone
   does, please mail it to me.
   
   <p>Suggestions and comments are welcome.
   
   <p>
   Will Sargent &lt;<a href="mailto:will_sargent@yahoo.com">will_sargent@yahoo.com</a>&gt;
   <?php require(NOTES); ?>
   

Removed from v.1.5  
changed lines
  Added in v.1.18


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>