Coding 2024-08-07
Okay, let's switch gears a bit. One of the projects I've been thinking about some lately, is trying to compete with LLM assistants by providing easy access to traditional, algorithmically efficient divination techniques. This is not a total non-sequitur; one of the stated use cases for LLMs is "bouncing ideas off of", and I don't see that, for such a use case, "the tool has no understanding of the question" should pose any more of a barrier for traditional divination than it does for LLMs.
I've put together a basic outline of the kind of functionality I want to have, and I'm trying to figure out what's the right way for me to deploy this as many kinds of "app". Like, it simply makes sense to me that this should be some kind of command-line tool, daemon server, and browser extension. The obvious language for writing a browser extension is JavaScript, but, like, I dunno, I don't feel like using JavaScript for anything other than cheating at idle games. From some research, it seems like it should be possible to target WASM, which is possible with Rust, which I'm somewhat familiar with. Although, I also remember hearing about unpleasant experiences trying to target WASM and non-WASM at the same time, but maybe the precise details of that don't apply to what I was thinking of, which was to have completely separate projects for command-line versus browser extensions.
The basic thing I need to figure out, however I decide to swing this, is, how can I notice as quickly as possible that a given approach will not work?
- Core logic in library
- Binary crate, probably using clap
- Build extension with wasm-pack, and probably other things
I'll have to try these out later, but I'll get ready for bed now.
Good night.