https://medium.com/code-is-now/getting-started-with-rust-a-modern-systems-programming-language-40fed5a37a6f