Day 30: Understand Where Resources are Wasted

Writing great performance code is as much an art as a science. Much of the process involves thinking critically about what you are doing and how to change the existing approaches. Unlike physical construction, for example, where rules of thumb have been developed over centuries, the software engineering discipline is still too young. What is…

Day 28: Frequently Repackage Code Into Smaller Libraries

A problem that is common to many programming projects is the deficient separation of code into distinct packaging units, such as libraries and modules or assemblies. Languages such as Java, Python, and C++ provide great flexibility for users to create such modules. Despite this, many developers, especially beginners, misuse this flexibility by packing as much…