Designing Your Own Programs
Wallace Wang · Apress eBooks · 2011
Every program starts off with a problem. Typically the best problems for computers to solve involve something that humans find tedious, tiresome, or error-prone to do themselves. For example, people used to calculate formulas by hand. If they made one mistake, any formulas relying on the flawed data would calculate incorrect answers. To make calculating multiple formulas faster and more accurate, programmers invented the spreadsheet.