Weblinks + Del.icio.us
So … a couple of friends of mine convinced me of the benefits of using del.icio.us over the web-based bookmark system that I developed myself.
Well, i played with del.icio.us for a couple of days and several problems glared at me.
- Slow to load during peak hours
- Can only select 1 category at a time (without type into the location bar)
- Always sorts your bookmarks by newest entry first, and you can’t change that.
- Resides completely on their servers. So, if they decide to stop providing the service, you’re out of luck.
Luckily they provide a great API to all of your information. So i ported my bookmark software to use the data provided to me by the del.icio.us API’s. Since this data is provided as 3 XML files i decided i would keep it as XML and use XSLT and CSS to handle the display of it.
The result is a much simpler system than my original software, that should work a little better. The results can be seen at links.the-forgotten.org. The basic system works like this:
- Use a bash script to call wget 3 times. Download all the tags, bundles, and bookmarks.
- From that bash script call a simple perl1 script that combines the 3 xml files into one xml, index.xml … thats all there is to pulling the data.
- Use del.icio.us.xsl to transform index.xml into an XHTML page. This is being done by the web browser, which means only modern browsers will be able to use the bookmark page (Firefox, Safari, IE 6). The actual style is being applied by CSS from style.css
Anyways, its pretty simple now. My love of XML and XSLT has grown even strong from this project and my hatred for Internet Explorer has grown even deeper. Safari isn’t getting high marks for its ability to handle XML and XSL either. Actually, IE handles the rendering of the XML better than Safari. IE just requires you to use broken mime-types to use XSL. As always, i recommend using a gecko browser, such as Firefox. It handles the new links page the best.
1 : Update … per request, i included the perl file that I use. You’ll need to modify the location of the 4 xml files that it uses, i stripped directory information from the version uploaded. Writing the bash script will remain an exercise for those interested. Just remember to exit if there is an error downloading the files, else you will have garbage going into the perl script.
RSS Feed