https://medium.com/@bogatinov.leonardo/10-must-know-c-techniques-thatll-transform-your-development-70438bac8772