Contents

EntiTies

Spring 2018–present

EntiTies is a web application that allows a user extract entity networks from a text file (e.g., character networks from a novel) using one or more workflows: manual, semi-automated, or fully automated annotation. In the manual workflow, the user annotates entity mentions throughout the text and ties (relationships) between them (such as when the entities speak to one another or interact). In the fully automated workflow, the user chooses from a list of algorithms to automatically identify entities and their mentions throughout the text and the relationships between them. In the semi-automated workflow, users run the fully automated algorithm, and then correct the annotations. Other features of EntiTies include: a study interface built in to assist with user studies and dataset creation; the ability to fork annotations; private and public sharing of texts and specific annotations of a text.

In all cases, a list of entities is listed to one side of the annotated text and a network diagram, which is adjusted as the annotations are modified, is shown on the other side.

EntiTies currently offers a single algorithm for annotating entity mentions that is geared toward novels (via the BookNLP library). It also offers a single relationship annotation algorithm that uses a naive sliding window approach (two entity mentions that occur within n words of each other are deemed to be associated with each other).

The core of EntiTies backend is written in PHP, with the automated annotation and text processing algorithms written in Java. The frontend is written in JavaScript with heavy use of jQuery and d3.js for the network diagrams. Data is stored in a PostgreSQL database and the file system (Linux).

For students who are interested, there are lots of things to work on:

System implementation

Research

This is joint work with Phil Lombardo and inspired by the scholarship interests of Sam Alexander.

Students

Resources

Publications/talks/publicity

Alice

Spring 2017–present

Alice is a website built with Ruby-on-Rails for tracking datasets, anlayses, software that supports those analyses, and assignments that use all three. It was created as part of a two-year Davis Foundation grant awarded to Endicott College in 2016 and carried out between summer 2017 and spring 2019.

For students who are interested, here are the current priorities:

System implementation

Students

Resources

CodeAnnotator

Spring 2015–present

CodeAnnotator is a web application that was motivated by my need to provide feedback to students on code in a digital format. It began as a class project in the first run of CSC270 Software Engineering in 2015. Built with Ruby on Rails, CodeAnnotator allows users to upload code organized in projects, mark up that code by adding comments and alternative code snippets, and share projects with other users (for viewing, annotating, or managing) or publically (view only). I've used CodeAnnotator in at least one class most semesters since creating it. The nice thing with the public sharing is that I can share links with students without requiring them to sign up

For students who are interested, here are the current priorities:

System implementation

Resources

Older projects

For some of my older projects, see this page. If you are an Endicott student looking for an independent study or thesis project and something in there interests you, let me know.