Way back when I worked at Google, I wrote a series of posts on Google’s Trillian. At that time, I contemplated writing a gRPC client for a Trillian personality in Rust.

I’ve succeeded (barely) and, for closure, am referencing the post here:

NB Feedback welcome but — please be gentle — I’m a Rustacean Noob ;-)

NB The client is for a different Trillian personality than I used in these posts but, it’s sufficiently trivial that it should be straightforward to migrate it.


Update: https://pretired.dazwilkin.com

I (p)retired from Google last week.

The plan is to continue to do more of the same mostly using Golang (though I’m learning Rust), mostly using Kubernetes (though Docker Compose is better for local development) and mostly using Google Cloud Platform (though I’ve a soft spot for DigitalOcean and will continue to use that too).

I’m writing a personality for Google Trillian, plan to write at least one more, and have several ideas for this compelling platform.

I plan to stop using Medium. Partly to draw a notional line under my musings as a Googler. More because I just don’t like Medium’s write-but-don’t-read constraint. I started with Medium because there’s a Google Cloud Platform publication but this is no longer a limitation for me (or GCP).

Thanks for reading my stuff and best wishes!


Last one! :-)

We’ll now combine this week’s adventures with Go Modules, immutable package repos and Cloud Build into a more realistic Golang project, hosted on GitHub, that (a) regenerates the gRPC bindings; (b) builds multiple Golang binaries; and c) generates container images in Google Container Registry (GCR) for the…


Yesterday, I explored some ways to take advantage of an immutable Golang package store using Docker and Cloud Build. It seems as though there may be a way to take advantage of this immutability using deconstructed multi-stage builds.

Multi-Stage Builds

This is my boilerplate for Golang multi-stage builds and Google’s distroless

FROM…


Yesterday, I wrote a summary of my recent switch to Go Modules. In the conclusion, I wrote that I’m moving to a single ${GOPATH} across my projects. One of the advantages of Modules is that, a package version should be immutable. …


Although I am familiar (and a fan of) the old ${GOPATH} way, to remain current and because of the many benefits, I’ve begun to use Go Modules.

Like others, I found the switch to be confusing. So…

Before Modules

WORKDIR=[[PATH-TO-YOUR-WORKING-DIRECTORY]]mkdir -p ${WORKDIR}/go
export GOPATH=${WORKDIR}/go
export PATH=${GOPATH}/bin:${PATH}
mkdir -p {${WORKDIR}/go/src/foo, ${WORKDIR}/go/src/foo/bar}

Then…


The Missing Manuals series

Last week I documented what I hope is the simplest possible Trillian personality. Yesterday, I documented adding an inclusion proof. Earlier today, I documented building a gRPC-based client and server for the personality. Here is a small addition that adds metrics (stats) and traces.

OpenCensus Exporter

With the addition of a straightforward…


The Missing Manual series

Last week I documented what I hope is the simplest possible Trillian personality. Yesterday, I documented adding an inclusion proof. Today we’ll split the main.go into a client and a server and reconnect them using gRPC. …


The Missing Manuals series

Last week I documented what I hope is the simplest possible Trillian personality. This is an interim post as I realized I’d missed some important functionality in my sample, an inclusion proof: effectively incontrovertible evidence that some specified data is part of the transparent log.

Setup

You’ll need the Database and…


Weekend Hacking

Prometheus is one of the technologies that I find elegant. Reading on its extensive list of integrations on Friday afternoon while walking my dog, I was inspired to write an Exporter for Particle.

The following documents some weekend hacking. …

Daz Wilkin

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store