Posted by david927 1 day ago
Ask HN: What are you working on? (August 2026)
There are numerous UI form builders. And Xlsform for ODK and KoboToolbox but nothing I could find that is easy for humans and machines to grok. So I wrote a DSL in Ruby to see if it could be done. The language is mostly described at https://srp.solutions and some example usage and implementation at https://srpsurveys.com/
I’ve been focused on decentralising it, offering ways for bloggers to write locally (markdown, Obsidian) while hosting remotely on the platform. I think it’s a great way of working. Most people still just use the editor though!
I’ve been focused on marketing and distribution, which is mainly about content. Hard in such a crowded space but it seems to be working.
It’s been such an interesting journey technically too, from using coding agents to dealing with the crazy deluge of bot traffic.
I run it all myself which isn’t so daunting in the AI age.
Very exciting:)
This year, I am creating a nodejs MUD, well closer to a MUSH actually.
* Everything is an Entity with Attributes * A player is an Entity with its client property set * There's a handful of built-in commands, but the important ones are @eval and @set-attribute * The soft-code language is ... JavaScript. * It uses the vm module from nodejs[0] to execute stuff. * It has separate clients (so far) for Discord, Slack, and local console. It's easy to add more and will be easier after I do this one refactor.
Each time an soft-code command or function or what have you executes, it creates a new context to isolate the soft-code from the rest of the application and uses Proxy objects to isolate the database Entity from the soft-code Entity. As an example, this is the look command (placed on the global registry object):
if (!me.location) {
me.send("You are nowhere.");
} else {
me.send("**" + me.location.name + "**");
const contents = me.location.contents;
if (!contents?.length) {
me.send("You see nothing here.");
} else {
me.emit("You see:\\n" + contents.map(thing => "* " + thing.name).join("\\n"));
}
}
The Proxy manages access to Entities and Attributes (for example, Attributes can only normally be accessed by their owners).The MUSH outputs markdown for everything, so each client can format it however it likes.
I know the security is not nearly close to perfect, but it's mostly a proof of concept that I will make public one day. I did do a few things, like disable eval and Function and Promise but there's probably plenty of ways to get around it.
This is just about building the framework for now and then putting it loose into the world. I have a big refactor in mind to further decouple the client/server from the game engine, but it'll take some work.
I did make a sample database (a JSON file that was imported into the database) for an earlier iteration that was almost entirely LLM generated. I provided it with description of the general area and what sorts of things could be found there, along with the climate and such. It did a really good job with descriptions and added little touches but it had trouble keeping the map in mind and so things that were located in the north could also be reached by going east. That could also be prompting on my part or just not giving it a strong enough framework.
With the updated frameworks in place, this ancient browser becomes able to access the modern web again! Even webapps like Figma work!
https://github.com/Wowfunhappy/WebKit
(As I make clear in the Readme, Claude wrote this code, a project like this would never be feasible otherwise. My main job has been to decide on larger infrastructure questions and find bugs and make them reproducible.)
It lets you combine the things you already follow like RSS, Hacker News, Reddit, YouTube, X, newsletters, weather, stocks, etc. into one personal email delivered on your schedule.
Recently I’ve been working on AI summaries for incoming newsletters. The interesting product problem is that once you combine this many sources into an email, there is a challenge to keeping the results finite and useful.
check it out here: https://www.sophai.app/radars
I’ve been making interactive learning resources for myself - with wasm and browser simulation based labs (browser only interactive courses served from GitHub pages) to teach me topics from beginner to advanced
LLMs and systems intersection - https://kernelspace.naigap.com
Distributed systems - https://byzantine.play.naigap.com