Explore the nuances of refactoring in software development through this insightful conference talk from NDC Oslo 2022. Delve into the misconceptions surrounding automated refactoring tools and discover why they haven't eliminated oversized classes and long-winded functions. Learn about the practical and social obstacles to effective refactoring, and understand why it should be viewed as a design process rather than a simple clean-up task. Gain valuable insights into the history of refactoring, its definition, and the importance of behavior preservation. Examine concepts such as technical debt, technical neglect, and decremental development. Investigate the role of refactoring in architecture, data structures, and big systems. Challenge your understanding of conventional programming languages and explore the potential for radical change in software development practices.