conduition's avatar
conduition
conduition@conduition.io
npub1l6uy...zvtg
Pseudonymous freelance cipherpunk :: https://conduition.io
conduition's avatar
conduition 1 year ago
I suppose bitcoin devs love #Rust for the same reasons they love Bitcoin. The scarcity and careful auditing of variables passed around in memory mirrors the scarcity and careful auditing of UTXOs passed around Bitcoin's ledger. Allocating new memory is as much an event as mining new bitcoins: Regular, but noted and tracked. In Rust, a value may be borrowed many times, but its value may be consumed only once. Bitcoins can likewise be IOU'd countless times, but ultimately only belong to one script-pubkey. By comparison, languages like Go and Javascript feel very... inflationary. They have an opaque, centralized, bloated, and omnipotent garbage collector attached to every runtime which allocates and deallocates memory as it pleases. Memory can be needlessly duplicated thousands of times entirely by accident, or over-collateralized by shared mutable references. Some languages are the opposite, like C: Total anarchy. "Sure, allocate as much memory as you'd like. Deallocate it whenever. Read whatever you want, write wherever. Just try not to segfault." Only Rust, like Bitcoin, strikes the perfect balance of organized chaos: a rehearsed ballet, in which all the dancers know their movements by heart.
conduition's avatar
conduition 1 year ago
As part of the #BackdropBuild Hackathon, I elected to commit myself to making a prototype of the 'Ticketed DLC' protocol I proposed a few months back. 37 days later, here I am with a working prototype. Setting a deadline for yourself can really make a difference - Who knew? There is certainly plenty of optimization and upstream-interop work left to do, and having PTLCs on Lightning would make this SO much more efficient on-chain. But as a proof of concept anyone can play with today, I'm incredibly happy with the result. Running against regtest, all tests are passing, and simulated players can buy into simulated DLCs simply by buying SHA256 preimages (e.g. via Lightning).
conduition's avatar
conduition 1 year ago
I can't put into words how good it feels to make ticketmaster engineers salty enough that they feel obliged to send me hate mail. image