greg's Projects
A collection of starter templates for account abstraction.
My Alacritty configuration
This challenge involves language modeling for two closely-related languages in the Bantu language family: Swahili, spoken by more than 100 million people in eastern and southern Africa, and Kwere, spoken by about 100,000 people in central Tanzania. Bantu languages have complex morphology, especially the verbs; a single verbal stem can have thousands or even millions of different possible forms. For this reason, language technologies which require a fixed vocabulary of words are simply not feasible. One of the aims of this challenge is therefore to explore the possibility of building character-level language models for the Bantu languages. The other interesting research direction here stems from the fact that Swahili is relatively well-resourced in terms of NLP technology and corpora, while Kwere is not. There is a New Testament translation of Kwere available online, but very little else in terms of corpus material or social media presence in the language. But since the two languages are so similar linguistically and orthographically, this opens the possibility of “transferring” knowledge from Swahili to Kwere when learning a language model.
This challenge involves predicting a grammatical phenomenon that occurs in the Celtic languages known as initial mutations. These are changes to the spelling and pronunciation of words depending on the grammatical or semantic context. For example, in Irish, the word for “woman” is “bean”, but “the woman” is “an bhean”, where the preceding definite article causes the letter h to be inserted as the second letter. We will work with Irish language data in this challenge, where there are four different mutations which we tag as S, U, H, and T (and we introduce a fifth label N for words that are not mutated like “an” above). The challenge is then to take a text where the mutations have been removed (e.g. bhean → bean) and predict the correct mutation labels: an bean → an/N bean/S
This challenge involves dependency parsing of the Catalan language using the Universal Dependencies framework.
A dashboard for creating and managing Farcaster accounts from your in-browser wallet.
Generate a political compass based on your Farcaster casts.
A standalone Farcaster replicator extracted from the Hubble monorepo.
An AI agent trained on the Farcaster docs and made accessible via XMTP.
react hooks for the best farcaster apps
My personal neovim configuration
This challenge involves a simplified machine translation problem, effectively between two writing systems of the same language. We will again be looking at the Irish language, which was the subject of the initial mutation challenge as well. In the 1940's and 1950's, the spelling and grammar of the language were greatly simplified, and the resulting system is the one still in wide use today. One down side, though, is that NLP systems trained on the modern language are not as effective on texts published before the reform, and even simple tasks like searching databases of older texts can be challenging. One solution to this problem is to develop a system for modernizing older texts, which can be thought of as a machine translation problem between two very closely-related languages! In fact, we even have a reasonably large amount of parallel text which we can use for training such a system, in the form of old books that have been manually updated to the new spelling and grammar for modern readers.
A beautiful yet simple Farcaster client
A study on using metric learning embeddings to classify subject material.
Progress bars and local logs for ML notebooks.
Tutorials for various machine learning tools
A fast implementation of a Farcaster Hub, in Rust.
An ecosystem of ethereum tools to build robust TypeScript applications
The most powerful backend engine for web3 apps.