" There are two parts to learning craftsmanship: knowledge and work. You must gain the knowledge of principles, patterns, practices, and heuristics that a craftsman knows, and you must also grind that knowledge into your fingers, eyes, and gut by working hard and
practicing. "
― Robert C. Martin , Clean Code: A Handbook of Agile Software Craftsmanship