Type-erasing unsafe traits in Rust

2 minute read Published:

In Rust, traits can be object-safe and non-object-safe. There are workarounds to make unsafe traits safe - this is how I did it.

Static public IPs for EC2 instances

2 minute read Published:

A solution for convenient and automatic static public IPs for CentOS EC2 instances using EIPs and ENIs.

A basic deploy pipeline for Rust on CentOS

4 minute read Published:

Some basic things you can do to package and deploy Rust software on CentOS hosts

Releasing a static Go binary on CentOS

3 minute read Published:

Baby's first steps for releasing Go software on CentOS with an RPM

Reddit Writes Rust

3 minute read Published:

Read about how the Rust subreddit helped me implement multi-threading in my command-line music player

Terraform tips and tricks

6 minute read Modified:

I've spent the last 2 months trying to explore the depths of Terraform (for AWS). Here's a compilation of neat things I discovered along the way.

Testing a Rust binary crate

3 minute read Published:

Using std::process to write Rust tests for a binary crate, i.e. a crate that doesn't expose clean public functions like a library crate.

Configurable datastructures with C macros

3 minute read Modified:

Using C macros to create basic datastructures with configurable data types and storage backends using `gcc` switches. Part of my effort to refresh my CS basics by implementing datastructures from scratch.

Ngrepping the Vertica network protocol

2 minute read Published:

How I used ngrep to reverse-engineer the Vertica wire protocol from JDBC and contribute it upstream to Python and Ruby-native Vertica libraries

Visualizing pitch detection

3 minute read Published:

Some plots to attempt to understand and visualize the intermediate results of autocorrelation-based pitch detection algorithms