[annotator-dev] Google Summer of Code

Nick Stenning nick at whiteink.com
Tue Mar 6 21:42:25 UTC 2012

Hi all,

I'm potentially acting as a mentor for OKF's GSoC application, and
would appreciate any feedback on the project outlines I've come up
with for Annotator, as well as suggestions for different ones. There's
not really any harm in having too many ideas, as potential applicants
can just pick and choose the one they like the look of.

Projects should be achievable in 12 or so weeks. Please find my two
suggestions below.



# Solving the problem of changing content for web annotation systems

The hardest problem for online annotation is that annotating content
you don't control inevitably leads to broken references when that
content changes. Numerous solutions have been proposed, from the
heuristic (find the nearest phrase which looks like the original
annotated text) to the bulletproof but heavyweight (save a full copy
of the page along with each annotation).

The student would review the available options (e.g. Memento
[http://www.mementoweb.org/], Wayback machine, natural language) and
extend the Annotator to provide support for viewing annotations on
previous versions of a document.

- Requirements:
  + Strong Javascript skills, and a good knowledge of the DOM/HTML.
  + Familiarity with HTTP, ReST, and RPC patterns on the web.
- Optional/good-to-have
  + Experience with CoffeeScript, Python.
  + Use of/experience with semantic annotation technologies (Project
Xanadu, Open Annotation).
- Difficulty level: High


# Unification of Annotator and the Open Annotation Collaboration specification

The first versions of Annotator were built before the OAC spec was
formalised, but it seems we've converged on a data model that has some
reassuring similarities to the OAC's output.

The student would focus on understanding the relevance of the OAC's
work to the future of Annotator, and on making Annotator the world's
first reference implementation of the OAC specification. This would
include work on AnnotateIt, an annotation-as-a-service platform, to
make annotations themselves annotatable, as per the OAC spec.

- Requirements:
  + Strong Javascript skills and a working knowledge of DOM/HTML
- Optional/good-to-have:
  + Experience with CoffeeScript, Python
- Difficulty level: Low-Medium


More information about the annotator-dev mailing list