Hi — I’m Simone Vittori, a software developer based in London.
I have experience in web development with a variety of programming languages, such as Elixir, Elm, Ruby and Rust. I’m passionate about good software design and I use this blog to write about anything programming related that I find interesting. I hope you enjoy reading it!
I wanted to have a clean separation between work-related repositories and my personal projects, as I often need to use a different email: for example, I’d like to sign git commits in the work repo with my work email, but keep using my personal email for the rest. How do you achieve this?
It’s actually pretty simple: I’ll show you how.
I was building a generic data store with Rust and I needed to implement a heterogeneous collection of keys and values. Essentially what I needed was a dictionary, but with values of dynamic type, like both strings and integers at the same time.
Rust is a statically typed language and, due to the memory safety guarantees we are given, all values of some type must have a known, fixed size at compile time, therefore we are not allowed to create a collection of multiple types. However, dynamically sized types also exist, and in this article I’ll show how to use them.