Skip to content
Domain Specific Language

Tag: #rust

An overview of the concepts in async / await in Rust

Async / await in Rust promises to simplify concurrent code, and to allow a large number of concurrent tasks to be scheduled at the same time — with less overhead than the same number of OS Threads would require.

In general, async / await lets you write code that avoids "callback hell", in favor of a linear style similar to blocking code while still letting other tasks progress during awaits.

Strings in Rust

During the last 20 years I have used a number of garbage collected and reference counted programming languages. All of them have a single type for representing strings. Rust has two types of strings that can be stored in three different ways.

I want to shortly illustrate how Rust's strings interact with the heap, with the stack, and with the data segment of your binary, as well as shortly explain what those things are.

A four-hour rabbit hole into (mostly) generated Rust code

There are no official Rust libraries for Google APIs available yet, but there are some (mostly) auto generated ones that are fine to use albeit a bit verbose.

I've previously used google-apis-rs successfully when I needed to read Secret Manager secrets for a side project.

Hot on the heels of Thoughts on ethical software I decided to convert the same project from using MySQL to the snazzily named Firestore in Datastore mode.

Let's go down the rabbit 🐇 hole 🕳.

Thoughts on ethical software

The major cloud actors have all stated that they will be some combination of carbon neutral, carbon free, and carbon negative at some point in the future.

Not everyone is a cloud vendor! What can a software developer do today to improve the future of the planet?