bitcoin is an IQ test and i swear to god the 80IQ guys really did win this round lmao 😂
niftynei() 🇺🇸💸🧡
npub1e0z7...0txy
head of instruction @npub1vmpf90hq56wzyxht6teg3llpa74rzcepw9suj5unxl3tph24zd4qgtxhm7
gm it’s the last day in buenos aires, big thanks to @Librería de Satoshi (Dulce and Fox) for an awesome #b4os week already miss you 🇦🇷
gm it’s day 3 in #buenosaires and we’re having a good time at #b4os talking about grants and bitcoin projects #traveltok #bitdevs
bitcoin should be for people to transact peer-to-peer, not for nation states to get into dick measuring contests with 

gm first full day of buenos aires had me giving a lecture about #layer2s and #lightning to the #b4os crew ⚡️
excited to finally be releasing videos from the *May* edition of bitcoin++ all about scripts. this first one is all about @stevenroose's TXHASH proposal
h/t @npub1s8dc...jalq for getting these moving! View quoted note →
i feel like my life just 10x’d ❤️ (brought on the world’s best assistant @npub1s8dc...jalq)
had so much fun in Berlin, i wanna go backkkk
no day in the life vid from yesterday instead i bring you a video explaining how myers briggs letters work. what’s your type?? #myersbriggs #typetheory #carljung #mbti #jungian
sometimes i get anxiety about there being some neglected “extrovert” task i should be doing but it’s escaped my attention b/c i’ve introverting too hard
Day 4 in austin was no #moving just unpacking and setting things up. got the #wifi online and a cozy seating nook sorted; ordered ikea furniture + amazon storage shelves that should arrive in 2 days 👌
been getting nothing but really great feedback about the @btcplusplus we did in berlin last weekend; i think my favorite anecdote is about an engineer who loved getting to see more about both the cashu + fedimint projects. it really helped him figure out where he wanted to contribute and gave him good context for both projects 🙌
most women dont give a fuck about “building stuff”; it’s a big contributor to the lack of them in engineering
etsy got thru this by re-positioning software engineering into something more femme: “code as craft”
i haven’t studied german enough to know what about it people find hard and it’s annoying me to no end, the not knowing exactly the shape of the challenge
rewatching my travel videos and my god what the actual fuck was i doing. these things are exhausting just to watch
i wanna retire to the ozarks 🌲🚤🏍️🌲
also why is food in the US worse than europe? this is a new thing and i hate it
gm day 7 in #berlin was hackathon judging day at @btcplusplus and our final closing party hosted by La Bitcoineta #bitcoin #btcpp #bitcoinfrontiers #ecash
day 5 in #berlin was a whirlwind of talks and workshops at the first day at @btcplusplus #ecash edition
there’s a lot of talk about “covenants” but not a lot of understanding what that entails. lets do a little dive into how i think about the opcode proposals and how they relate to “enabling covenants on bitcoin”
what is a covenant?
great question. a covenant is the ability to specify what the transaction that spends your bitcoin must look like. for example, you could say “the transaction that spends this bitcoin must pay 500k sats to this address” or “the transaction that spends this bitcoin must have a locktime set to block 880,000”
in order to make these kinds of assertions in bitcoin transactions, you need the ability to find out what information is in the transaction that is spending an output. this information needs to be accessible when the script is running.
bitcoin script is a limited programming language that you use to write locks for bitcoin. one of the limitations is what data you have access to while the program is running.
so in order to write more “expressive” bitcoin scripts, which can say “one output must be to my address and pay 500k sats”, for example, you need to be able to look at the outputs on a transaction.
this ability to look at the info on a transaction is called “introspection”. being able to introspect a transaction is a big missing piece in bitcoin. adding introspection enables you to write covenants.
so how do you get introspection in bitcoin script?
you have to add a new opcode for it. in fact, we’ve added two opcodes to bitcoin that enable introspection already: op-checklocktimeverify (op-cltv) and op-checksequenceverify (op-csv)
these look at the locktime/sequence of a transaction and require a certain value to be set in order to be valid. they were added in order to enable lightning, which uses both op-cltv and op-csv to make “primitive” covenants. these were added to enable LN, to help scale bitcoin.
today you could write a bitcoin script that asserts “the transaction that spends this bitcoin must have a locktime set to block 880,000”. you’d use op-cltv to make that script, and any coins locked to that script wouldn’t be spendable til block 880,000.
there’s no way to look at the output fields in a transaction though. you cant write a script that requires funds to go somewhere, you’d have to use presigned txs (like how lightning does) to make that kind of assertion.
ok so the goal of introspection is to let you look at what information is in a transaction that’s spending a bitcoin output. we can do this already with op-cltv and op-csv. but this is limited just to timelocks, and doesn’t let us make assertions about outputs, or other inputs.
in the next post i’ll talk about how the current opcode proposals (op-ctv, op-txhash, op-tx, op-cat) work and how they enable more broad tx introspection !
if you found this interesting, check out @npub1vmpf...xhm7 and our classes on bitcoin transactions!