Cover Photo by Lorenzo Herrera on Unsplash
Append only logs have a variety of applications. This post explores creating a tiny append-only log as a personal utility library that has the following interface.
set(account, balance) get(account, height) increment_height() The Get and Set functions are the meat of the library.
// Set adds a tx to the list at the current height func (b *chainer) Set(id string, balance uint64) { newtx := tx{height: b.
I wrote a tiny monitoring library in Go over the weekend. The goal was to create something that was extensible to any type of source that I wanted to monitor while remaining simple and easy to test.
I messed with a few different approaches and ultimately landed here. The library is one single file but I think it’s pretty robust. I initially tried a more interface-focused approach but I actually like the typed function implementation shown below.
I have been brushing up my chops with Solidity lately, so I decided to sit down and write a simple token vault implementation. It’s going to be a simple holding contract for balances that we can extend with other functionality in the future, like bridging, merkle trees, or decentralized swaps if we really wanted to get wild with it.
The code for this can be found at dylanlott/manacrypt.
Prerequisities I’m going to use Forge to develop this since it’s the latest and greatest (and it really is the greatest in Solidity development).
I’m writing a simple binary tree in Rust as part of my current endeavor to learn this language.
I might eventually extend this into a rewrite of some parts of my Orderbook series, but who knows. The day is young.
Starting off Make a new cargo package and name it something dumb.
$> cargo new beetree Navigate into the sweet new repo that cargo setup for you and get into the main.
I’ve written at length about a deployment first development style of workflow. I’ve found this to be particularly useful for side projects where you might just want to occasionally drop in and add a feature without too much hassle. Lowering the bar to first commit in a single work session can be a huge boost to development speed.
I’ve tried a lot of different solutions - Rancher, minikube, custom shell scripts and Make commands, some CLI libraries like flightplanJS, and even git hooks.