SatsAndSports's avatar
SatsAndSports
npub1zthq...xm56
https://cashutube.satsandsports.cash/ Into bitcoin, specifically cashu. When I'm not working in the fiat mines, I'm into cycling and camping I'm trying to use White Noise (different npub), but don't have many contacts there yet!
LLMs duplicate code too much. I got it to reorganize a bunch of code for the client-side of my system (the cashu channels). It liked and understood the changes I made, both for security reasons and maintainability. I immediately asked it to apply the same thing to the server side. It immediately understood and saw the great similarities between the client side and server side It did it, but didn't realize it has duplicated lots of code until I asked it to check. This isn't really a complaint. I'm actually glad that it (Opus 4.6) makes this mistakes as it means I'm still relevant as the architect and designer 😀 image
LLMs still (I basing this mostly on Opus4.6) don't appreciate how to order items in their todo list If we're working on component A, where A depends on B, and then we realize that B needs to be updated before A can be updated, then the priority should (depending on the precise circumstances) be to get B correct before updating A. It's too keen to do major refactorings, redesigning everything in one step. That's still too likely to result in everything breaking. I often have to intervene to help it identify the best (least likely to break) order in which to change things. Get the interfaces right between your components, starting with the lower levels, before working your way up Of course, as the LLMs are getting better, I'm allowing them to be more 'ambituous' and to try to do bigger changes at once. But, as of now, their level of ambition in complex protocols/systems doesn't quite match their ability, and I have to intervene regularly: "Yes, we want to change X,Y,Z, but don't you think that we can change Y first and ensure that all tests keep passing before we proceed to X and/or Z?" image
Your daily reminder that property-based testing is the the way. OpenCode/Opus4.6 is happy that it can make the change I requested (hashing a shared secret) without having to change any of the 50+ tests: image
In the Cashu channels, I'm using a DiffieHellman shared secret to add a little more privacy in places. For example, it's used to compute the channel_id in order to make it more difficult for third parties to guess what the channel_id would be between two parties. But AI has helped me realize that both parties should immediately hash the shared_secret upon computing it. In practice, this probably doesn't help much, but it's nice to hide any algebraic structure any time it's possible image you might say I'm overthinking this 😀. But it's fun to give these tasks to AI and continue watching a movie on a Sunday night while it executes: image
Scaling bitcoin. Censorship. Why do we run nodes? The irrelevance of the "spam debate" I just got zapped 21k for this long reply I posted on these topics. Thanks @Scrotus ! View quoted note →
Sharing this might be illegal in the UK #StreisandEffect #NostrFixesThis #EpsteinFiles Peter Mandelson was the British Ambassador to the UK, and prior to that was a major political figure for decades previously, especially under Tony Blair. He's also alleged to be one of the enablers of Jeffrey Epstein. He's now abusing press regulations in the UK that were designed to protect victims of crimes from being harassed by journalists. See below for how his legal henchman are helping him with his coverup: Reported by a major Scottish mewspaper yesterday: IPSO = Independent Press Standards Organisation ====== CONFIDENTIAL – STRICTLY NOT FOR PUBLICATION: Ipso has asked us to circulate the following advisory: Ipso has today been contacted by a representative acting on behalf of Peter Mandelson. Mr Mandelson’s representatives state that he does not wish to speak to the media at this time. He requests that the press do not take photos or film, approach, or contact him via phone, email, or in-person. His representatives ask that any requests for his comment are directed to [REDACTED] We are happy to make editors aware of his request. We note the terms of Clause 2 (Privacy) and 3 (Harassment) of the Editors’ Code, and in particular that Clause 3 states that journalists must not persist in questioning, telephoning, pursuing or photographing individuals once asked to desist, unless justified in the public interest. Please do not hesitate to contact me to discuss any Code issues on [REDACTED] or out of hours on [REDACTED]. [IPSO official]
Liking Opus 4.6 so far I still sometimes use Gemini or Codex out of curiousity to see what they would do
Arthur C Clarke, in 1953, writing about a post-scarcity future. The last few words are interesting to a bitcoiner! (In this paragraph, "drone" means a lazy person) image
SatsAndSports's avatar
SatsAndSports 2 weeks ago
As I'm going to Madeira in March to meet some freedom-tech folks, I'm going to try to make a plan for what to do this month on the cashu spilman channel - First, write and share an INTEGRATION.md, to explain how to easily integrate payment-receiving code into your service provider. I wouldn't use it for real sats yet, just testing! But I think it's ready for some feedback on the engineering side - While there is blinding of pubkeys already and it's working, it's not identical to the spec in the P2BK nut; it will be easy to synchronize them, I just need to get around to doing it soon. This would be a breaking change, so while it's not urgent, it definitely has to be done - Integrate it into another fun demo. I've made a lot of progress understanding the protocol that is used by many of the LLM providers, so I'll finish a little demo showing how I can resell access to an LLM api key. This might help with getting this tech into Routstr - Then, I should really review all the code again, to tidy up the AI slop 😀. Some parts have received a lot of attention from me, others I've ignored. - And I generally need to get it out there, and get people to review the protocol properly Very rough overview of the architecture: 1. A 'cryptographic' core, which does all the singing and verification and constructs all the outputs deterministically. Has no opinion on transport (JSON, websockets, http), nor on pricing, nor on the service being sold. Written in Rust 2. A 'Bridge' system - written in four languages currently - to expose a convenient wrapper on the server side of things, making it easy to process a payment and either succeed (updating records of the balance and the usage of the channel) or fail (returning a suitable error message). Again, this tries to be *un*-opinionated. It manages the state, but you tell it exactly how to store things (in memory, in sqlite, ..., you just plug in whatever you want). Also, this doesn't care what you're "pricing policy" is; maybe you charge per request, or per megabyte, or per token. You provide the code what computes the price. 3. There are automated tests of the Bridge - via a demo server selling ASCII art - in Python, Go, Rust, and Typescript
SatsAndSports's avatar
SatsAndSports 2 weeks ago
Been using Kimi K2.5 today a lot (free now, via OpenCode Zen). Very happy with it. Much better and faster than I expected from an open source model I didn't really try anything complex today, so maybe I'll change my mind when I try something more complex
SatsAndSports's avatar
SatsAndSports 2 weeks ago
The blob discovery in Blossom will eventually need to be made more scalable I think. Imagine the nostr/blossom decentralized equivalent of CDN systems like Cloudfare, where your client keeps a large set of servers in a list, prioritizing those with the lowest latency and the best reliability, constantly hopping around as needed to get the blobs And, when we're paying for blossom servers and nostr relays with micropayments, you can prioritize for low cost too of course View article →