Portfolio

Project logo

xray.computer

Preview npm packages before installing or upgrading them.

There’s no guarantee that the code on a project’s GitHub corresponds to what’s published to package registries like npm. We’ve seen supply-chain attacks where a malicious payload was added to minified source code. xray.computer lets you view this actual, published code before you install a package. Diffs make it easy to confirm that a package update does what it ways in the changelog.


Project logo

fediverse.space

A tool to visualize decentralized social networks.

The “fediverse” is a term used to describe the set of social media servers implementing the decentralized ActivityPub protocol. There are many implementations, the most famous being Mastodon, and these can all communicate with each other. Together, these servers are creating a libre, decentralized, and more democratic alternative to social networks like Twitter.

fediverse.space is a tool to visualize communities in the fediverse. All known servers are presented as nodes on a graph, the edges between them being weighted by the amount of interaction between users on these servers. Clusters quickly emerge – for instance, servers with the same primary language will be close to each other as, for example, French speakers tend to interact with other French speakers. There are more subtle groupings, too: topics of discussion, types of users (serious vs. ironic), and political leanings all play a role.

While interesting in its own right, such a graph or “map” of the fediverse can also be used to combat online abuse. If you encounter a server that, for instance, harbors users espousing hate speech without being moderated, a tool of this sort can reveal the servers it is closest to, which are more likely to have similarly laissez-faire moderation policies.


Death Quotes

An Amazon Echo skill that gives you a quote about death.

Death Quotes is an app for the Amazon Echo. Upon receiving a request like “Alexa, ask Death Quotes to tell me about death,” Alexa will read a random quote on the subject of our mortality.

Partially inspired by Ernst Becker’s book The Denial of Death, this project aims to revive the Renaissance mantra of memento mori, but adjusted to the contemporary technology consumer.


Project logo

Vegan UConn

An easy way to find vegan options at the dining halls and cafés at the University of Connecticut.

I’m an advocate of animal rights and believe that veganism is the best way to put this belief into action. My preferred form of advocacy is to make veganism as accessible as possible.

The dining halls at the University of Connecticut have excellent vegan options, but each individual canteen may not have something every day. The online menus are clunky, requiring many clicks to see what’s available across campus. Hearing my vegan friends complain about this, I built a webapp presenting these options in an interface that prioritizes user experience. It’s quick to see what’s available, and where, for your next meal.

Several years later, this webapp still has regular users (what I believe to be the majority of vegans at the university) and is seeing slow but steady growth.


eusay

An online democracy platform for student unions.

An online voting and discussion platform for student unions. This project won a local hackathon, was selected for the Jisc Summer of Student Innovation competition where it won funding, and was later bought by my student union and deployed for all 30,000 students.