Deprecated: Assigning the return value of new by reference is deprecated in /var/san/www/prod/html/blogs/darcusb/wp-settings.php on line 512 Deprecated: Assigning the return value of new by reference is deprecated in /var/san/www/prod/html/blogs/darcusb/wp-settings.php on line 527 Deprecated: Assigning the return value of new by reference is deprecated in /var/san/www/prod/html/blogs/darcusb/wp-settings.php on line 534 Deprecated: Assigning the return value of new by reference is deprecated in /var/san/www/prod/html/blogs/darcusb/wp-settings.php on line 570 Deprecated: Assigning the return value of new by reference is deprecated in /var/san/www/prod/html/blogs/darcusb/wp-includes/cache.php on line 103 Deprecated: Assigning the return value of new by reference is deprecated in /var/san/www/prod/html/blogs/darcusb/wp-includes/query.php on line 61 Deprecated: Assigning the return value of new by reference is deprecated in /var/san/www/prod/html/blogs/darcusb/wp-includes/theme.php on line 1109 darcusblog » 2008 » February - geek tools and the scholar

Archive for February, 2008

Remembrance Agent for Web 2.0

Posted in Technology on February 27th, 2008 by darcusb – 4 Comments

I’ve mentioned before an idea that Peter Flynn once put in my head. As I write this, I am taking a break from writing a manuscript (that is late!) using NeoOffice and Zotero. It all works fairly well, but I’m struck that the two together feel rather heavy. Consider the workflow if I need to add a citation and associated information:

  1. try to remember where I saw some information; go to Zotero to find it
  2. go back to NeoOffice to add content.
  3. go back to Zotero to insert the citation

While each time I do this the process is fairly quick, if you multiply it by a hundred it becomes a significant waste of time. More importantly, it’s a distraction. Writing is hard enough to be distracted by interruptions of this sort.

OK, so back to the idea:

Peter once mentioned Remembrance Agent. A screenshot with its emacs front-end:

Remembrance Agent

So the idea here is a service scans the content you are working on, sends it to a backend, which looks through emails, document and bibliographic references to find items of potential relevance, presenting it to the user for quick-and-easy access.

So here’s my thought: with all of the innovations in new Ajax-y applications, shouldn’t it possible to do something like this with web applications?

I’m starting to wonder about a nice web editor for academics: something stripped down and simple (but extensible) like the Mac application WriteRoom, that used a simple Markdown-like syntax, and which could plug-in to a bibliographic service a la Remembrance Agent.

Hmm …

From Proposal to Example: CSL Gallery

Posted in Technology on February 25th, 2008 by darcusb – Comments Off

So rather than just a CSL creation wizard, I realized it might be more sensible to do a full-blown web app. Am not the best coder, but am making some progress. Here’s the list of categories:

CSL Gallery screen 1

Here’s the (start of the) detail view of the APA style:

CSL Gallery screen 2

I’m using Django, which is nice. I got this together—complete with a full admin interface and multi-user authentication backend that comes for free with Django—in a few days. There’s still a lot of work to do (previewing, feeds, actual CSL generation, etc.), but I think this is promising.

So the idea is really an extension of the Zotero CSL repository, where accessing a style by its URI in a browser will give you the HTML view, complete with preview, but requesting it with an alternative CSL mediatype will instead get you the actual XML style file.

Of course, the real hard part will be in making it really easy for end-users to create new styles. But, I think I have the solution for this: most of the styling work will get handled with pre-assembled macros. In essence, I’ve built the class/table model based on what I outlined in the earlier proposal.

MakeCSL: A Proposal

Posted in Technology on February 13th, 2008 by darcusb – Comments Off

An observation:

CSL is at the stage where the language is virtually stable, and has gone through enough refinement that it has achieved its objective of being a powerful, open and accessible language for encoding citation styling information. It has been implemented fully in Javascript, and there are other implementations in progress for PHP, Python, and Ruby. In addition, styles are being written and deployed in publicly accessible style repository that allows styles to be accessed directly over HTTP.

However, it remains difficult for the average user to create new styles. There remains a large gap between the number of styles there are and the number of styles there needs to be to be declared a success.

If interested, read more about how I propose to resolve this issue here. The short version is, think MakeBST meets Web 2.0.

Alas, I don’t have the time or skill to do this all myself, so it won’t happen without help. Let me know if you’re interested.

Dan’s Questions

Posted in General on February 8th, 2008 by darcusb – Comments Off

So Dan Chudnov’s been digging into RDF and the semantic web, and posts of few of the questions he’s collected. I’ll answer at least some of them below, though I (still) don’t really consider myself an expert.

  • I have never understood FOAF. It seems like a fine way to serialize a cult-of-personality network (e.g. “see? i’m only two steps from timbl himself!!”) Similarly I don’t get the whole “social graph” buzz either. I’m not a marketer looking to harvest customer data. I’m not doing any affinity indexing just now. What other use is there for saying who my friends are, besides those two?
    I’m actually not that interested in the foaf:knows property. That seems less immediately useful than being able to describe, say, the kind of data in my CV: who I am, my bio info, publications, and maybe also more specific kinds of relations with other people (say collaborators?). I see FOAF as a simpler RDF version of the sort of thing MADS does. Reminds me: I need to update mine!
  • Does the linked data movement really depend upon RDF? It doesn’t seem like it has to. Maybe it could grow faster if it didn’t.
    Let’s turn the question around and ask: if not RDF, then what? You definitely need some model on which to base it, it seems to me, and things like GRDDL, microformats, etc. leave a lot of flexibility on the encoding end. The key for linked data is really the URI, of course, which becomes kind of like a key for a global database.
  • If blank nodes are bad (end of the section), how do I represent sets of literals that mean the same thing but are expressed in different languages? I need to do that right now and I can’t figure out how without blank nodes.
    What’s wrong with multiple literals, each with a language tag?
  • I’m still mainly interested in Description (talking about things) and am completely disinterested in modeling knowledge (what things are and mean) and seem to keep finding examples where arguments about best practices hinge on notions of essential truths …
    You totally lost me on this one Dan!
  • er, that last one was over-long, so I’ll try it this way instead. I think I’m interested in Linked Description, not Linked Data.
    Aren’t we splitting hairs here?

Bitlog

Posted in General on February 4th, 2008 by darcusb – Comments Off

John Resig on a new, free (as in speech), and very nice twitter clone he’s been working on, complete with SVN repo and Trac. As one would expect, it makes very nice use of Ajax.

Hmm … I wonder if/how something like this might be adapted for academics?

Reuters and the Semantic Web

Posted in Technology on February 3rd, 2008 by darcusb – Comments Off

The idea of the Reuters Calais semantic web service is upload free text content to a web service, and receive back that content enhanced with embedded RDF. So, for example, let’s say you’re content includes the fragment:

… it will be possible to exchange tolar banknotes (unlimited) and coins (until 2016) only at the Bank of Slovenia.

The service will recognize “Bank of Slovenia” and send back the RDF, complete with a URI for the resource in question:

<rdf:Description 
  rdf:about="http://d.opencalais.com/comphash-1/65c45759-512c-3044-a47f-f74d42f14f4e">
  <rdf:type rdf:resource="http://s.opencalais.com/1/type/em/e/Company"/>
  <c:name>Bank of Slovenia</c:name>
</rdf:Description>

From what I can tell, the service can only recognize the objects of description; it can’t identify relations. But certainly this is a nice start, and even nicer to see it’s free, and that they’re putting up a $5000 bounty to encourage a practical implementation in WordPress. Would also be nice if they could explore sending back to the content as RDFa-enhanced XHTML (or maybe OpenDocument 1.2 once it’s released and its metadata functionality is implemented).