Skip to main content

nazar-pc

Trees everywhere
·5 mins
status-update
Last week was lighter on code changes and more heavy on research. Specifically, I’ve been looking into commitment schemes generally and Blake3 hash function in particular, which was already used in the codebase, but turns out can be applied in more interesting ways than just a hash function.
We are building a blockchain
·5 mins
announcement
Welcome post mentioned briefly initial set of constraints that led to the creation of this project, but I figured it might be helpful to have a short writeup about it that might be helpful for sharing. In short: we’re building a blockchain. By “we” I really mean just me and Alfonso so far, but I hope more people will join over time if they find it interesting.
Preparing for blockchain
·3 mins
status-update
The majority of last week I spent tinkering with Subspace codebase after importing it here in preparation for building an actual blockchain.
Building contract files
·5 mins
status-update
The majority of the last two weeks I’ve been busy with the installation of the antivirus system update for my immune system. It was neither pleasant nor quick, but now that it is slowly approaching 100%, I’m back with another update of what I managed to do since the last update.
Way faster transactions and no-panic
·7 mins
status-update
The plan was to get to transaction pool implementation, but it didn’t quite happen. I did a lot of investigation around performance though. For example, transaction processing was several orders of magnitude slower than direct method calls without a transaction, which concerned me, but after optimizations of last week the difference is ~10x. And it makes sense given how much more work the wallet has to do on top of the method call itself.
There is two of us now
·5 mins
announcement status-update
The big change from the last update is that Alfonso de la Rocha has joined me as a part-time researcher to help with sharding designing. Code-wise, there were also a bunch of performance benchmarks and optimizations.
Transactions
·7 mins
status-update
The most important progress from last week is initial work on transactions. I’ve spent quite some time thinking about the design and even implemented an initial wallet contract alongside with related infrastructure.
5 million flips
·6 mins
status-update
It was a challenging week working on storage access checks for slots, but it is over, and I’m quite happy with how things are looking right now. Some extra refactoring also allowed running tests under Miri and spotted some things that violate the Rust safety rules.
Initial developer feedback
·5 mins
status-update
Last week felt a bit less productive with a lot of time spent thinking about how to approach slots conflict resolution in the native execution environment, but still managed to land a few improvements, especially on the documentation side. Also conducted four separate interviews.
Contracts are actually running
·3 mins
status-update
After a lot of refactoring and preparation, native execution environment is finally functional and can be used for purposes like writing tests and debugging.