Learning how to write Rust