Imagine not knowing that UTXO consolidation is a valuable move.
Also, imagine not knowing that UTXOs don't need to be stored in RAM. On average, a given transaction is included in a block 5 minutes after it is received.
If a miner wants to validate it faster, perhaps to ensure it is in their draft block and that they can validate competitors' blocks faster, they can expend more resources to do so.
But NVMe SSDs are pretty damned good... 4 year old tech can do random reads of ~20k tx/s assuming 4kB reads and one transaction per block (a 1 input 2 output transaction is ~200B so each block could actually hold ~20 transactions, meaning we're leaving a lot of potential performance on the table) all with a single consumer m.2 drive. anandtech.com/show/16012/the…
Also, UTXOs are identified by TXID and position in the transaction, so you can map your UTXO locations to drives using the TXID to set ranges, meaning you can keep that map in RAM and know exactly where to look for the UTXO in question.
Each machine handling a given range can cache the most recent transactions in RAM, which is a decent and cheap (dumb) filter for the most used UTXOs, while the rest get held on disk.
If the cache is sufficiently useful, then the disks have less load, so more RAM actually makes your disk reads more viable too, per unit of hardware.
Honestly, the hard part is making sure you update these systems properly, to avoid things like transaction malleability causing issues with your mapping... But it's pretty cool that Bitcoin updates the UTXO set in known, verifiable chunks called blocks. Even if something goes wrong in the short term, it gets corrected as blocks are found and validated.
@kurtwuckertjr @LarryRuane @galbenero Honestly, the silliest thing here is the injection of random requirements not based in fact, like measuring hardware requirements by a worst case growth rate if no UTXO consolidation ever occurs.
Also, why are we assuming blocks must be validated only after completion of PoW?
Jun 4, 2021 • 6 tweets • 1 min read
Some people talk a lot about signal, some even talk about signal to noise ratios... Most are talking bullshit.
For example, people don't have signal to noise ratios.
A person isn't high or low signal.
This is because signal isn't objective. Value isn't objective.
What is signal to me may be noise to you.
Even if what you have to say is wonderfully valuable information (say, in a market, or to a specific person), that doesn't mean it's valuable *to me,* nor by extension would it be signal *to me.*
Jun 2, 2021 • 20 tweets • 3 min read
Imagine mining in a small world network where every miner communicates every transaction received to every other miner in the order the transactions are received (first-seen), with an indication of whether you are mining it, and at what block-height.
Imagine also that every miner constructs a draft block, ordered according to the first-seen order like was followed above.
Jan 3, 2021 • 7 tweets • 1 min read
I'm adjusting my recommendation of where beginners to programming should start if they're interested in building on BSV.
I was recommending Python, and I think for an individual developer, long term, that's still the right choice...
But I think we're going to have a big group of folks starting this journey at about the same time, and with that in mind, a simplification of the path is in order.
Jan 3, 2021 • 17 tweets • 3 min read
What will it actually take for BSV to succeed?
One big thing, or many small things.
No other 'cryptocurrency' is scaling in a way that will actually work. They're adding friction, barriers to entry, and narratives and narratives and narratives.
As a result, they *can't* compete when BSV achieves higher usage than they can support.
Jan 1, 2021 • 11 tweets • 3 min read
If you want to learn how to get started building for yourself, my suggestion is to start by learning Python, and to use Repl.it as your beginning development environment.
Python is a great beginning language.
It is relatively simple, but still powerful.
It provides a framework for learning what programming is, and the main concepts surrounding it.
It gives great opportunities to learn programming for web apps to data sciences to machine learning.
Dec 31, 2020 • 5 tweets • 1 min read
The best way to improve yourself is to find others you respect, and connecting with them.
You don't have to become the best of friends, but periodic conversations and keeping up with each other's projects will bring you both immense benefits.
The best part about connecting with folks in this way is that they're people you willingly picked out as folks you respect, and you will naturally try to live up to the standards they set for you.
That means, your own personal expectations rise in the tide that lifts all boats.
Dec 31, 2020 • 6 tweets • 1 min read
So, app building on BSV... Who wants to build an app but doesn't have the skills yet? Who is looking for a team to contribute to?
Please don't answer if you're just looking for the results.
I'm trying to get genuine info here, not to make a point. The responses will help me better direct my efforts over the coming months.
I'll likely post this poll again in a few months, too!
Nov 15, 2019 • 5 tweets • 2 min read
THREAD:
A generalized model visualizing the Bitcoin structure of production, excluding external factors of production (i.e. electricity,) and factors of transaction production.
Color Key:
Overall Production Structure Model:
Oct 18, 2019 • 146 tweets • 21 min read
I think it's very telling that both Peter and Shinobi are having technical difficulties.
Are they trying to route a lightning payment or something?
Btw, here's the debate... I'll be responding here.