Diff for /bookie/www/index.html between versions 1.4 and 1.28

version 1.4, 2000/11/27 02:00:42 version 1.28, 2002/05/15 08:03:08
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://source.syr.edu/~jdimpson/urlmon/ideas.html#netscape">UrlMonitor</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>
   The server is written in Java, and uses XML-RPC to communicate to clients.
   There's also a client written in Swing, which is pretty functional.  The
   current goal is to get the Mozilla client back into shape given the existence 
   of a working server (finally!)
   </p>
   
   <p>
   To get the server running on your machine, download the server.jar file 
   <a href="http://tersesystems.com/bookie/server.jar">here</a>.  You should start
   the server with <code>-jar server.jar</code> in a directory for Bookie usage.  
   No database is required, as Bookie will create its own database if it doesn't 
   find one.  It will start on port 9000 by default, but you can specify the port
   on the command line.  JDK 1.4 with the -server option is recommended, as the I/O
   performance is MUCH faster than 1.3.1.
   </p>
   
   <p>
   To start the client, download the client file 
   <a href="http://tersesystems.com/bookie/client.jar">here</a>.  You do not need
   anything besides the <code>-jar</code> option, although again 1.4 has been found
   to be much faster.  When the client starts up, it will present you with a 
   connections box:
   </p>
   
   <p>
     <ul>
       <li>Create a new connection to http://localhost:9000.
       <li>Double click on the connection to connect to the server.
       <li>When the server asks you if you would like to be registered for the server, say yes.
       <li>Click on the root folder, then click on the File menu and select the import menu item.  
       <li>Import your bookmarks by going to your netscape bookmarks.html file and clicking on that.
           As an example, my Mozilla file is under "C:\Documents and Settings\Will Sargent\Application Data\Mozilla\Profiles\default\mq632ho0.slt"
       <li>Close down and restart the client (there is a bug that stops import from updating).
     </ul>    
   </p>
   
   <blockquote>
   There will be a permanent bookmark server at tersesystems.com.  I am getting that
   working right now, and will update this site when stuff happens.
   </blockquote>
   
   <p>
   Suggestions and comments are welcome.  If you have any problems with the above
   instructions, please e-mail me at the address below.
   </p>
   
   <p>
   Will Sargent &lt;<a href="mailto:will_sargent@yahoo.com">will_sargent@yahoo.com</a>&gt;
   <?php require(NOTES); ?>
   

Removed from v.1.4  
changed lines
  Added in v.1.28


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