50 ways to make your software do more