This is from Don Stewart's keynote at PADL'12 (formally, the Fourteenth International Symposium on Practical Aspects of Declarative Languages) and is one of the few fundamental truths of computer programming. (Number three might be controversial.)
Really big picture: why software?
- Increase economic productivity by automating everything
- Make the complexity of the world tractable by making it hackable
- Impose structure through typed data
- Transform work/jobs/tasks into resuable/composable functions
- Find new efficiencies. Repeat
(Demonstrate you can do this and you'll never be out of work)