Age reaches 1.0

made by Benjojo, filippo, submitted by davidbalbert
Filippo and Ben's new file encryption tool Age, which is meant to replace GPG for sending encrypted files, has reached 1.0! In addition to generating Age specific encryption keys, Age can also use SSH keys, so you can encrypt a file for anyone whose SSH public key you have handy.

MomenTom

made by Emily, submitted by Mai
A really fun momentum-based puzzle game made for a Godot game jame. 30 levels! Check out the code here: https://github.com/EmilyBonar/MomenTom.

Imp: live repl

made by jamii, submitted by davidbalbert
Jamie made a video introducing the live REPL for Imp, his relational programming language. The live REPL is embedded in Focus, his text editor (!!). Video is quiet, so crank your volume.

Writing a Simple Browser Game in Elm

made by Joe Thomas, submitted by nicholasbs
Some thoughts on learning Elm to write a simple arcade game, along with the playable game and source.

tree-grepper

made and submitted by brianhicks
Tree-grepper searches by looking at code structure instead of strings. This lets you match on whatever structures a language defines without worrying about whitespace! It uses tree-sitter underneath so it's easy to extend, too!

um-abt: an OCaml library for unifiable abstract binding trees

made and submitted by Shon
um-abt is a library for working with the abstract syntax of languages that use variables. It provides "unifiable abstract binding trees" (UABTs): abstract syntax trees (ASTs), enriched with constructs to manage variable binding and (nominal) unification.

Mitigating harm in language models with conditional-likelihood filtration

made and submitted by mathemakitten
Language models built on datasets scraped from the open web have become foundational in natural language processing, but they reflect and amplify the biases and harms of their training data. We created a system which lets us filter training data to build more value-aligned models. It's imperfect—the internet is really big, harmful text is ever-evolving, and human labels include human biases. But little-by-little, we get closer to friendlier models!

Making a vocoder

made by jimkang, submitted by Mai
Jim is working on a vocoder at RC currently! You can read about it on his blog and check out the code here: https://github.com/jimkang/channel-vocoder.

How to expose inputs (editable values) in a Google Sheets model

made by peter, submitted by nicholasbs
A clever way to automatically format (and thus be able to see) all the cells in a Google Sheets spreadsheet that are intended to be inputs.

GitHub Star Tagger

made by apettenati, submitted by rachel
Add tags to your starred repos on GitHub, so you never again lose track of that plugin or parser you totally meant to install.